Cabal-1.16.0: A framework for packaging Haskell software

Portabilityportable
Maintainercabal-devel@haskell.org
Safe HaskellNone

Distribution.Simple.Test

Description

This is the entry point into testing a built package. It performs the "./setup test" action. It runs test suites designated in the package description and reports on the results.

Synopsis

Documentation

test

Arguments

:: PackageDescription

information from the .cabal file

-> LocalBuildInfo

information from the configure step

-> TestFlags

flags sent to test

-> IO () 

Perform the "./setup test" action.

stubMain :: IO [Test] -> IO ()

Main function for test stubs. Once, it was written directly into the stub, but minimizing the amount of code actually in the stub maximizes the number of detectable errors when Cabal is compiled.

writeSimpleTestStub

Arguments

:: TestSuite

library TestSuite for which a stub is being created

-> FilePath

path to directory where stub source should be located

-> IO () 

Write the source file for a library TestSuite stub executable.

stubFilePath :: TestSuite -> FilePath

The filename of the source file for the stub executable associated with a library TestSuite.

stubName :: TestSuite -> FilePath

The name of the stub executable associated with a library TestSuite.

data PackageLog

Logs all test results for a package, broken down first by test suite and then by test case.

data TestSuiteLog

Logs test suite results, itemized by test case.

suitePassed :: TestSuiteLog -> Bool

From a TestSuiteLog, determine if the test suite passed.

suiteFailed :: TestSuiteLog -> Bool

From a TestSuiteLog, determine if the test suite failed.

suiteError :: TestSuiteLog -> Bool

From a TestSuiteLog, determine if the test suite encountered errors.