We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 66f7a0a commit ca344e6Copy full SHA for ca344e6
fuzz/fuzz_targets/bitcoin/deserialize_witness.rs
@@ -1,12 +1,18 @@
1
use bitcoin::consensus::{deserialize, serialize};
2
use bitcoin::witness::Witness;
3
use honggfuzz::fuzz;
4
+use arbitrary::{Arbitrary, Unstructured};
5
6
fn do_test(data: &[u8]) {
- let w: Result<Witness, _> = deserialize(data);
7
+ let mut u = Unstructured::new(data);
8
+
9
+ let w = Witness::arbitrary(&mut u);
10
if let Ok(witness) = w {
11
let serialized = serialize(&witness);
- assert_eq!(data, &serialized[..]);
12
+ let deserialized: Result<Witness, _> = deserialize(serialized.as_slice());
13
14
+ assert!(deserialized.is_ok());
15
+ assert_eq!(deserialized.unwrap(), witness);
16
}
17
18
0 commit comments