Expand description
Defines the core traits used by Proptest.
Modules
Modified versions of the normal strategy combinators which take specialised traits instead of normal functions.
Structs
A boxed Strategy
trait object as produced by Strategy::boxed()
.
Options passed to check_strategy_sanity()
.
Strategy
and ValueTree
filter adaptor.
Strategy
and ValueTree
filter_map adaptor.
ValueTree
corresponding to FilterMap
.
Adaptor that flattens a Strategy
which produces other Strategy
s into a
Strategy
that picks one of those strategies and then picks values from
it.
The ValueTree
produced by Flatten
.
Adaptor for Strategy
and ValueTree
which guards simplify()
and
complicate()
to avoid contract violations.
Similar to Flatten
, but does not shrink the input strategy.
Similar to Map
plus Flatten
, but does not shrink the input strategy and
passes the original input through.
A Strategy
which always produces a single value value and never
simplifies.
A Strategy
which always produces a single value value and never
simplifies. If T
is Clone
, you should use Just
instead.
Represents a value tree that is initialized on the first call to any methods.
Strategy
and ValueTree
map adaptor.
Strategy
and ValueTree
map into adaptor.
Wraps a Strategy
or ValueTree
to suppress shrinking of generated
values.
Strategy
perturbation adaptor.
ValueTree
perturbation adaptor.
Return type from Strategy::prop_recursive()
.
A boxed Strategy
trait object which is also Sync
and
Send
, as produced by Strategy::sboxed()
.
Strategy
shuffle adaptor.
ValueTree
shuffling adaptor.
Similar to Union
, but internally uses a tuple to hold the strategies.
ValueTree
type produced by TupleUnion
.
A Strategy
which picks from one of several delegate Stragegy
s.
ValueTree
corresponding to Union
.
Traits
A value which can be used with the prop_shuffle
combinator.
A strategy for producing arbitrary values of a given type.
A generated value and its associated shrinker.
Functions
Run some tests on the given Strategy
to ensure that it upholds the
simplify/complicate contracts.
Convert a floating-point weight in the range (0.0,1.0) to a pair of weights
that can be used with Union
and similar.
Type Definitions
Shorthand for LazyJust<T, fn () -> T>
.
A relative weight
of a particular Strategy
corresponding to T
coupled with T
itself. The weight is currently given in u32
.
A relative weight
of a particular Strategy
corresponding to T
coupled with Arc<T>
. The weight is currently given in u32
.