Expand description
chaos_theory is a modern property-based testing and structure-aware fuzzing library.
Modules§
- make
- Collection of built-in generator implementations.
Macros§
- assume
- Mark the current test case as invalid if the expression is false.
- fuzz_
target_ libfuzzer_ sys - Define a
libfuzzer_sysfuzz target. - vdbg
dbgwrapper that checksSource::should_log.- veprintln
eprintlnwrapper that checksSource::should_log.- vprintln
printlnwrapper that checksSource::should_log.
Structs§
- Config
- Custom configuration for
Env. - Env
- Environment and settings for
chaos_theorymagic. - Gen
- Type-erased generator of
T, implemented as a boxed trait object. - GenShared
- Thread-safe type-erased generator of
T, implemented as a boxed trait object. - Source
- Primary interface for working with pseudo-random data.
- Source
Raw - Lower-level variant of
Source, primarily for use inGeneratorimplementations.
Enums§
- Effect
- Result of the
Source::repeatorSourceRaw::repeatstep. - Maybe
Owned - Type that represents either owned or borrowed values.
Traits§
- Arbitrary
- A trait for types that have a default
Generatorimplementation. - Generator
- A trait for types that describe composable generation of values.
- Option
Ext - Utility trait to give
OptionanOptionExt::assume_somehelper.
Functions§
- check
- Check that property holds (does not panic).
- fuzz_
check - Check that property holds (does not panic) on fuzzer-provided input.
- fuzz_
mutate - Mutate fuzzer input.
- fuzz_
mutate_ crossover - Cross-over two fuzzer inputs.
- fuzz_
write_ seed - Write seed input for the fuzzer. This can conveniently be done from an ignored test.