1ed8908efSJoel Dice #![no_main]
26cd35959SAlex Crichton #![allow(dead_code, reason = "fuzz-generation sometimes generates unused types")]
3ed8908efSJoel Dice 
4dd81e5a6SJamey Sharp use libfuzzer_sys::{arbitrary, fuzz_target};
5ed8908efSJoel Dice use wasmtime_fuzzing::oracles;
6ed8908efSJoel Dice 
7ed8908efSJoel Dice include!(concat!(env!("OUT_DIR"), "/static_component_api.rs"));
8ed8908efSJoel Dice 
target(input: &mut arbitrary::Unstructured) -> arbitrary::Result<()>9ed8908efSJoel Dice fn target(input: &mut arbitrary::Unstructured) -> arbitrary::Result<()> {
10ed8908efSJoel Dice     if input.arbitrary()? {
11ed8908efSJoel Dice         static_component_api_target(input)
12ed8908efSJoel Dice     } else {
13*5730c760SAlex Crichton         oracles::component_api::dynamic_component_api_target(input)
14ed8908efSJoel Dice     }
15ed8908efSJoel Dice }
16ed8908efSJoel Dice 
17ed8908efSJoel Dice fuzz_target!(|bytes: &[u8]| {
18*5730c760SAlex Crichton     let _ = target(&mut arbitrary::Unstructured::new(bytes));
19ed8908efSJoel Dice });
20