-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | HUnit like assertions for QuickCheck -- -- Library with convenient assertions for QuickCheck properties like in -- HUnit @package quickcheck-assertions @version 0.3.0 -- | Module provides convenient functions to do some assertions in -- QuickCheck properties with pretty printed reasons. For example you can -- do something like that: -- --
--   module Main where
--   
--   import Test.Hspec
--   import Test.Hspec.QuickCheck
--   import Test.QuickCheck.Assertions
--   import Test.QuickCheck.Property
--   
--   someProp :: Int -> Int -> Result
--   someProp a b = (a ?> b)
--   
--   someOtherProp :: Double -> Double -> Result
--   someOtherProp a b = (a ?== b)
--   
--   main = hspec $ describe "failing test" $ do
--     prop "must fail" $ someProp
--     prop "must fail again" $ someOtherProp
--   
-- -- And receive pretty printed fail message when testing: -- --
--   failing test
--     - must fail FAILED [1]
--     - must fail again FAILED [2]
--   
--   1) failing test must fail FAILED
--   *** Failed! (after 1 test):
--   >>>>>>>>>>>>>> the value
--   0
--   >>>>>>>>>>>>>> should be greater than value
--   0
--   0
--   0
--   
--   
--   2) failing test must fail again FAILED
--   *** Failed! (after 2 tests and 4 shrinks):
--   >>>>>>>>>>>>>> expected
--   0.0
--   >>>>>>>>>>>>>> but got
--   1.0
--   0.0
--   1.0
--   
-- -- Ok, not very well printed, but better than nothing. module Test.QuickCheck.Assertions binAsrt :: String -> Bool -> Result -- | Left argument should be equal to right (?==) :: (Eq a, Show a) => a -> a -> Result -- | Right argument should be equal to left (==?) :: (Eq a, Show a) => a -> a -> Result -- | Right argument should not equal to left (/=?) :: (Eq a, Show a) => a -> a -> Result -- | Left argument should not equal to right (?/=) :: (Eq a, Show a) => a -> a -> Result -- | Right argument is less then left (>?) :: (Show a, Ord a) => a -> a -> Result -- | Right argument is greater than left ( a -> a -> Result -- | Left argument is greater than right (?>) :: (Show a, Ord a) => a -> a -> Result -- | Left argument is less then right (?<) :: (Show a, Ord a) => a -> a -> Result -- | Right argument is less or equal to left (>=?) :: (Show a, Ord a) => a -> a -> Result -- | Right argument is greater or equal to left (<=?) :: (Show a, Ord a) => a -> a -> Result -- | Left argument is greater or equal to right (?>=) :: (Show a, Ord a) => a -> a -> Result -- | Left argument is less or equal to right (?<=) :: (Show a, Ord a) => a -> a -> Result -- | Right value is almost equal to left (~==?) :: (AEq a, Show a) => a -> a -> Result -- | Left value is almost equal to right (?~==) :: (AEq a, Show a) => a -> a -> Result -- | The result of a single test. data Result :: *