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

Safe HaskellSafe
LanguageHaskell98

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

Methods

series :: Series a

Instances

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

type Series a = Int -> Cons a

data Cons a

cons :: a -> Series a

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

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

drawnFrom :: [a] -> Cons a

cons0 :: a -> Series a

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

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

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

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

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

class Testable a

Minimal complete definition

property

Instances

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

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

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

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

data Property

Instances

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

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

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