Path: blob/main/crates/fuzzing/src/generators/wast_test.rs
1693 views
//! Arbitrarily choose a spec test from the list of known spec tests.12use arbitrary::{Arbitrary, Unstructured};34// See `build.rs` for how the `FILES` array is generated.5include!(concat!(env!("OUT_DIR"), "/wasttests.rs"));67/// A wast test from this repository.8#[derive(Debug)]9pub struct WastTest {10#[expect(missing_docs, reason = "self-describing field")]11pub test: wasmtime_test_util::wast::WastTest,12}1314impl<'a> Arbitrary<'a> for WastTest {15fn arbitrary(u: &mut Unstructured<'a>) -> arbitrary::Result<Self> {16log::debug!("{}", u.is_empty());17Ok(WastTest {18test: u.choose(FILES)?(),19})20}2122fn size_hint(_depth: usize) -> (usize, Option<usize>) {23(1, Some(std::mem::size_of::<usize>()))24}25}262728