use std::fs::read; use criterion::{criterion_group, criterion_main, Criterion}; use fluvio_protocol::Encoder; use fluvio_smartmodule::dataplane::smartmodule::SmartModuleInput; const EXAMPLE_WASM_FILE: &str = "fixtures/smartmodule.wasm"; fn bench_encode_smartmodule_encode(c: &mut Criterion) { let wasm_bytes: Vec = read(EXAMPLE_WASM_FILE).unwrap(); c.bench_function("encode wasm file", |b| { let smartmodule = SmartModuleInput::new(wasm_bytes.clone(), 0, 0); let mut dest = vec![]; b.iter(|| { smartmodule.encode(&mut dest, 0).unwrap(); }) }); } criterion_group!(benches, bench_encode_smartmodule_encode); criterion_main!(benches);