|
|
|
|
|
| Description |
| Some functions and generators suitable for writing QuickCheck
properties.
|
|
| Synopsis |
|
| associative :: (Arbitrary a, Eq a, Show a) => (a -> a -> a) -> a -> a -> a -> Bool | | | commutative :: (Arbitrary a, Eq a, Show a) => (a -> a -> a) -> a -> a -> Bool | | | isZero :: (Arbitrary a, Eq a, Show a) => a -> (a -> a -> a) -> a -> Bool | | | identity :: (Arbitrary a, Eq a, Show a) => a -> (a -> a -> a) -> a -> Bool | | | leftDistributive :: (Arbitrary a, Eq a, Show a) => (a -> a -> a) -> (a -> a -> a) -> a -> a -> a -> Bool | | | rightDistributive :: (Arbitrary a, Eq a, Show a) => (a -> a -> a) -> (a -> a -> a) -> a -> a -> a -> Bool | | | natural :: Integral i => Gen i | | | positive :: Integral i => Gen i | | | maybeGen :: Gen a -> Gen (Maybe a) | | | maybeCoGen :: (a -> Gen b -> Gen b) -> Maybe a -> Gen b -> Gen b | | | listOfElements :: [a] -> Gen [a] | | | runTests :: String -> [IO Bool] -> IO Bool |
|
|
|
| Algebraic properties
|
|
|
| Is the operator associative?
|
|
|
| Is the operator commutative?
|
|
|
| Is the element a zero for the operator?
|
|
|
| Is the element a unit for the operator?
|
|
|
| Does the first operator distribute (from the left) over the
second one?
|
|
|
| Does the first operator distribute (from the right) over the
second one?
|
|
| Generators
|
|
|
| Generates natural numbers.
|
|
|
| Generates positive numbers.
|
|
|
| Generates values of Maybe type, using the given generator to
generate the contents of the Just constructor.
|
|
|
| Coarbitrary "generator" for Maybe.
|
|
|
| Generates a list of elements picked from a given list.
|
|
| Test driver.
|
|
|
| :: String | A label for the tests. Used for
informational purposes.
| | -> [IO Bool] | | | -> IO Bool | | | Runs the tests, and returns True if all tests were successful.
|
|
|
| Produced by Haddock version 2.6.0 |