QuickCheck-2.7.6: Automatic testing of Haskell programs

Safe HaskellNone
LanguageHaskell98

Test.QuickCheck.Monadic

Description

Allows testing of monadic values. See the paper "Testing Monadic Code with QuickCheck": http://www.cse.chalmers.se/~rjmh/Papers/QuickCheckST.ps.

Documentation

newtype PropertyM m a

Constructors

MkPropertyM 

Fields

unPropertyM :: (a -> Gen (m Property)) -> Gen (m Property)
 

stop :: (Testable prop, Monad m) => prop -> PropertyM m a

assert :: Monad m => Bool -> PropertyM m ()

pre :: Monad m => Bool -> PropertyM m ()

run :: Monad m => m a -> PropertyM m a

pick :: (Monad m, Show a) => Gen a -> PropertyM m a

wp :: Monad m => m a -> (a -> PropertyM m b) -> PropertyM m b

forAllM :: (Monad m, Show a) => Gen a -> (a -> PropertyM m b) -> PropertyM m b

monitor :: Monad m => (Property -> Property) -> PropertyM m ()

monadic :: Monad m => (m Property -> Property) -> PropertyM m a -> Property

monadic' :: Monad m => PropertyM m a -> Gen (m Property)

monadicST :: (forall s. PropertyM (ST s) a) -> Property

runSTGen :: (forall s. Gen (ST s a)) -> Gen a