X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=fuzz%2Fsrc%2Fbin%2Frouter_target.rs;h=0ebec5494554b0ce9d03d76ce8829fa9f088294e;hb=b8cdde8af64189fd1567cbc85cfae26c610af969;hp=c2ef438bb8d9412b4383a58651d834990d127a10;hpb=22a0dd5f339058fd6733920ffca0f5eb64db4e32;p=rust-lightning diff --git a/fuzz/src/bin/router_target.rs b/fuzz/src/bin/router_target.rs index c2ef438b..0ebec549 100644 --- a/fuzz/src/bin/router_target.rs +++ b/fuzz/src/bin/router_target.rs @@ -11,6 +11,16 @@ // To modify it, modify target_template.txt and run gen_target.sh instead. #![cfg_attr(feature = "libfuzzer_fuzz", no_main)] +#![cfg_attr(rustfmt, rustfmt_skip)] + +#[cfg(not(fuzzing))] +compile_error!("Fuzz targets need cfg=fuzzing"); + +#[cfg(not(hashes_fuzz))] +compile_error!("Fuzz targets need cfg=hashes_fuzz"); + +#[cfg(not(secp256k1_fuzz))] +compile_error!("Fuzz targets need cfg=secp256k1_fuzz"); extern crate lightning_fuzz; use lightning_fuzz::router::*; @@ -93,10 +103,18 @@ fn run_test_cases() { } } } + let mut failed_outputs = Vec::new(); for (test, thread) in threads.drain(..) { if let Some(output) = thread.join().unwrap() { - println!("Output of {}:\n{}", test, output); - panic!(); + println!("\nOutput of {}:\n{}\n", test, output); + failed_outputs.push(test); + } + } + if !failed_outputs.is_empty() { + println!("Test cases which failed: "); + for case in failed_outputs { + println!("{}", case); } + panic!(); } }