Test.Framework

test-framework-0.8.2.0: Framework for running and organising tests, with HUnit and QuickCheck support

Safe Haskell | None
Language | Haskell2010

Test.Framework

Description

A generic test framework for all types of Haskell test.

For an example of how to use test-framework, please see http://github.com/batterseapower/test-framework/raw/master/example/Test/Framework/Example.lhs

Synopsis

- data Test
- type TestName = String
- testGroup :: TestName -> [Test] -> Test
- plusTestOptions :: TestOptions -> Test -> Test
- buildTest :: IO Test -> Test
- buildTestBracketed :: IO (Test, IO ()) -> Test
- mutuallyExclusive :: Test -> Test
- module Test.Framework.Options
- module Test.Framework.Runners.Console
- module Test.Framework.Runners.Options
- module Test.Framework.Seed

# Documentation

data Test #

Main test data type: builds up a list of tests to be run. Users should use the utility functions in e.g. the test-framework-hunit and test-framework-quickcheck2 packages to create instances of `Test`, and then build them up into testsuites by using `testGroup` and lists.

For an example of how to use test-framework, please see http://github.com/batterseapower/test-framework/raw/master/example/Test/Framework/Example.lhs

type TestName = String #

Test names or descriptions. These are shown to the user

testGroup :: TestName -> [Test] -> Test #

Assemble a number of tests into a cohesive group

plusTestOptions :: TestOptions -> Test -> Test #

Add some options to child tests

buildTest :: IO Test -> Test #

Convenience for creating tests from an `IO` action

buildTestBracketed :: IO (Test, IO ()) -> Test #

Convenience for creating tests from an `IO` action, with a cleanup handler for when tests are finished

mutuallyExclusive :: Test -> Test #

Mark all tests in this portion of the tree as mutually exclusive, so only one runs at a time

module Test.Framework.Options

module Test.Framework.Runners.Console

module Test.Framework.Runners.Options

module Test.Framework.Seed