mirror of
https://github.com/tlsnotary/tlsn-utils.git
synced 2026-01-08 22:48:09 -05:00
fix(rangeset): default to 0 when candidate is None (#58)
This commit is contained in:
@@ -122,7 +122,7 @@ where
|
||||
for (i, (pos, item)) in others.iter().enumerate() {
|
||||
let cover = f(item).intersection(&uncovered).len();
|
||||
// If cover is non-empty or greater than the current candidate, update the candidate.
|
||||
if cover > candidate.as_ref().map_or(1, |c| c.cover) {
|
||||
if cover > candidate.as_ref().map_or(0, |c| c.cover) {
|
||||
candidate = Some(Candidate {
|
||||
i,
|
||||
pos: *pos,
|
||||
@@ -283,4 +283,16 @@ mod tests {
|
||||
let result = query.cover(others.iter());
|
||||
assert!(result.is_none());
|
||||
}
|
||||
|
||||
#[test]
|
||||
#[allow(clippy::single_range_in_vec_init)]
|
||||
fn test_length_one_subset() {
|
||||
let query: RangeSet<i32> = RangeSet::from(vec![1..2]);
|
||||
|
||||
// A subset with a range of length 1.
|
||||
let others = [RangeSet::from(vec![1..2])];
|
||||
|
||||
let result = query.cover(others.iter());
|
||||
assert!(result.is_some());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user