Modulequickcheck-assertions-0.3.0Haskell98
Test.QuickCheck.Assertions
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" $ someOtherPropAnd 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.0Ok, not very well printed, but better than nothing.
- 1 type
- 15 values
- Packagequickcheck-assertions-0.3.0
- Exports16
- LanguageHaskell98
- LicenceLGPL-3.0-only
- SourceAssertions.hs
Assertions
15 declarationsLeft argument should be equal to right
Right argument should be equal to left
Right argument should not equal to left
Left argument should not equal to right
Right argument is less then left
Right argument is greater than left
Left argument is greater than right
Left argument is less then right
Right argument is less or equal to left
Right argument is greater or equal to left
Left argument is greater or equal to right
Left argument is less or equal to right
Right value is almost equal to left
Left value is almost equal to right
Reexports
1 declarationThe result of a single test.