# HG changeset patch # User Mike Becker # Date 1710974132 -3600 # Node ID a39e410a05e69f35e7806fe9010ce21fc6d94190 # Parent 71f4e0a13bb06b7f17c294b51dd1cd0b5e2055f8 add missing cxTreeVisitorDispose() test diff -r 71f4e0a13bb0 -r a39e410a05e6 tests/test_tree.c --- a/tests/test_tree.c Wed Mar 20 23:35:18 2024 +0100 +++ b/tests/test_tree.c Wed Mar 20 23:35:32 2024 +0100 @@ -509,6 +509,27 @@ cx_testing_allocator_destroy(&talloc); } +CX_TEST(test_tree_visitor_create_and_dispose) { + tree_node root; + tree_node child; + cx_tree_link(&root, &child, tree_node_layout); + CX_TEST_DO { + CxTreeVisitor iter = cx_tree_visitor(&root, tree_child_list); + CX_TEST_ASSERT(iter.counter == 1); + CX_TEST_ASSERT(iter.node == &root); + CX_TEST_ASSERT(!iter.base.mutating); + 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)); + cxTreeVisitorDispose(&iter); + CX_TEST_ASSERT(iter.queue_next == NULL); + CX_TEST_ASSERT(iter.queue_last == NULL); + } +} + CX_TEST(test_tree_visitor) { tree_node root = {0}; tree_node a = {0};