diff options
| author | Stein Somers <git@steinsomers.be> | 2021-01-23 15:25:56 +0100 |
|---|---|---|
| committer | Stein Somers <git@steinsomers.be> | 2021-02-09 11:21:42 +0100 |
| commit | 6d2247eac2256b3f6e8d10e3bc9c3b6068d74967 (patch) | |
| tree | 3303cef97d9701ac8e745354097da7a31581dcfc | |
| parent | f4008fe94935d05ffb3a48fc5b7149070bb45550 (diff) | |
| download | rust-6d2247eac2256b3f6e8d10e3bc9c3b6068d74967.tar.gz rust-6d2247eac2256b3f6e8d10e3bc9c3b6068d74967.zip | |
BTreeMap/BTreeSet: separate off code supporting tests
| -rw-r--r-- | library/alloc/src/collections/btree/map/tests.rs | 6 | ||||
| -rw-r--r-- | library/alloc/src/collections/btree/mod.rs | 30 | ||||
| -rw-r--r-- | library/alloc/src/collections/btree/set/tests.rs | 2 | ||||
| -rw-r--r-- | library/alloc/src/collections/btree/testing/mod.rs | 2 | ||||
| -rw-r--r-- | library/alloc/src/collections/btree/testing/ord_chaos.rs (renamed from library/alloc/src/collections/btree/map/tests/ord_chaos.rs) | 0 | ||||
| -rw-r--r-- | library/alloc/src/collections/btree/testing/rng.rs | 28 |
6 files changed, 34 insertions, 34 deletions
diff --git a/library/alloc/src/collections/btree/map/tests.rs b/library/alloc/src/collections/btree/map/tests.rs index 1993c6e047d..73607a2a638 100644 --- a/library/alloc/src/collections/btree/map/tests.rs +++ b/library/alloc/src/collections/btree/map/tests.rs @@ -1,4 +1,5 @@ -use super::super::{node, DeterministicRng}; +use super::super::testing::ord_chaos::{Cyclic3, Governed, Governor}; +use super::super::testing::rng::DeterministicRng; use super::Entry::{Occupied, Vacant}; use super::*; use crate::boxed::Box; @@ -15,9 +16,6 @@ use std::ops::RangeBounds; use std::panic::{catch_unwind, AssertUnwindSafe}; use std::sync::atomic::{AtomicUsize, Ordering::SeqCst}; -mod ord_chaos; -use ord_chaos::{Cyclic3, Governed, Governor}; - // Capacity of a tree with a single level, // i.e., a tree who's root is a leaf node at height 0. const NODE_CAPACITY: usize = node::CAPACITY; diff --git a/library/alloc/src/collections/btree/mod.rs b/library/alloc/src/collections/btree/mod.rs index cf91c17b511..421f842dab0 100644 --- a/library/alloc/src/collections/btree/mod.rs +++ b/library/alloc/src/collections/btree/mod.rs @@ -20,32 +20,4 @@ trait Recover<Q: ?Sized> { } #[cfg(test)] -/// XorShiftRng -struct DeterministicRng { - count: usize, - x: u32, - y: u32, - z: u32, - w: u32, -} - -#[cfg(test)] -impl DeterministicRng { - fn new() -> Self { - DeterministicRng { count: 0, x: 0x193a6754, y: 0xa8a7d469, z: 0x97830e05, w: 0x113ba7bb } - } - - /// Guarantees that each returned number is unique. - fn next(&mut self) -> u32 { - self.count += 1; - assert!(self.count <= 70029); - let x = self.x; - let t = x ^ (x << 11); - self.x = self.y; - self.y = self.z; - self.z = self.w; - let w_ = self.w; - self.w = w_ ^ (w_ >> 19) ^ (t ^ (t >> 8)); - self.w - } -} +mod testing; diff --git a/library/alloc/src/collections/btree/set/tests.rs b/library/alloc/src/collections/btree/set/tests.rs index 3762af7236a..9c6fb44af43 100644 --- a/library/alloc/src/collections/btree/set/tests.rs +++ b/library/alloc/src/collections/btree/set/tests.rs @@ -1,4 +1,4 @@ -use super::super::DeterministicRng; +use super::super::testing::rng::DeterministicRng; use super::*; use crate::vec::Vec; use std::cmp::Ordering; diff --git a/library/alloc/src/collections/btree/testing/mod.rs b/library/alloc/src/collections/btree/testing/mod.rs new file mode 100644 index 00000000000..03880e7014e --- /dev/null +++ b/library/alloc/src/collections/btree/testing/mod.rs @@ -0,0 +1,2 @@ +pub mod ord_chaos; +pub mod rng; diff --git a/library/alloc/src/collections/btree/map/tests/ord_chaos.rs b/library/alloc/src/collections/btree/testing/ord_chaos.rs index 96ce7c15790..96ce7c15790 100644 --- a/library/alloc/src/collections/btree/map/tests/ord_chaos.rs +++ b/library/alloc/src/collections/btree/testing/ord_chaos.rs diff --git a/library/alloc/src/collections/btree/testing/rng.rs b/library/alloc/src/collections/btree/testing/rng.rs new file mode 100644 index 00000000000..ecf543bee03 --- /dev/null +++ b/library/alloc/src/collections/btree/testing/rng.rs @@ -0,0 +1,28 @@ +/// XorShiftRng +pub struct DeterministicRng { + count: usize, + x: u32, + y: u32, + z: u32, + w: u32, +} + +impl DeterministicRng { + pub fn new() -> Self { + DeterministicRng { count: 0, x: 0x193a6754, y: 0xa8a7d469, z: 0x97830e05, w: 0x113ba7bb } + } + + /// Guarantees that each returned number is unique. + pub fn next(&mut self) -> u32 { + self.count += 1; + assert!(self.count <= 70029); + let x = self.x; + let t = x ^ (x << 11); + self.x = self.y; + self.y = self.z; + self.z = self.w; + let w_ = self.w; + self.w = w_ ^ (w_ >> 19) ^ (t ^ (t >> 8)); + self.w + } +} |
