The function verboseCheck
from QuickCheck 1 seems to be absent in QuickCheck 2 (or at least, I can't find it). Is there any other way to show which values are used during testing?
Looks like verbose
(and other verbose
- functions) were returned back to QuickCheck in version 2.4
The sample
function is also useful:
Prelude Test.QuickCheck
ghci> sample (arbitrary :: Gen String)
""
")\223"
"(\227\&5F"
"\DC1"
"\136'\140\180\FS"
"K\DC2\NUL\CAN\253Q"
"\DC4\f\184&.\DC3\159\&1I\160j\147"
....
This way, it's easy to play with your Arbitrary instances, and make sure they generate what you think they generate.
Yes, this seems to be a functionality regression with respect to QuickCheck 1.
You can work around it by annotating your properties with a Debug.Trace.trace statement, however. Something like:
import Debug.Trace
prop_eq xs = traceShow xs $
xs == reverse (reverse xs)
I've been happy with
import Debug.Trace
verboseCheck prop = quickCheck (\input -> traceShow input $ prop input)
Looks like verbose
(and other verbose
- functions) were returned back to QuickCheck in version 2.4
I took a look at sources, and it seems that Args
were refactored, configEvery
is no longer there, and thus you are not able to print all test values without patching QuichCheck sources
© 2022 - 2024 — McMap. All rights reserved.