refactoring of SortedStorages tests to make other changes easier (#23990)
This commit is contained in:
committed by
GitHub
parent
5a613e9b6e
commit
da844d7be5
@ -225,11 +225,19 @@ pub mod tests {
|
||||
storage_count: 0,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_for_tests(storages: &[&'a SnapshotStorage], slots: &[Slot]) -> Self {
|
||||
SortedStorages::new_with_slots(storages.iter().cloned().zip(slots.iter()), None, None)
|
||||
}
|
||||
|
||||
pub fn new_empty_for_tests() -> Self {
|
||||
SortedStorages::new(&[])
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_sorted_storages_range_iter() {
|
||||
let storages = SortedStorages::new_with_slots([].iter().zip([].iter()), None, None);
|
||||
let storages = SortedStorages::new_empty_for_tests();
|
||||
let check = |(slot, storages): (Slot, Option<&SnapshotStorage>)| {
|
||||
assert!(storages.is_none());
|
||||
slot
|
||||
@ -253,8 +261,7 @@ pub mod tests {
|
||||
|
||||
// only item is slot 3
|
||||
let s1 = Vec::new();
|
||||
let storages =
|
||||
SortedStorages::new_with_slots([&s1].into_iter().zip([&3].into_iter()), None, None);
|
||||
let storages = SortedStorages::new_for_tests(&[&s1], &[3]);
|
||||
let check = |(slot, storages): (Slot, Option<&SnapshotStorage>)| {
|
||||
assert!(
|
||||
(slot != 3) ^ storages.is_some(),
|
||||
@ -291,11 +298,7 @@ pub mod tests {
|
||||
// items in slots 2 and 4
|
||||
let s2 = Vec::with_capacity(2);
|
||||
let s4 = Vec::with_capacity(4);
|
||||
let storages = SortedStorages::new_with_slots(
|
||||
[&s2, &s4].into_iter().zip([&2, &4].into_iter()),
|
||||
None,
|
||||
None,
|
||||
);
|
||||
let storages = SortedStorages::new_for_tests(&[&s2, &s4], &[2, 4]);
|
||||
let check = |(slot, storages): (Slot, Option<&SnapshotStorage>)| {
|
||||
assert!(
|
||||
(slot != 2 && slot != 4)
|
||||
@ -342,16 +345,12 @@ pub mod tests {
|
||||
#[test]
|
||||
#[should_panic(expected = "slots are not unique")]
|
||||
fn test_sorted_storages_duplicate_slots() {
|
||||
SortedStorages::new_with_slots(
|
||||
[Vec::new(), Vec::new()].iter().zip([0, 0].iter()),
|
||||
None,
|
||||
None,
|
||||
);
|
||||
SortedStorages::new_for_tests(&[&Vec::new(), &Vec::new()], &[0, 0]);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_sorted_storages_none() {
|
||||
let result = SortedStorages::new_with_slots([].iter().zip([].iter()), None, None);
|
||||
let result = SortedStorages::new_empty_for_tests();
|
||||
assert_eq!(result.range, Range::default());
|
||||
assert_eq!(result.slot_count, 0);
|
||||
assert_eq!(result.storages.len(), 0);
|
||||
@ -363,8 +362,8 @@ pub mod tests {
|
||||
let vec = vec![];
|
||||
let vec_check = vec.clone();
|
||||
let slot = 4;
|
||||
let vecs = [vec];
|
||||
let result = SortedStorages::new_with_slots(vecs.iter().zip([slot].iter()), None, None);
|
||||
let vecs = [&vec];
|
||||
let result = SortedStorages::new_for_tests(&vecs, &[slot]);
|
||||
assert_eq!(
|
||||
result.range,
|
||||
Range {
|
||||
@ -382,8 +381,8 @@ pub mod tests {
|
||||
let vec = vec![];
|
||||
let vec_check = vec.clone();
|
||||
let slots = [4, 7];
|
||||
let vecs = [vec.clone(), vec];
|
||||
let result = SortedStorages::new_with_slots(vecs.iter().zip(slots.iter()), None, None);
|
||||
let vecs = [&vec, &vec];
|
||||
let result = SortedStorages::new_for_tests(&vecs, &slots);
|
||||
assert_eq!(
|
||||
result.range,
|
||||
Range {
|
||||
|
Reference in New Issue
Block a user