Skip to content

Commit

Permalink
BTreeMap: document a curious assumption in test cases
Browse files Browse the repository at this point in the history
  • Loading branch information
ssomers committed Oct 29, 2020
1 parent a53fb30 commit be01d54
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 0 deletions.
1 change: 1 addition & 0 deletions library/alloc/src/collections/btree/map/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1661,6 +1661,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())))
}
Expand Down
1 change: 1 addition & 0 deletions library/alloc/src/collections/btree/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down
1 change: 1 addition & 0 deletions library/alloc/src/collections/btree/set/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -680,6 +680,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()))
}
Expand Down

0 comments on commit be01d54

Please sign in to comment.