diff options
author | Daniil Baturin <daniil@baturin.org> | 2015-06-03 13:51:25 +0600 |
---|---|---|
committer | Daniil Baturin <daniil@baturin.org> | 2015-06-03 13:51:25 +0600 |
commit | 74132f616269e0de282354dec602d494455da4dc (patch) | |
tree | b7584be9eaef6b5c275ac81dafe3ac7e079a577a /test | |
parent | cfb1d2c4385554325e9e23ab43745d5d8fc4e7e9 (diff) | |
download | vyconf-74132f616269e0de282354dec602d494455da4dc.tar.gz vyconf-74132f616269e0de282354dec602d494455da4dc.zip |
Make tree insert position-aware.
Make insertion at the beginning default behaviour.
Implement insertion at the end.
Diffstat (limited to 'test')
-rw-r--r-- | test/vytree_test.ml | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/test/vytree_test.ml b/test/vytree_test.ml index 24a6d1e..86a6269 100644 --- a/test/vytree_test.ml +++ b/test/vytree_test.ml @@ -21,8 +21,8 @@ let test_insert_immediate_child test_ctxt = assert_equal (children_of_node node') [make () "foo"] -(* Inserting one child after another adds it to the - end of the children list *) +(* Inserting one child after another works. + The default behaviour is to insert new items at the beginning. *) let test_insert_multiple_children test_ctxt = let node = make () "root" in let node' = insert node ["foo"] () in @@ -47,6 +47,14 @@ let test_insert_duplicate_child test_ctxt = let node = insert node ["foo"] () in assert_raises Duplicate_child (fun () -> insert node ["foo"] ()) +(* Inserting a child at the end works *) +let test_insert_multiple_children_end test_ctxt = + let node = make () "root" in + let node = insert node ["foo"] () in + let node = insert ~position:End node ["bar"] () in + assert_equal (children_of_node node) + [make () "foo"; make () "bar"] + (* list_children correctly returns a list of children names *) let test_list_children test_ctxt = let node = make () "root" in @@ -126,6 +134,7 @@ let suite = "test_insert_multiple_children" >:: test_insert_multiple_children; "test_insert_multi_level" >:: test_insert_multi_level; "test_insert_duplicate_child" >:: test_insert_duplicate_child; + "test_insert_multiple_children_end" >:: test_insert_multiple_children_end; "test_list_children" >:: test_list_children; "test_delete_immediate_child" >:: test_delete_immediate_child; "test_delete_multi_level" >:: test_delete_multi_level; |