diff --git a/ghc-mod.cabal b/ghc-mod.cabal index 860ddf3..7405921 100644 --- a/ghc-mod.cabal +++ b/ghc-mod.cabal @@ -27,7 +27,7 @@ Extra-Source-Files: ChangeLog test/data/*.cabal test/data/*.hs test/data/cabal.sandbox.config.in - test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/dummy + test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/Cabal-1.18.1.3-2b161c6bf77657aa17e1681d83cb051b.conf test/data/broken-cabal/*.cabal test/data/broken-sandbox/*.cabal test/data/broken-sandbox/cabal.sandbox.config diff --git a/test/CabalApiSpec.hs b/test/CabalApiSpec.hs index 7701fe7..6e4998c 100644 --- a/test/CabalApiSpec.hs +++ b/test/CabalApiSpec.hs @@ -38,8 +38,10 @@ spec = do , includeDirs = map (toRelativeDir dir) (includeDirs res) } if ghcVersion < 706 - then res' `shouldBe` CompilerOptions {ghcOptions = ["-global-package-conf", "-no-user-package-conf","-package-conf",cwd "test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d","-XHaskell98"], includeDirs = ["test/data","test/data/dist/build","test/data/dist/build/autogen","test/data/subdir1/subdir2","test/data/test"], depPackages = [("Cabal", Nothing), ("base", Nothing) , ("template-haskell", Nothing)]} - else res' `shouldBe` CompilerOptions {ghcOptions = ["-global-package-db", "-no-user-package-db","-package-db",cwd "test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d","-XHaskell98"], includeDirs = ["test/data","test/data/dist/build","test/data/dist/build/autogen","test/data/subdir1/subdir2","test/data/test"], depPackages = [("Cabal", Nothing), ("base", Nothing) , ("template-haskell", Nothing)]} + then ghcOptions res' `shouldBe` ["-global-package-conf", "-no-user-package-conf","-package-conf",cwd "test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d","-XHaskell98"] + else ghcOptions res' `shouldBe` ["-global-package-db", "-no-user-package-db","-package-db",cwd "test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d","-XHaskell98"] + includeDirs res' `shouldBe` ["test/data","test/data/dist/build","test/data/dist/build/autogen","test/data/subdir1/subdir2","test/data/test"] + depPackages res' `shouldSatisfy` (("Cabal", "1.18.1.3", "2b161c6bf77657aa17e1681d83cb051b")`elem`) describe "cabalDependPackages" $ do diff --git a/test/CradleSpec.hs b/test/CradleSpec.hs index bdf07d2..2bf54e1 100644 --- a/test/CradleSpec.hs +++ b/test/CradleSpec.hs @@ -22,7 +22,6 @@ spec = do , cradleRootDir = curDir , cradleCabalFile = Nothing , cradlePkgDbStack = [GlobalDb] - , cradlePackages = [] } it "finds a cabal file and a sandbox" $ do cwd <- getCurrentDirectory @@ -33,7 +32,6 @@ spec = do , cradleRootDir = "test" "data" , cradleCabalFile = Just ("test" "data" "cabalapi.cabal") , cradlePkgDbStack = [GlobalDb, PackageDb (cwd "test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d")] - , cradlePackages = [] } it "works even if a sandbox config file is broken" $ do withDirectory "test/data/broken-sandbox" $ \dir -> do @@ -43,7 +41,6 @@ spec = do , cradleRootDir = "test" "data" "broken-sandbox" , cradleCabalFile = Just ("test" "data" "broken-sandbox" "dummy.cabal") , cradlePkgDbStack = [GlobalDb, UserDb] - , cradlePackages = [] } relativeCradle :: FilePath -> Cradle -> Cradle diff --git a/test/GhcPkgSpec.hs b/test/GhcPkgSpec.hs index c2cfff4..6e80a03 100644 --- a/test/GhcPkgSpec.hs +++ b/test/GhcPkgSpec.hs @@ -23,5 +23,6 @@ spec = do describe "getPackageDbPackages" $ do it "find a config file and extracts packages" $ do - pkgs <- getPackageDbPackages "test/data/check-packageid" - pkgs `shouldSatisfy` (\x -> length x >= 1) + sdb <- getSandboxDb "test/data/check-packageid" + pkgs <- ghcPkgListEx [PackageDb sdb] + pkgs `shouldBe` [("template-haskell","2.8.0.0","32d4f24abdbb6bf41272b183b2e23e9c")] diff --git a/test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/Cabal-1.18.1.3-2b161c6bf77657aa17e1681d83cb051b.conf b/test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/Cabal-1.18.1.3-2b161c6bf77657aa17e1681d83cb051b.conf new file mode 100644 index 0000000..4ded8d2 --- /dev/null +++ b/test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/Cabal-1.18.1.3-2b161c6bf77657aa17e1681d83cb051b.conf @@ -0,0 +1,4 @@ +name: Cabal +version: 1.18.1.3 +id: Cabal-1.18.1.3-2b161c6bf77657aa17e1681d83cb051b +exposed: True diff --git a/test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/dummy b/test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/dummy deleted file mode 100644 index 421376d..0000000 --- a/test/data/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/dummy +++ /dev/null @@ -1 +0,0 @@ -dummy diff --git a/test/data/check-packageid/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/template-haskell-2.8.0.0-32d4f24abdbb6bf41272b183b2e23e9c.conf b/test/data/check-packageid/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/template-haskell-2.8.0.0-32d4f24abdbb6bf41272b183b2e23e9c.conf index 26a27e3..e8d6158 100644 --- a/test/data/check-packageid/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/template-haskell-2.8.0.0-32d4f24abdbb6bf41272b183b2e23e9c.conf +++ b/test/data/check-packageid/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/template-haskell-2.8.0.0-32d4f24abdbb6bf41272b183b2e23e9c.conf @@ -1,37 +1,4 @@ name: template-haskell version: 2.8.0.0 id: template-haskell-2.8.0.0-32d4f24abdbb6bf41272b183b2e23e9c -license: BSD3 -copyright: -maintainer: libraries@haskell.org -stability: -homepage: -package-url: -synopsis: -description: Facilities for manipulating Haskell source code using Template Haskell. -category: -author: exposed: True -exposed-modules: Language.Haskell.TH.Syntax - Language.Haskell.TH.PprLib Language.Haskell.TH.Ppr - Language.Haskell.TH.Lib Language.Haskell.TH.Quote - Language.Haskell.TH -hidden-modules: -trusted: False -import-dirs: /usr/lib64/ghc-7.6.3/template-haskell-2.8.0.0 -library-dirs: /usr/lib64/ghc-7.6.3/template-haskell-2.8.0.0 -hs-libraries: HStemplate-haskell-2.8.0.0 -extra-libraries: -extra-ghci-libraries: -include-dirs: -includes: -depends: base-4.6.0.1-2bc8d09dc7b7883c4b97d1eb4a9d4ac8 - containers-0.5.0.0-120bacdd7a06bf9f1f601811aa72d6c3 - pretty-1.1.1.0-65070790589ca7952412e425f427ac56 -hugs-options: -cc-options: -ld-options: -framework-dirs: -frameworks: -haddock-interfaces: /usr/share/doc/ghc-7.6.3/html/libraries/template-haskell-2.8.0.0/template-haskell.haddock -haddock-html: /usr/share/doc/ghc-7.6.3/html/libraries/template-haskell-2.8.0.0