-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Test Cabalized package against multiple dependency versions -- -- sunlight checks your Cabalized package and ensures that it actually -- builds and passes its tests, even against mulitple dependency versions -- specified in your Cabal file. For example, your Cabal file might say -- that your package builds against base-4.5.1.0 and base-4.6.0.1. With -- sunlight you can automatically verify that this is actually the case. -- -- For more information, please see -- -- http://www.github.com/massysett/sunlight @package sunlight @version 0.6.0.0 module Test.Sunlight -- | A description for this compiler version. This will be used in the -- directory name in the tree that is written to disk. I simply use a -- compiler version, such as 7.4. type Description = String -- | Path to GHC compiler. You can use a full path name or, if you use just -- an executable name, the PATH will be searched. type Compiler = String -- | Path to ghc-pkg. If you use just an executable name, the PATH will be -- searched. type GhcPkg = String -- | Path to cabal executable. Used to install package dependencies. If you -- use just an executable name, the PATH will be searched. type Cabal = String data TestInputs TestInputs :: Maybe GenericPackageDescription -> Cabal -> (Description, Compiler, GhcPkg) -> [(Description, Compiler, GhcPkg)] -> [(String, [String])] -> TestInputs -- | If Just, use this package description. Handy if you write your own -- package description in Haskell rather than in the cabal format. -- Otherwise, use Nothing and sunlight will look for the default cabal -- file and parse that. tiDescription :: TestInputs -> Maybe GenericPackageDescription -- | Which cabal executable to use. tiCabal :: TestInputs -> Cabal -- | Test the minimum dependency bounds using this compiler. A report is -- left in the main package directory showing which package versions -- worked with this compiler and with the minimum bounds. tiLowest :: TestInputs -> (Description, Compiler, GhcPkg) -- | Test the default dependencies using these compilers. Since -- cabal-install will eagerly get the most recent dependencies it can -- find, this will test the highest possible versions. The compiler -- specified in tiLowest is not automatically retried here, so if -- you want to use that compiler specify it as well. -- -- The last compiler in this list is assumed to be the most recent -- compiler. A report is left in the main package directory showing the -- dependencies that worked with this compiler version. tiDefault :: TestInputs -> [(Description, Compiler, GhcPkg)] tiTest :: TestInputs -> [(String, [String])] runTests :: TestInputs -> IO () instance Show InstallResult instance Show PackageInstResult instance Show InstallAndTestResult instance Show TestInputs instance ShowBS InstallAndTestResult instance ShowBS PackageInstResult instance ShowBS InstallResult instance CheckOk InstallAndTestResult instance CheckOk PackageInstResult instance CheckOk InstallResult