diff options
author | Daniil Baturin <daniil@baturin.org> | 2015-02-27 23:17:20 +0600 |
---|---|---|
committer | Daniil Baturin <daniil@baturin.org> | 2015-02-27 23:17:20 +0600 |
commit | d32b48829184f54cee11856cff65b4c8d5122f97 (patch) | |
tree | 8e402ccf8bbd154c55fcb342bf94938b8e8604f9 | |
parent | e28406576c50a4814fb9254fefed11292dfedb18 (diff) | |
download | vyconf-d32b48829184f54cee11856cff65b4c8d5122f97.tar.gz vyconf-d32b48829184f54cee11856cff65b4c8d5122f97.zip |
Add some tests for delete_child.
-rw-r--r-- | test/vyconf_tree_test.ml | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/test/vyconf_tree_test.ml b/test/vyconf_tree_test.ml index b021cf0..cd60976 100644 --- a/test/vyconf_tree_test.ml +++ b/test/vyconf_tree_test.ml @@ -53,6 +53,21 @@ let test_list_children test_ctxt = let node'' = insert_child () node' ["bar"] () in assert_equal (list_children node'') ["foo"; "bar"] +(* Deleting a child, well, deletes it *) +let test_delete_immediate_child test_ctxt = + let node = make "root" () in + let node' = insert_child () node ["foo"] () in + let node'' = delete_child node' ["foo"] in + assert_equal node node'' + +(* Deleting a child at multi-level path works *) +let test_delete_multi_level test_ctxt = + let node = make "root" () in + let node' = insert_child () node ["foo"; "bar"] () in + let foo_node = insert_child () node ["foo"] () in + let node'' = delete_child node' ["foo"; "bar"] in + assert_equal node'' foo_node + let suite = "VyConf tree tests" >::: [ "test_make_node" >:: test_make_node; @@ -61,6 +76,8 @@ let suite = "test_insert_multi_level" >:: test_insert_multi_level; "test_insert_duplicate_child" >:: test_insert_duplicate_child; "test_list_children" >:: test_list_children; + "test_delete_immediate_child" >:: test_delete_immediate_child; + "test_delete_multi_level" >:: test_delete_multi_level ] let () = |