in common/rusty_leveldb_sgx/src/version.rs [962:1054]
fn test_version_file_overlaps() {
let files_disjoint = [
new_file(1, &[2, 0, 0], 0, &[3, 0, 0], 1),
new_file(2, &[3, 0, 1], 0, &[4, 0, 0], 1),
new_file(3, &[4, 0, 1], 0, &[5, 0, 0], 1),
];
let files_joint = [
new_file(1, &[2, 0, 0], 0, &[3, 0, 0], 1),
new_file(2, &[2, 5, 0], 0, &[4, 0, 0], 1),
new_file(3, &[3, 5, 1], 0, &[5, 0, 0], 1),
];
let cmp = InternalKeyCmp(Rc::new(Box::new(DefaultCmp)));
assert!(some_file_overlaps_range(
&cmp,
&files_joint,
&[2, 5, 0],
&[3, 1, 0]
));
assert!(some_file_overlaps_range(
&cmp,
&files_joint,
&[2, 5, 0],
&[7, 0, 0]
));
assert!(some_file_overlaps_range(
&cmp,
&files_joint,
&[0, 0],
&[2, 0, 0]
));
assert!(some_file_overlaps_range(
&cmp,
&files_joint,
&[0, 0],
&[7, 0, 0]
));
assert!(!some_file_overlaps_range(
&cmp,
&files_joint,
&[0, 0],
&[0, 5]
));
assert!(!some_file_overlaps_range(
&cmp,
&files_joint,
&[6, 0],
&[7, 5]
));
assert!(some_file_overlaps_range_disjoint(
&cmp,
&files_disjoint,
&[2, 0, 1],
&[2, 5, 0]
));
assert!(some_file_overlaps_range_disjoint(
&cmp,
&files_disjoint,
&[3, 0, 1],
&[4, 9, 0]
));
assert!(some_file_overlaps_range_disjoint(
&cmp,
&files_disjoint,
&[2, 0, 1],
&[6, 5, 0]
));
assert!(some_file_overlaps_range_disjoint(
&cmp,
&files_disjoint,
&[0, 0, 1],
&[2, 5, 0]
));
assert!(some_file_overlaps_range_disjoint(
&cmp,
&files_disjoint,
&[0, 0, 1],
&[6, 5, 0]
));
assert!(!some_file_overlaps_range_disjoint(
&cmp,
&files_disjoint,
&[0, 0, 1],
&[0, 1]
));
assert!(!some_file_overlaps_range_disjoint(
&cmp,
&files_disjoint,
&[6, 0, 1],
&[7, 0, 1]
));
}