pub mod btree;
pub mod int64_btree;
pub use btree::BTree;
pub use int64_btree::Int64BTree;
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_btree_basic() {
let mut tree: BTree<i64, String> = BTree::new();
tree.insert(5, "five".to_string());
tree.insert(3, "three".to_string());
tree.insert(7, "seven".to_string());
assert_eq!(tree.size(), 3);
assert_eq!(tree.search(&5), Some(&"five".to_string()));
assert_eq!(tree.search(&3), Some(&"three".to_string()));
assert_eq!(tree.search(&7), Some(&"seven".to_string()));
assert_eq!(tree.search(&1), None);
}
#[test]
fn test_int64_btree_basic() {
let mut tree: Int64BTree<String> = Int64BTree::new();
tree.insert(5, "five".to_string());
tree.insert(3, "three".to_string());
tree.insert(7, "seven".to_string());
assert_eq!(tree.size(), 3);
assert_eq!(tree.search(5), Some(&"five".to_string()));
assert_eq!(tree.search(3), Some(&"three".to_string()));
assert_eq!(tree.search(7), Some(&"seven".to_string()));
assert_eq!(tree.search(1), None);
}
}