Named test
Modulecheckers-0.6.0Haskell2010
Test.QuickCheck.Checkers
Some QuickCheck helpers
- 10 types
- 3 classes
- 37 values
- Packagecheckers-0.6.0
- Exports50
- LanguageHaskell2010
- LicenceBSD-3-Clause
- SourceCheckers.hs
Misc
16 declarationsNamed batch of tests
Flatten a test batch for inclusion in another
Check a batch tersely.
Check a batch verbosely.
Unary function, handy for type annotations
Binary function, handy for type annotations
f is its own inverse. See also inverse.
f is a left inverse of g. See also inverse.
f is a left and right inverse of g. See also inverseL.
Token Fractional type for tests
Token Num type for tests
Token Ord type for tests
Token uninteresting type for tests
Generalized equality
20 declarationsTypes of values that can be tested for equality, perhaps through random sampling.
Instances37EqProp, …
EqProp IntegerDefined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp AllDefined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp AnyDefined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp BoolDefined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp CharDefined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp DoubleDefined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp FloatDefined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp IntDefined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp OrderingDefined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp ()Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (First a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (Last a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (Max a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (Min a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (NonEmpty a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (Identity a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (Dual a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (Product a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (Sum a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (ZipList a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (Maybe a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp [a]Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEq a => EqProp (Complex a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEq a => EqProp (Ratio a)Defined in checkers-0.6.0 · Test.QuickCheck.Checkers(Show a, Arbitrary a, EqProp a) => EqProp (Endo a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp (Proxy a)Defined in checkers-0.6.0 · Test.QuickCheck.Checkers(EqProp a, EqProp b) => EqProp (Either a b)Defined in checkers-0.6.0 · Test.QuickCheck.Checkers(EqProp a, EqProp b) => EqProp (a, b)Defined in checkers-0.6.0 · Test.QuickCheck.Checkers(Show a, Arbitrary a, EqProp b) => EqProp (a -> b)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp (f a) => EqProp (Ap f a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp (f a) => EqProp (Alt f a)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp a => EqProp (Const a b)Defined in checkers-0.6.0 · Test.QuickCheck.Checkers(EqProp a, EqProp b, EqProp c) => EqProp (a, b, c)Defined in checkers-0.6.0 · Test.QuickCheck.Checkers(EqProp (f a), EqProp (g a)) => EqProp (Product f g a)Defined in checkers-0.6.0 · Test.QuickCheck.Checkers(EqProp (f a), EqProp (g a)) => EqProp (Sum f g a)Defined in checkers-0.6.0 · Test.QuickCheck.Checkers(EqProp a, EqProp b, EqProp c, EqProp d) => EqProp (a, b, c, d)Defined in checkers-0.6.0 · Test.QuickCheck.CheckersEqProp (f (g a)) => EqProp (Compose f g a)Defined in checkers-0.6.0 · Test.QuickCheck.Checkers
Reflexive property: a rel a
Transitive property: a .
Generate rel b && b rel c ==> a rel ca randomly, but use gen a to generate b and gen b to
generate c. gen ought to satisfy rel fairly often.
Symmetric property: a . Generate rel b ==> b rel aa
randomly, but use gen a to generate b. gen ought to satisfy
rel fairly often.
Antisymmetric property: (a .rel b) && (a /= b) ==> not (b rel a)
Has a given left identity, according to (=-=)
Has a given right identity, according to (=-=)
Has a given left and right identity, according to (=-=)
Associative, according to (=-=)
Commutative, according to (=-=)
Commutative, according to (=-=)
Homomorphism properties with respect to given monoid dictionaries.
See also monoidMorphism.
The unary function f is idempotent, i.e., f . f == f
A binary function op is idempotent, i.e., x , for all op x == xx
A binary function op is has an idempotent element x, i.e.,
x op x == x
Model-based (semantics-based) testing
10 declarationsMethods
model :: a -> b
Instances8Model, …
Model String StringDefined in checkers-0.6.0 · Test.QuickCheck.CheckersModel Bool BoolDefined in checkers-0.6.0 · Test.QuickCheck.CheckersModel Char CharDefined in checkers-0.6.0 · Test.QuickCheck.CheckersModel Double DoubleDefined in checkers-0.6.0 · Test.QuickCheck.CheckersModel Float FloatDefined in checkers-0.6.0 · Test.QuickCheck.CheckersModel Int IntDefined in checkers-0.6.0 · Test.QuickCheck.CheckersModel b b' => Model (a -> b) (a -> b')Defined in checkers-0.6.0 · Test.QuickCheck.Checkers(Model a b, Model a' b') => Model (a, a') (b, b')Defined in checkers-0.6.0 · Test.QuickCheck.Checkers
Some handy testing types
4 declarationsGenerate n arbitrary values
Produce n values from a generator
Nondeterministic choice: p1 .&. p2 picks randomly one of
p1 and p2 to test. If you test the property 100 times it
makes 100 random choices.