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

Instances details

Serial Bool Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series Bool Source #
Serial Char Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series Char Source #
Serial Double Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series Double Source #
Serial Float Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series Float Source #
Serial Int Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series Int Source #
Serial Integer Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series Integer Source #
Serial () Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series () Source #
Serial a => Serial [a] Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series [a] Source #
Serial a => Serial (Maybe a) Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series (Maybe a) Source #
(Serial a, Serial b) => Serial (Either a b) Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series (Either a b) Source #
(Serial a, Serial b) => Serial (a, b) Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series (a, b) Source #
(Serial a, Serial b, Serial c) => Serial (a, b, c) Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series (a, b, c) Source #
(Serial a, Serial b, Serial c, Serial d) => Serial (a, b, c, d) Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series (a, b, c, d) Source #
(Serial a, Serial b, Serial c, Serial d, Serial e) => Serial (a, b, c, d, e) Source # |
Instance details Defined in Test.LazySmallCheck Methods series :: Series (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

Instances details

Testable Bool Source # |
Instance details Defined in Test.LazySmallCheck Methods property :: ([Term] -> Bool) -> P
Testable Property Source # |
Instance details Defined in Test.LazySmallCheck Methods property :: ([Term] -> Property) -> P
(Show a, Serial a, Testable b) => Testable (a -> b) Source # |
Instance details Defined in Test.LazySmallCheck Methods property :: ([Term] -> a -> b) -> P

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

Instances details

Testable Property Source # |
Instance details Defined in Test.LazySmallCheck Methods property :: ([Term] -> Property) -> P

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 #