Auto merge of #1134 - RalfJung:macos-hashmap, r=RalfJung

test macOS hashmap

With https://github.com/rust-lang/miri/pull/1130 landed, this should work now. Thanks @christianpoveda!

Fixes https://github.com/rust-lang/miri/issues/686
This commit is contained in:
bors 2019-12-31 11:19:26 +00:00
commit 86d7db4684

View File

@ -1,5 +1,8 @@
use std::collections::{self, HashMap};
use std::hash::{BuildHasherDefault, BuildHasher};
// macOS needs FS access for its HashMap:
// compile-flags: -Zmiri-disable-isolation
use std::collections::HashMap;
use std::hash::BuildHasher;
fn test_map<S: BuildHasher>(mut map: HashMap<i32, i32, S>) {
map.insert(0, 0);
@ -18,14 +21,8 @@ fn test_map<S: BuildHasher>(mut map: HashMap<i32, i32, S>) {
assert_eq!(map.values().fold(0, |x, y| x+y), num*(num-1)/2);
// TODO: Test Entry API, Iterators, ...
}
fn main() {
if cfg!(target_os = "macos") { // TODO: Implement libstd HashMap seeding for macOS (https://github.com/rust-lang/miri/issues/686).
// Until then, use a deterministic map.
test_map::<BuildHasherDefault<collections::hash_map::DefaultHasher>>(HashMap::default());
} else {
test_map(HashMap::new());
}
test_map(HashMap::new());
}