Expand description

This crate is a port of Haskell’s QuickCheck.

For detailed examples, please see the README.


In general, this crate considers the Arbitrary implementations provided as implementation details. Strategies may or may not change over time, which may cause new test failures, presumably due to the discovery of new bugs due to a new kind of witness being generated. These sorts of changes may happen in semver compatible releases.


A macro for writing quickcheck tests.


Gen represents a PRNG.
The main QuickCheck type for setting configuration and running QuickCheck.
Describes the status of a single instance of a test.


Arbitrary describes types whose values can be randomly generated and shrunk.
Testable describes types (e.g., a function) whose values can be tested.


Creates a shrinker with zero elements.
Convenience function for running QuickCheck.
Creates a shrinker with a single element.