index 0488693d112d139afb935b333ab79941318cb739..9be5e0960821626be4e842350da7314723306015 100644 (file)
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#if HAVE_CONFIG_H
+# include "config.h"
+#endif
+
#include "utils/avltree.h"
-#include "libsysdb_test.h"
+#include "testutils.h"
#include <check.h>
static void
setup(void)
{
- tree = sdb_avltree_create(NULL);
+ tree = sdb_avltree_create();
fail_unless(tree != NULL,
"sdb_avltree_create() = NULL; expected AVL-tree object");
} /* setup */
SDB_OBJECT_STATIC("a"),
};
+static char *unused_names[] = { "x", "y", "z" };
+
static void
populate(void)
{
}
END_TEST
+START_TEST(test_lookup)
+{
+ size_t i;
+
+ populate();
+
+ for (i = 0; i < SDB_STATIC_ARRAY_LEN(test_data); ++i) {
+ sdb_object_t *obj;
+
+ obj = sdb_avltree_lookup(tree, test_data[i].name);
+ fail_unless(obj != NULL,
+ "sdb_avltree_lookup(<tree>, %s) = NULL; "
+ "expected: <obj>", test_data[i].name);
+ fail_unless(obj == &test_data[i],
+ "sdb_avltree_lookup(<tree>, %s) = %p (%s); "
+ "expected: %p, (%s)", test_data[i].name, obj, obj->name,
+ &test_data[i], test_data[i].name);
+ }
+
+ for (i = 0; i < SDB_STATIC_ARRAY_LEN(unused_names); ++i) {
+ sdb_object_t *obj;
+
+ obj = sdb_avltree_lookup(tree, unused_names[i]);
+ fail_unless(obj == NULL,
+ "sdb_avltree_lookup(<tree>, %s) = %p (%s); "
+ "expected: NULL", unused_names[i],
+ obj, obj ? obj->name : "<nil>");
+ }
+}
+END_TEST
+
START_TEST(test_iter)
{
sdb_avltree_iter_t *iter;
}
END_TEST
-Suite *
-util_avltree_suite(void)
+TEST_MAIN("utils::avltree")
{
- Suite *s = suite_create("utils::avltree");
- TCase *tc;
-
- tc = tcase_create("core");
+ TCase *tc = tcase_create("core");
tcase_add_checked_fixture(tc, setup, teardown);
tcase_add_test(tc, test_null);
tcase_add_test(tc, test_insert);
+ tcase_add_test(tc, test_lookup);
tcase_add_test(tc, test_iter);
- suite_add_tcase(s, tc);
-
- return s;
-} /* util_avltree_suite */
+ ADD_TCASE(tc);
+}
+TEST_MAIN_END
/* vim: set tw=78 sw=4 ts=4 noexpandtab : */