1 
2 extern crate rose_tree;
3 
4 use rose_tree::RoseTree;
5 
6 
7 #[test]
remove_node()8 fn remove_node() {
9 
10     let (mut tree, root) = RoseTree::<u32, u32>::new(0);
11     let a = tree.add_child(root, 1);
12     let _b = tree.add_child(a, 2);
13     let _c = tree.add_child(a, 3);
14     let _d = tree.add_child(a, 4);
15 
16     assert_eq!(Some(1), tree.remove_node(a));
17 
18     let mut children = tree.children(root);
19     assert_eq!(Some(2), children.next().map(|idx| tree[idx]));
20     assert_eq!(Some(3), children.next().map(|idx| tree[idx]));
21     assert_eq!(Some(4), children.next().map(|idx| tree[idx]));
22     assert_eq!(None, children.next());
23 }
24 
25 
26