quickchecking
generates random C headers to test bindgen
using the quickcheck
property testing crate. When testing
bindgen
with quickchecking
, the generated header files are passed to
bindgen
's csmith-fuzzing/predicate.py
script. If that script fails,
quickchecking
panics, and you can report an issue containing the test case!
Requires python3
to be in $PATH
.
Many systems have python3
by default but if your OS doesn't, its package
manager may make it available:
$ sudo apt install python3
$ brew install python3
$ # Etc...
Run quickchecking
binary to generate and test fuzzed C headers with
cargo run
. Additional configuration is exposed through the binary's CLI.
$ cargo run --bin=quickchecking -- -h