[][src]Module proptest::prelude

Re-exports the most commonly-needed APIs of proptest.

This module is intended to be wildcard-imported, i.e., use proptest::prelude::*;. Note that it re-exports the whole crate itself under the name prop, so you don't need a separate use proptest; line.

In addition to Proptest's own APIs, this also reexports a small portion of the rand crate sufficient to easily use prop_perturb and other functionality that exposes random number generators. Please note that this is will always be a direct reexport; using these in preference to using the rand crate directly will not provide insulation from the upcoming revision to the rand crate.

Re-exports

pub use crate::proptest;
pub use crate::prop_assert;
pub use crate::prop_assert_eq;
pub use crate::prop_assert_ne;
pub use crate::prop_assume;
pub use crate::prop_oneof;
pub use crate::prop_compose;

Modules

prop

Re-exports the entire public API of proptest so that an import of prelude allows simply writing, for example, prop::num::i32::ANY rather than proptest::num::i32::ANY plus a separate use proptest;.

Structs

BoxedStrategy

A boxed Strategy trait object as produced by Strategy::boxed().

Just

A Strategy which always produces a single value value and never simplifies.

ProptestConfig

Configuration for how a proptest test should be run.

SBoxedStrategy

A boxed Strategy trait object which is also Sync and Send, as produced by Strategy::sboxed().

Enums

TestCaseError

Errors which can be returned from test cases to indicate non-successful completion.

Traits

Arbitrary

Arbitrary determines a canonical Strategy for the implementing type.

Rng

An automatically-implemented extension trait on RngCore providing high-level generic methods for sampling values and other convenience methods.

RngCore

The core of a random number generator.

Strategy

A strategy for producing arbitrary values of a given type.

Functions

any

Generates a Strategy producing Arbitrary values of A. Unlike arbitrary, it should be used for being explicit on what A is. For clarity, this may be a good idea.

any_with

Generates a Strategy producing Arbitrary values of A with the given configuration arguments passed in args. Unlike arbitrary_with, it should be used for being explicit on what A is. For clarity, this may be a good idea.