| |||||||
| |||||||
| |||||||
| Description | |||||||
| Experimental features using Template Haskell. You need to have a {-# LANGUAGE TemplateHaskell #-} pragma in your module for any of these to work. | |||||||
| Synopsis | |||||||
| |||||||
| Testing all properties in a module. | |||||||
| |||||||
Test all properties in the current module. The name of the property must begin with prop_. Polymorphic properties will be defaulted to Integer. Returns True if all tests succeeded, False otherwise. Using quickCheckAll interactively doesn't work. Instead, add a definition to your module along the lines of runTests = $quickCheckAll and then execute runTests. | |||||||
| |||||||
Test all properties in the current module, using a custom quickCheck function. The same caveats as with quickCheckAll apply. $forAllProperties has type (Property -> IO Result) -> IO Bool. An example invocation is $forAllProperties quickCheckResult, which does the same thing as $quickCheckAll. | |||||||
| Testing polymorphic properties. | |||||||
| |||||||
Test a polymorphic property, defaulting all type variables to Integer. Invoke as $(polyQuickCheck 'prop), where prop is a property. Note that just evaluating quickCheck prop in GHCi will seem to work, but will silently default all type variables to ()! | |||||||
| |||||||
Monomorphise an arbitrary name by defaulting all type variables to Integer. For example, if f has type Ord a => [a] -> [a] then $(mono 'f) has type [Integer] -> [Integer]. | |||||||
| Produced by Haddock version 2.6.0 |