- Fixed rdtree traversers once more, a bug with initializing the queues was causing faulty results. Consider setting up more robust tests.

This commit is contained in:
2025-08-14 21:28:41 -04:00
parent 2535e1ac4b
commit 8bfb59cd20
2 changed files with 62 additions and 34 deletions

View File

@@ -35,7 +35,7 @@ inline void fennec_test_containers_rdtree() {
tree_t test;
constexpr size_t npos = rdtree<size_t>::npos;
constexpr size_t pre_order [] = { 1, 2, 4, 5, 3, 6 };
constexpr size_t in_order [] = { 4, 2, 5, 1, 3, 6 };
constexpr size_t in_order [] = { 4, 2, 5, 1, 6, 3 };
constexpr size_t post_order[] = { 4, 5, 2, 6, 3, 1 };
const size_t n = 50;
@@ -53,8 +53,14 @@ inline void fennec_test_containers_rdtree() {
assertf(next == rdtree<size_t>::npos || test.prev(next) == l, "Tree Construct Test Failed");
}
fennec_test_spacer(1);
test.erase(0);
fennec_test_run(test.empty(), true);
fennec_test_spacer(1);
size_t n1 = test.insert(npos, 0, 1);
size_t n2 = test.insert(n1, 0, 2);
size_t n3 = test.insert(n1, npos, 3);
@@ -94,6 +100,8 @@ inline void fennec_test_containers_rdtree() {
return traversal_control_continue;
});
fennec_test_spacer(1);
test.erase(0);
fennec_test_run(test.empty(), true);