use kevy_embedded::{Config, Store};
fn main() {
let mut a = std::env::args().skip(1);
let dir = a.next().expect("dir");
let vsize: usize = a.next().and_then(|s| s.parse().ok()).unwrap_or(4096);
let n: u64 = a.next().and_then(|s| s.parse().ok()).unwrap_or(4_000_000);
let aof = a.next().is_none_or(|s| s != "0");
let cfg = if aof { Config::default().with_persist(dir) } else { Config::default() };
let store = Store::open(cfg).expect("open");
let val = vec![0x61u8; vsize];
let keys: Vec<Vec<u8>> = (0..200).map(|i| format!("k{i}").into_bytes()).collect();
for i in 0..n {
store.set(&keys[(i % 200) as usize], &val).expect("set");
}
println!("done {n} sets of {vsize}B");
}