feat(tree): started standard binary tree

This commit is contained in:
Jef Roosens 2023-01-19 22:23:19 +01:00
parent 7fb172c291
commit 2ecd2eae4d
Signed by: Jef Roosens
GPG key ID: B75D4F293C7052DB
6 changed files with 183 additions and 8 deletions

View file

@ -0,0 +1,32 @@
#include "acutest.h"
#include "vieter_tree.h"
#define TEST_SIZE(tree, size) \
TEST_CHECK(vieter_tree_size(tree) == size); \
TEST_MSG("Size: %zu", vieter_tree_size(tree))
void test_init() {
vieter_tree *tree = vieter_tree_init();
TEST_CHECK(tree != NULL);
TEST_SIZE(tree, 0);
/* vieter_tree_free(tree); */
}
void test_insert() {
vieter_tree *tree = vieter_tree_init();
for (uint64_t i = 0; i < 25; i++) {
TEST_CHECK(vieter_tree_insert(tree, i, NULL) == vieter_tree_ok);
}
void *out;
for (uint64_t i = 0; i < 25; i++) {
TEST_CHECK(vieter_tree_insert(tree, i, NULL) == vieter_tree_already_present);
TEST_CHECK(vieter_tree_search(&out, tree, i) == vieter_tree_ok);
}
}
TEST_LIST = {
{NULL, NULL}
};