lazysmallcheck-0.6: A library for demand-driven testing of Haskell programs

Safe Haskell | Safe
Language | Haskell98

Test.LazySmallCheck

Description

For documentation, see the paper "SmallCheck and Lazy SmallCheck: automatic exhaustive testing for small values" available at http://www.cs.york.ac.uk/fp/smallcheck/. Several examples are also included in the package.

# Documentation

class Serial a where Source

Methods

series :: Series a Source

Instances

Serial Bool Source |
Serial Char Source |
Serial Double Source |
Serial Float Source |
Serial Int Source |
Serial Integer Source |
Serial () Source |
Serial a => Serial [a] Source |
Serial a => Serial (Maybe a) Source |
(Serial a, Serial b) => Serial (Either a b) Source |
(Serial a, Serial b) => Serial (a, b) Source |
(Serial a, Serial b, Serial c) => Serial (a, b, c) Source |
(Serial a, Serial b, Serial c, Serial d) => Serial (a, b, c, d) Source |
(Serial a, Serial b, Serial c, Serial d, Serial e) => Serial (a, b, c, d, e) Source |

type Series a = Int -> Cons a Source

data Cons a Source

cons :: a -> Series a Source

(><) :: Series (a -> b) -> Series a -> Series b infixl 4 Source

empty :: Series a Source

(\/) :: Series a -> Series a -> Series a infixr 3 Source

drawnFrom :: [a] -> Cons a Source

cons0 :: a -> Series a Source

cons1 :: Serial a => (a -> b) -> Series b Source

cons2 :: (Serial a, Serial b) => (a -> b -> c) -> Series c Source

cons3 :: (Serial a, Serial b, Serial c) => (a -> b -> c -> d) -> Series d Source

cons4 :: (Serial a, Serial b, Serial c, Serial d) => (a -> b -> c -> d -> e) -> Series e Source

cons5 :: (Serial a, Serial b, Serial c, Serial d, Serial e) => (a -> b -> c -> d -> e -> f) -> Series f Source

class Testable a Source

Minimal complete definition

property

Instances

Testable Bool Source |
Testable Property Source |
(Show a, Serial a, Testable b) => Testable (a -> b) Source |

depthCheck :: Testable a => Int -> a -> IO () Source

smallCheck :: Testable a => Int -> a -> IO () Source

test :: Testable a => a -> IO () Source

(==>) :: Bool -> Bool -> Bool infixr 0 Source

data Property Source

Instances

Testable Property Source |

lift :: Bool -> Property Source

neg :: Property -> Property Source

(*&*) :: Property -> Property -> Property infixl 4 Source

(*|*) :: Property -> Property -> Property infixr 3 Source

(*=>*) :: Property -> Property -> Property infixr 0 Source

(*=*) :: Property -> Property -> Property Source