diff --git a/nexosim/src/executor.rs b/nexosim/src/executor.rs index 90f8884..b2d145c 100644 --- a/nexosim/src/executor.rs +++ b/nexosim/src/executor.rs @@ -173,7 +173,9 @@ mod tests { } impl Drop for RunOnDrop { fn drop(&mut self) { - self.drop_fn.take().map(|f| f()); + if let Some(f) = self.drop_fn.take() { + f() + } } } diff --git a/nexosim/src/util/indexed_priority_queue.rs b/nexosim/src/util/indexed_priority_queue.rs index 7b28ca5..c2d8967 100644 --- a/nexosim/src/util/indexed_priority_queue.rs +++ b/nexosim/src/util/indexed_priority_queue.rs @@ -649,14 +649,12 @@ mod tests { let delete_marked_fn = |queue: &mut IndexedPriorityQueue, shadow_queue: &mut BTreeMap<(u64, usize), u64>| { - let success = match marked.take() { - Some(delete_key) => Some(queue.extract(delete_key).is_some()), - None => None, - }; - let shadow_success = match shadow_marked.take() { - Some(delete_key) => Some(shadow_queue.remove(&delete_key).is_some()), - None => None, - }; + let success = marked + .take() + .map(|delete_key| queue.extract(delete_key).is_some()); + let shadow_success = shadow_marked + .take() + .map(|delete_key| shadow_queue.remove(&delete_key).is_some()); assert_eq!(success, shadow_success); };