module GhcPkgSpec where import Control.Arrow import Control.Applicative import Distribution.Helper import Language.Haskell.GhcMod.GhcPkg import Language.Haskell.GhcMod.PathsAndFiles import Language.Haskell.GhcMod.CabalHelper import Language.Haskell.GhcMod.Error import Test.Hspec import System.Directory import System.FilePath import System.Process (readProcess, system) import Dir import TestUtils import Data.List spec :: Spec spec = do describe "getPackageDbStack'" $ do it "fixes out of sync custom pkg-db stack" $ do withDirectory_ "test/data/custom-cradle" $ do _ <- system "cabal configure" (s, s') <- runD $ do Just stack <- getCustomPkgDbStack withCabal $ do stack' <- getPackageDbStack return (stack, stack') s' `shouldBe` s