Add (failing) (minimal) IndexedQueue (Rust) tests
This commit is contained in:
parent
57fdba96fe
commit
ebfce09c0e
1 changed files with 30 additions and 0 deletions
30
tests/indexed_binary_heap.rs
Normal file
30
tests/indexed_binary_heap.rs
Normal file
|
@ -0,0 +1,30 @@
|
|||
#[cfg(test)]
|
||||
mod tests {
|
||||
use pyority_queue::backing::indexed::{IndexedBacking, IndexedBinaryHeap};
|
||||
|
||||
#[test]
|
||||
fn test_indexed_binary_heap_manual_creation() {
|
||||
let mut heap = IndexedBinaryHeap::new();
|
||||
heap.set(4, 0.5);
|
||||
heap.set(-3, 0.01);
|
||||
heap.set(6, 0.9);
|
||||
heap.set(1, 0.2);
|
||||
assert_eq!(heap.len(), 4);
|
||||
assert_eq!(heap.pop(), Some(-3));
|
||||
assert_eq!(heap.pop(), Some(1));
|
||||
assert_eq!(heap.pop(), Some(4));
|
||||
assert_eq!(heap.pop(), Some(6));
|
||||
assert_eq!(heap.pop(), None);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_indexed_binary_heap_from_iter() {
|
||||
let mut heap = IndexedBinaryHeap::from_iter(vec![("c", 7), ("a", 3), ("b", 6), ("d", 9)]);
|
||||
assert_eq!(heap.len(), 4);
|
||||
assert_eq!(heap.pop(), Some("a"));
|
||||
assert_eq!(heap.pop(), Some("b"));
|
||||
assert_eq!(heap.pop(), Some("c"));
|
||||
assert_eq!(heap.pop(), Some("d"));
|
||||
assert_eq!(heap.pop(), None);
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue