Struct proptest::test_runner::TestRunner [−][src]
State used when running a proptest test.
Implementations
impl TestRunner
[src]
pub fn new(config: Config) -> Self
[src]
Create a fresh TestRunner
with the given configuration.
The runner will use an RNG with a generated seed and the default algorithm.
In no_std
environments, every TestRunner
will use the same
hard-coded seed. This seed is not contractually guaranteed and may be
changed between releases without notice.
pub fn deterministic() -> Self
[src]
Create a fresh TestRunner
with the standard deterministic RNG.
This is sugar for the following:
let config = Config::default(); let algorithm = config.rng_algorithm; TestRunner::new_with_rng( config, TestRng::deterministic_rng(algorithm));
Refer to TestRng::deterministic_rng()
for more information on the
properties of the RNG used here.
pub fn new_with_rng(config: Config, rng: TestRng) -> Self
[src]
Create a fresh TestRunner
with the given configuration and RNG.
pub fn rng(&mut self) -> &mut TestRng
[src]
Returns the RNG for this test run.
pub fn new_rng(&mut self) -> TestRng
[src]
Create a new, independent but deterministic RNG from the RNG in this runner.
pub fn config(&self) -> &Config
[src]
Returns the configuration of this runner.
pub fn bytes_used(&self) -> Vec<u8>
[src]
Dumps the bytes obtained from the RNG so far (only works if the RNG is
set to Recorder
).
Panics
Panics if the RNG does not capture generated data.
pub fn run<S: Strategy>(
&mut self,
strategy: &S,
test: impl Fn(S::Value) -> TestCaseResult
) -> Result<(), TestError<<S as Strategy>::Value>>
[src]
&mut self,
strategy: &S,
test: impl Fn(S::Value) -> TestCaseResult
) -> Result<(), TestError<<S as Strategy>::Value>>
Run test cases against f
, choosing inputs via strategy
.
If any failure cases occur, try to find a minimal failure case and
report that. If invoking f
panics, the panic is turned into a
TestCaseError::Fail
.
If failure persistence is enabled, all persisted failing cases are tested first. If a later non-persisted case fails, its seed is persisted before returning failure.
Returns success or failure indicating why the test as a whole failed.
pub fn run_one<V: ValueTree>(
&mut self,
case: V,
test: impl Fn(V::Value) -> TestCaseResult
) -> Result<bool, TestError<V::Value>>
[src]
&mut self,
case: V,
test: impl Fn(V::Value) -> TestCaseResult
) -> Result<bool, TestError<V::Value>>
Run one specific test case against this runner.
If the test fails, finds the minimal failing test case. If the test does not fail, returns whether it succeeded or was filtered out.
This does not honour the fork
config, and will not be able to
terminate the run if it runs for longer than timeout
. However, if the
test function returns but took longer than timeout
, the test case
will fail.
pub fn reject_local(&mut self, whence: impl Into<Reason>) -> Result<(), Reason>
[src]
Update the state to account for a local rejection from whence
, and
return Ok
if the caller should keep going or Err
to abort.
pub fn flat_map_regen(&self) -> bool
[src]
Increment the counter of flat map regenerations and return whether it is still under the configured limit.
Trait Implementations
impl Clone for TestRunner
[src]
fn clone(&self) -> TestRunner
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for TestRunner
[src]
impl Default for TestRunner
[src]
Equivalent to: TestRunner::new(Config::default())
.
impl Display for TestRunner
[src]
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,