aprender_contracts_cli/commands/fuzz.rs
1use std::path::Path;
2
3use provable_contracts::fuzz_gen::generate_fuzz_target;
4use provable_contracts::schema::parse_contract;
5
6pub fn run(path: &Path) -> Result<(), Box<dyn std::error::Error>> {
7 let contract = parse_contract(path)?;
8 let stem = path
9 .file_stem()
10 .and_then(|s| s.to_str())
11 .unwrap_or("unknown");
12
13 let output = generate_fuzz_target(&contract, stem);
14 print!("{output}");
15
16 Ok(())
17}