Sat, 22 Nov 2025 19:16:27 +0100
fix that a particular tree test was never executed
bonus: the test was broken
| tests/test_tree.c | file | annotate | diff | comparison | revisions |
--- a/tests/test_tree.c Sat Nov 22 19:16:10 2025 +0100 +++ b/tests/test_tree.c Sat Nov 22 19:16:27 2025 +0100 @@ -1010,20 +1010,25 @@ } CX_TEST(test_tree_visitor_create_and_dispose) { - tree_node root; - tree_node child; + tree_node root = {0}; + tree_node child = {0}; + tree_node child2 = {0}; cx_tree_link(&root, &child, tree_node_layout); + cx_tree_link(&root, &child2, tree_node_layout); CX_TEST_DO { CxTreeVisitor iter = cx_tree_visitor(&root, tree_children(tree_node)); CX_TEST_ASSERT(iter.counter == 1); CX_TEST_ASSERT(iter.node == &root); CX_TEST_ASSERT(!iter.base.allow_remove); CX_TEST_ASSERT(!iter.base.remove); - CX_TEST_ASSERT(iter.queue_next != NULL); - CX_TEST_ASSERT(iter.queue_last != NULL); CX_TEST_ASSERT(iter.depth == 1); CX_TEST_ASSERT(iter.loc_next == offsetof(tree_node, next)); CX_TEST_ASSERT(iter.loc_children == offsetof(tree_node, children)); + cxIteratorNext(iter); + CX_TEST_ASSERT(iter.queue_next != NULL); + CX_TEST_ASSERT(iter.queue_last != NULL); + CX_TEST_ASSERT(iter.queue_next->node == &child2); + CX_TEST_ASSERT(iter.queue_last->node == &child2); cxTreeVisitorDispose(&iter); CX_TEST_ASSERT(iter.queue_next == NULL); CX_TEST_ASSERT(iter.queue_last == NULL); @@ -1910,7 +1915,7 @@ CX_TEST(test_tree_high_create_simple) { CX_TEST_DO { CxTree *tree = cxTreeCreateSimple( - cxDefaultAllocator, + NULL, // shall fall back to the default allocator tree_node_file_create_hl, tree_node_file_search, tree_node_file_search_data @@ -1940,7 +1945,7 @@ cx_tree_link(&root, &child2, tree_node_layout); cx_tree_link(&child1, &child3, tree_node_layout); CX_TEST_DO { - CxTree *tree = cxTreeCreateWrapped(cxDefaultAllocator, &root, tree_node_layout); + CxTree *tree = cxTreeCreateWrapped(NULL, &root, tree_node_layout); CX_TEST_ASSERT(tree->cl != NULL); CX_TEST_ASSERT(tree->allocator == cxDefaultAllocator); CX_TEST_ASSERT(tree->node_create == NULL); @@ -2352,6 +2357,7 @@ cx_test_register(suite, test_tree_iterator_subtree_enter_and_exit); cx_test_register(suite, test_tree_iterator_xml); cx_test_register(suite, test_tree_iterator_free_nodes); + cx_test_register(suite, test_tree_visitor_create_and_dispose); cx_test_register(suite, test_tree_visitor); cx_test_register(suite, test_tree_visitor_no_children); cx_test_register(suite, test_tree_visitor_no_branching);