Coverage Report

Created: 2025-12-04 07:01

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/wasm-tools/fuzz/src/reencode.rs
Line
Count
Source
1
use arbitrary::{Result, Unstructured};
2
use wasm_encoder::reencode::{Reencode, RoundtripReencoder};
3
4
1.49k
pub fn run(u: &mut Unstructured<'_>) -> Result<()> {
5
1.49k
    let (module1, config) = super::generate_valid_module(u, |_, _| Ok(()))?;
6
7
1.49k
    let mut module2 = Default::default();
8
1.49k
    RoundtripReencoder
9
1.49k
        .parse_core_module(&mut module2, wasmparser::Parser::new(0), &module1)
10
1.49k
        .unwrap();
11
12
1.49k
    let module2 = module2.finish();
13
1.49k
    if module1 == module2 {
14
1.49k
        return Ok(());
15
0
    }
16
0
    crate::log_wasm(&module1, &config);
17
0
    crate::log_wasm(&module2, &config);
18
0
    assert_eq!(module1, module2);
19
20
0
    Ok(())
21
1.49k
}
22
23
#[test]
24
fn smoke() {
25
    super::test::test_n_times(100, run);
26
}