Cabal-1.22.5.0: A framework for packaging Haskell software

Safe Haskell | None
Language | Haskell98

Distribution.Simple.Test.Log

Synopsis

- data PackageLog = PackageLog {
  - package :: PackageId
  - compiler :: CompilerId
  - platform :: Platform
  - testSuites :: [TestSuiteLog]
  }
- data TestLogs
  - = TestLog {
    - testName :: String
    - testOptionsReturned :: Options
    - testResult :: Result
    }
  - | GroupLogs String [TestLogs]
- data TestSuiteLog = TestSuiteLog {
  - testSuiteName :: String
  - testLogs :: TestLogs
  - logFile :: FilePath
  }
- countTestResults :: TestLogs -> (Int, Int, Int)
- localPackageLog :: PackageDescription -> LocalBuildInfo -> PackageLog
- summarizePackage :: Verbosity -> PackageLog -> IO Bool
- summarizeSuiteFinish :: TestSuiteLog -> String
- summarizeSuiteStart :: String -> String
- summarizeTest :: Verbosity -> TestShowDetails -> TestLogs -> IO ()
- suiteError :: TestLogs -> Bool
- suiteFailed :: TestLogs -> Bool
- suitePassed :: TestLogs -> Bool
- testSuiteLogPath :: PathTemplate -> PackageDescription -> LocalBuildInfo -> String -> TestLogs -> FilePath

# Documentation

data PackageLog

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

Constructors

PackageLog |

Fields

package :: PackageId
compiler :: CompilerId
platform :: Platform
testSuites :: [TestSuiteLog]

Instances

Eq PackageLog |
Read PackageLog |
Show PackageLog |

data TestLogs

Constructors

TestLog |

Fields

testName :: String
testOptionsReturned :: Options
testResult :: Result

GroupLogs String [TestLogs] |

Instances

Eq TestLogs |
Read TestLogs |
Show TestLogs |

data TestSuiteLog

Logs test suite results, itemized by test case.

Constructors

TestSuiteLog |

Fields

testSuiteName :: String
testLogs :: TestLogs
logFile :: FilePath

Instances

Eq TestSuiteLog |
Read TestSuiteLog |
Show TestSuiteLog |

countTestResults

Arguments

:: TestLogs |
-> (Int, Int, Int) | Passes, fails, and errors, respectively.

Count the number of pass, fail, and error test results in a `TestLogs` tree.

localPackageLog :: PackageDescription -> LocalBuildInfo -> PackageLog

A `PackageLog` with package and platform information specified.

summarizePackage :: Verbosity -> PackageLog -> IO Bool

Print a summary to the console after all test suites have been run indicating the number of successful test suites and cases. Returns `True` if all test suites passed and `False` otherwise.

summarizeSuiteFinish :: TestSuiteLog -> String

Print a summary of the test suite's results on the console, suppressing output for certain verbosity or test filter levels.

summarizeSuiteStart :: String -> String

summarizeTest :: Verbosity -> TestShowDetails -> TestLogs -> IO ()

Print a summary of a single test case's result to the console, supressing output for certain verbosity or test filter levels.

suiteError :: TestLogs -> Bool

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

suiteFailed :: TestLogs -> Bool

From a `TestSuiteLog`, determine if the test suite failed.

suitePassed :: TestLogs -> Bool

From a `TestSuiteLog`, determine if the test suite passed.

testSuiteLogPath

Arguments

:: PathTemplate |
-> PackageDescription |
-> LocalBuildInfo |
-> String | test suite name
-> TestLogs | test suite results
-> FilePath |