| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Test.Syd.Modify
Description
This module defines functions for declaring different test settings
Synopsis
- modifyMaxSuccess :: (Int -> Int) -> TestDefM a b c -> TestDefM a b c
- modifyMaxDiscardRatio :: (Int -> Int) -> TestDefM a b c -> TestDefM a b c
- modifyMaxSize :: (Int -> Int) -> TestDefM a b c -> TestDefM a b c
- modifyMaxShrinks :: (Int -> Int) -> TestDefM a b c -> TestDefM a b c
- modifyRunSettings :: (TestRunSettings -> TestRunSettings) -> TestDefM a b c -> TestDefM a b c
- data TestRunSettings = TestRunSettings {}
- sequential :: TestDefM a b c -> TestDefM a b c
- parallel :: TestDefM a b c -> TestDefM a b c
- withParallelism :: Parallelism -> TestDefM a b c -> TestDefM a b c
- data Parallelism
- randomiseExecutionOrder :: TestDefM a b c -> TestDefM a b c
- doNotRandomiseExecutionOrder :: TestDefM a b c -> TestDefM a b c
- withExecutionOrderRandomisation :: ExecutionOrderRandomisation -> TestDefM a b c -> TestDefM a b c
- data ExecutionOrderRandomisation
- flaky :: Int -> TestDefM a b c -> TestDefM a b c
- notFlaky :: TestDefM a b c -> TestDefM a b c
- withFlakiness :: FlakinessMode -> TestDefM a b c -> TestDefM a b c
- data FlakinessMode
Declaring different test settings
modifyRunSettings :: (TestRunSettings -> TestRunSettings) -> TestDefM a b c -> TestDefM a b c Source #
data TestRunSettings Source #
Constructors
| TestRunSettings | |
Instances
Declaring parallelism
sequential :: TestDefM a b c -> TestDefM a b c Source #
Declare that all tests below must be run sequentially
parallel :: TestDefM a b c -> TestDefM a b c Source #
Declare that all tests below may be run in parallel. (This is the default.)
withParallelism :: Parallelism -> TestDefM a b c -> TestDefM a b c Source #
data Parallelism Source #
Constructors
| Parallel | |
| Sequential |
Declaring randomisation order
randomiseExecutionOrder :: TestDefM a b c -> TestDefM a b c Source #
doNotRandomiseExecutionOrder :: TestDefM a b c -> TestDefM a b c Source #
withExecutionOrderRandomisation :: ExecutionOrderRandomisation -> TestDefM a b c -> TestDefM a b c Source #
data ExecutionOrderRandomisation Source #
Constructors
| RandomiseExecutionOrder | |
| DoNotRandomiseExecutionOrder |
Declaring flakiness
flaky :: Int -> TestDefM a b c -> TestDefM a b c Source #
Mark a test suite as "potentially flaky".
This will retry any test in the given test group up to the given number of tries, and pass a test if it passes once. The test output will show which tests were flaky.
WARNING: This is only a valid approach to dealing with test flakiness if it is true that tests never pass accidentally. In other words: tests using flaky must be guaranteed to fail every time if an error is introduced in the code, it should only be added to deal with accidental failures, never accidental passes.
withFlakiness :: FlakinessMode -> TestDefM a b c -> TestDefM a b c Source #
data FlakinessMode Source #
Constructors
| MayNotBeFlaky | |
| MayBeFlakyUpTo !Int |