smallcheck-0.2.1: Another lightweight testing library in Haskell.

Test.SmallCheck

Documentation

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

class Testable a Source

Instances

forAll :: (Show a, Testable b) => Series a -> (a -> b) -> PropertySource

forAllElem :: (Show a, Testable b) => [a] -> (a -> b) -> PropertySource

exists :: (Serial a, Testable b) => (a -> b) -> PropertySource

existsDeeperBy :: (Serial a, Testable b) => (Int -> Int) -> (a -> b) -> PropertySource

thereExists :: Testable b => Series a -> (a -> b) -> PropertySource

thereExistsElem :: Testable b => [a] -> (a -> b) -> PropertySource

type Series a = Int -> [a]Source

class Serial a whereSource

Methods

series :: Series aSource

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

Instances

Serial Bool 
Serial Char 
Serial Double 
Serial Float 
Serial Int 
Serial Integer 
Serial () 
Serial a => Serial [a] 
Serial a => Serial (Maybe a) 
(Integral a, Serial a) => Serial (N a) 
(Serial a, Serial b) => Serial (a -> b) 
(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) 

(><) :: Series a -> Series b -> Series (a, b)Source

two :: Series a -> Series (a, a)Source

three :: Series a -> Series (a, a, a)Source

four :: Series a -> Series (a, a, a, a)Source

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

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

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

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

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

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

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

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

newtype N a Source

Constructors

N a 

Instances

Show a => Show (N a) 
(Integral a, Serial a) => Serial (N a) 

type Nat = N IntSource