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

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

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).

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.

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.

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

Trait Implementations

impl Clone for FileFailurePersistence
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl Copy for FileFailurePersistence
[src]

impl Debug for FileFailurePersistence
[src]

[src]

Formats the value using the given formatter. Read more

impl PartialEq for FileFailurePersistence
[src]

[src]

This method tests for self and other values to be equal, and is used by ==. Read more

[src]

This method tests for !=.

impl FailurePersistence for FileFailurePersistence
[src]

Important traits for Vec<u8>
[src]

Supply seeds associated with the given source_file that may be used by a TestRunner's random number generator in order to consistently recreate a previously-failing Strategy-provided value. Read more

[src]

Store a new failure-generating seed associated with the given source_file.

Important traits for Box<W>
[src]

Delegate method for producing a trait object usable with Clone

[src]

Equality testing delegate required due to constraints of trait objects.

[src]

Assistant method for trait object comparison.

impl Default for FileFailurePersistence
[src]

[src]

Returns the "default value" for a type. Read more

Auto Trait Implementations