sapling/eden/scm/lib/dag/fuzz
Jun Wu 29c749ef7d dag: add fuzz tests on the octopus DAG
Summary: This gives us some confidence about octopus merge handling.

Reviewed By: DurhamG

Differential Revision: D19540726

fbshipit-source-id: e84de74aecae54429483edd185d39fd1bd858f87
2020-01-23 17:58:51 -08:00
..
fuzz_targets dag: add fuzz tests on the octopus DAG 2020-01-23 17:58:51 -08:00
.gitignore dag: add a fuzz test about gca algorithm 2020-01-22 19:30:50 -08:00
Cargo.toml dag: add fuzz tests on the octopus DAG 2020-01-23 17:58:51 -08:00
README dag: add a fuzz test about gca algorithm 2020-01-22 19:30:50 -08:00

Steps to run the fuzz tests with OSS toolchain:

1. Install rustup.
2. `rustup install nightly` to install nightly toolchain.
3. From `eden/scm`, run `rustup override set nightly && make local` to use the nightly toolchain.
4. From `dag` (parent directory of `fuzz`), run `cargo fuzz run $TEST_NAME`. For example, `$TEST_NAME` can be `dag`.

`cargo fuzz` supports some options. For example:

    cargo fuzz run --release -j 16 gca -- -max_len=20

will build in release mode, fork into 16 processes, and generate at most 20-byte input.

See also https://rust-fuzz.github.io/book/cargo-fuzz.html.