[][src]Enum proptest::test_runner::FileFailurePersistence

pub enum FileFailurePersistence {
    Off,
    SourceParallel(&'static str),
    WithSource(&'static str),
    Direct(&'static str),
    // some variants omitted
}

Describes how failing test cases are persisted.

Note that file names in this enum are &str rather than &Path since constant functions are not yet in Rust stable as of 2017-12-16.

In all cases, if a derived path references a directory which does not yet exist, proptest will attempt to create all necessary parent directories.

Variants

Off

Completely disables persistence of failing test cases.

This is semantically equivalent to Direct("/dev/null") on Unix and Direct("NUL") on Windows (though it is internally handled by simply not doing any I/O).

SourceParallel(&'static str)

The path given to TestRunner::set_source_file() is parsed. The path is traversed up the directory tree until a directory containing a file named lib.rs or main.rs is found. A sibling to that directory with the name given by the string in this configuration is created, and a file with the same name and path relative to the source directory, but with the extension changed to .txt, is used.

For example, given a source path of /home/jsmith/code/project/src/foo/bar.rs and a configuration of SourceParallel("proptest-regressions") (the default), assuming the src directory has a lib.rs or main.rs, the resulting file would be /home/jsmith/code/project/proptest-regressions/foo/bar.txt.

If no lib.rs or main.rs can be found, a warning is printed and this behaves like WithSource.

If no source file has been configured, a warning is printed and this behaves like Off.

WithSource(&'static str)

The path given to TestRunner::set_source_file() is parsed. The extension of the path is changed to the string given in this configuration, and that filename is used.

For example, given a source path of /home/jsmith/code/project/src/foo/bar.rs and a configuration of WithSource("regressions"), the resulting path would be /home/jsmith/code/project/src/foo/bar.regressions.

Direct(&'static str)

The string given in this option is directly used as a file path without any further processing.

Trait Implementations

impl FailurePersistence for FileFailurePersistence[src]

fn load_persisted_failures(
    &self,
    source_file: Option<&'static str>
) -> Vec<[u8; 16]>
[src]

Deprecated

Use load_persisted_failures2 instead. Read more

fn save_persisted_failure(
    &mut self,
    source_file: Option<&'static str>,
    seed: [u8; 16],
    shrunken_value: &dyn Debug
)
[src]

Deprecated

Use save_persisted_failures2 instead. Read more

impl Copy for FileFailurePersistence[src]

impl Debug for FileFailurePersistence[src]

impl PartialEq<FileFailurePersistence> for FileFailurePersistence[src]

impl Clone for FileFailurePersistence[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Default for FileFailurePersistence[src]

Auto Trait Implementations

Blanket Implementations

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> From for T[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.