rust-bitcoin-unsafe-fast/bitcoin
Tobin C. Harding 2e79a0bdc4 Introduce mutation testing
Introduce mutation testing by way of mutagen [0]

- Conditionally add the dev-dependency `mutagen` (using `do_mutate`
flag)

 This flag is not very well named but `mutagen` and `mutate` are already
 taken?

- Mutate all methods of the `U256` struct that do not require additional
  unit tests.

 Uses `cfg(all(test, do_mutate), mutate)` - I cannot workout why we need
 to check on `test` as well i.e., I don't understand why we cannot use
 `cfg(do_mutate, mutate)`?

With this applied test can be run as usual with a stable toolchain. To
run mutagen we use `RUSTFLAGS='--cfg=do_mutate' cargo +nightly mutagen`.

[0] https://github.com/llogiq/mutagen
2022-12-23 08:23:49 +11:00
..
contrib Fail CI if docs build throws warnings 2022-11-21 10:35:49 +11:00
embedded Patch hashes and update the code 2022-12-18 14:33:55 +01:00
examples Add `tapscript_leaf_hash()` to `Script` 2022-12-19 08:35:35 +01:00
fuzz Patch hashes and update the code 2022-12-18 14:33:55 +01:00
src Introduce mutation testing 2022-12-23 08:23:49 +11:00
tests Implemented unsized `Script` 2022-12-14 23:21:27 +01:00
CHANGELOG.md add some documentation clarifying the locktime ordering shenanigans in #1330 2022-12-15 23:12:03 +00:00
Cargo.toml Introduce mutation testing 2022-12-23 08:23:49 +11:00
build.rs Implement consensus encoding adapter for serde 2022-12-02 10:48:05 +01:00