Rollup merge of #78538 - ssomers:btree_testing_rng, r=Mark-Simulacrum

BTreeMap: document a curious assumption in test cases

r? ```@Mark-Simulacrum```
This commit is contained in:
Yuki Okushi 2020-11-07 01:02:09 +09:00 committed by GitHub
commit 162f400328
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 3 additions and 0 deletions

View File

@ -1668,6 +1668,7 @@ create_append_test!(test_append_239, 239);
create_append_test!(test_append_1700, 1700);
fn rand_data(len: usize) -> Vec<(u32, u32)> {
assert!(len * 2 <= 70029); // from that point on numbers repeat
let mut rng = DeterministicRng::new();
Vec::from_iter((0..len).map(|_| (rng.next(), rng.next())))
}

View File

@ -49,6 +49,7 @@ impl DeterministicRng {
DeterministicRng { x: 0x193a6754, y: 0xa8a7d469, z: 0x97830e05, w: 0x113ba7bb }
}
/// Guarantees that the first 70029 results are unique.
fn next(&mut self) -> u32 {
let x = self.x;
let t = x ^ (x << 11);

View File

@ -687,6 +687,7 @@ fn test_first_last() {
}
fn rand_data(len: usize) -> Vec<u32> {
assert!(len <= 70029); // from that point on numbers repeat
let mut rng = DeterministicRng::new();
Vec::from_iter((0..len).map(|_| rng.next()))
}