#![cfg(not(debug_assertions))]
use kevy_bench::{bench, black_box};
use kevy_hash::{FxHasher, KevyHash};
use std::hash::Hasher;
#[test]
fn kevy_hash_bytes_under_budget() {
let buf: Vec<u8> = (0..16u8).collect();
let s = bench(40, 100_000, || {
black_box(black_box(buf.as_slice()).kevy_hash());
});
assert!(
s.median_ns < 50,
"KevyHash bytes[16] median = {} ns, budget 50",
s.median_ns
);
}
#[test]
fn kevy_hash_u64_under_budget() {
let s = bench(40, 100_000, || {
black_box(black_box(0xdead_beef_u64).kevy_hash());
});
assert!(
s.median_ns < 20,
"KevyHash u64 median = {} ns, budget 20",
s.median_ns
);
}
#[test]
fn fxhasher_bytes_under_budget() {
let buf: Vec<u8> = (0..16u8).collect();
let s = bench(40, 100_000, || {
let mut h = FxHasher::default();
h.write(black_box(buf.as_slice()));
black_box(h.finish());
});
assert!(
s.median_ns < 70,
"FxHasher bytes[16] median = {} ns, budget 70",
s.median_ns
);
}