[][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 Clone for FileFailurePersistence[src]

impl Copy for FileFailurePersistence[src]

impl Debug for FileFailurePersistence[src]

impl Default for FileFailurePersistence[src]

impl FailurePersistence for FileFailurePersistence[src]

impl PartialEq<FileFailurePersistence> for FileFailurePersistence[src]

impl StructuralPartialEq for FileFailurePersistence[src]

Auto Trait Implementations

impl RefUnwindSafe for FileFailurePersistence[src]

impl Send for FileFailurePersistence[src]

impl Sync for FileFailurePersistence[src]

impl Unpin for FileFailurePersistence[src]

impl UnwindSafe for FileFailurePersistence[src]

Blanket Implementations

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

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

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

impl<T> From<T> for T[src]

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

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

type Owned = T

The resulting type after obtaining ownership.

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

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> 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<V, T> VZip<V> for T where
    V: MultiLane<T>,