proptest_arbitrary/_std/
hash.rs

1//! Arbitrary implementations for `std::hash`.
2
3use super::*;
4use std::hash::{BuildHasherDefault, Hasher};
5use std::collections::hash_map::{DefaultHasher, RandomState};
6
7// NOTE: don't impl for std::hash::SipHasher.. since deprecated!
8
9// over-constrain on purpose!
10arbitrary!([H: Default + Hasher] BuildHasherDefault<H>; default());
11
12generator!(DefaultHasher, default; RandomState, default);
13
14#[cfg(test)]
15mod test {
16    no_panic_test!(
17        default_hasher => DefaultHasher,
18        random_state => RandomState,
19        build_hasher_default => BuildHasherDefault<DefaultHasher>
20    );
21}