mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-11 23:16:14 +01:00
Move tree tests to the test framework
This commit is contained in:
parent
5123bc69e7
commit
953962d783
@ -105,6 +105,9 @@ list_LDADD = $(progs_ldadd)
|
|||||||
TEST_PROGS += slist
|
TEST_PROGS += slist
|
||||||
slist_LDADD = $(progs_ldadd)
|
slist_LDADD = $(progs_ldadd)
|
||||||
|
|
||||||
|
TEST_PROGS += tree
|
||||||
|
tree_LDADD = $(progs_ldadd)
|
||||||
|
|
||||||
if OS_UNIX
|
if OS_UNIX
|
||||||
|
|
||||||
# some testing of gtester funcitonality
|
# some testing of gtester funcitonality
|
||||||
|
@ -98,17 +98,14 @@ check_order (gpointer key,
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
test_tree_search (void)
|
||||||
int
|
|
||||||
main (int argc,
|
|
||||||
char *argv[])
|
|
||||||
{
|
{
|
||||||
gint i;
|
gint i;
|
||||||
GTree *tree;
|
GTree *tree;
|
||||||
gboolean removed;
|
gboolean removed;
|
||||||
char c, d;
|
gchar c;
|
||||||
char *p;
|
gchar *p, *d;
|
||||||
|
|
||||||
tree = g_tree_new (my_compare);
|
tree = g_tree_new (my_compare);
|
||||||
|
|
||||||
@ -117,8 +114,8 @@ main (int argc,
|
|||||||
|
|
||||||
g_tree_foreach (tree, my_traverse, NULL);
|
g_tree_foreach (tree, my_traverse, NULL);
|
||||||
|
|
||||||
g_assert (g_tree_nnodes (tree) == strlen (chars));
|
g_assert_cmpint (g_tree_nnodes (tree), ==, strlen (chars));
|
||||||
g_assert (g_tree_height (tree) == 6);
|
g_assert_cmpint (g_tree_height (tree), ==, 6);
|
||||||
|
|
||||||
p = chars;
|
p = chars;
|
||||||
g_tree_foreach (tree, check_order, &p);
|
g_tree_foreach (tree, check_order, &p);
|
||||||
@ -131,12 +128,12 @@ main (int argc,
|
|||||||
|
|
||||||
c = '\0';
|
c = '\0';
|
||||||
removed = g_tree_remove (tree, &c);
|
removed = g_tree_remove (tree, &c);
|
||||||
g_assert (removed == FALSE);
|
g_assert (!removed);
|
||||||
|
|
||||||
g_tree_foreach (tree, my_traverse, NULL);
|
g_tree_foreach (tree, my_traverse, NULL);
|
||||||
|
|
||||||
g_assert (g_tree_nnodes (tree) == strlen (chars2));
|
g_assert_cmpint (g_tree_nnodes (tree), ==, strlen (chars2));
|
||||||
g_assert (g_tree_height (tree) == 6);
|
g_assert_cmpint (g_tree_height (tree), ==, 6);
|
||||||
|
|
||||||
p = chars2;
|
p = chars2;
|
||||||
g_tree_foreach (tree, check_order, &p);
|
g_tree_foreach (tree, check_order, &p);
|
||||||
@ -150,6 +147,8 @@ main (int argc,
|
|||||||
c = '0';
|
c = '0';
|
||||||
p = g_tree_lookup (tree, &c);
|
p = g_tree_lookup (tree, &c);
|
||||||
g_assert (p && *p == c);
|
g_assert (p && *p == c);
|
||||||
|
g_assert (g_tree_lookup_extended (tree, &c, (gpointer *)&d, (gpointer *)&p));
|
||||||
|
g_assert (c == *d && c == *p);
|
||||||
|
|
||||||
c = 'A';
|
c = 'A';
|
||||||
p = g_tree_lookup (tree, &c);
|
p = g_tree_lookup (tree, &c);
|
||||||
@ -203,8 +202,16 @@ main (int argc,
|
|||||||
p = g_tree_search (tree, my_search, &c);
|
p = g_tree_search (tree, my_search, &c);
|
||||||
g_assert (p == NULL);
|
g_assert (p == NULL);
|
||||||
|
|
||||||
|
|
||||||
g_tree_destroy (tree);
|
g_tree_destroy (tree);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
test_tree_remove (void)
|
||||||
|
{
|
||||||
|
GTree *tree;
|
||||||
|
char c, d;
|
||||||
|
gint i;
|
||||||
|
gboolean removed;
|
||||||
|
|
||||||
tree = g_tree_new_full ((GCompareDataFunc)my_compare, NULL,
|
tree = g_tree_new_full ((GCompareDataFunc)my_compare, NULL,
|
||||||
my_key_destroy,
|
my_key_destroy,
|
||||||
@ -241,6 +248,39 @@ main (int argc,
|
|||||||
g_assert (destroyed_key == NULL);
|
g_assert (destroyed_key == NULL);
|
||||||
g_assert (destroyed_value == NULL);
|
g_assert (destroyed_value == NULL);
|
||||||
|
|
||||||
return 0;
|
g_tree_destroy (tree);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
test_tree_destroy (void)
|
||||||
|
{
|
||||||
|
GTree *tree;
|
||||||
|
gint i;
|
||||||
|
|
||||||
|
tree = g_tree_new (my_compare);
|
||||||
|
|
||||||
|
for (i = 0; chars[i]; i++)
|
||||||
|
g_tree_insert (tree, &chars[i], &chars[i]);
|
||||||
|
|
||||||
|
g_assert_cmpint (g_tree_nnodes (tree), ==, strlen (chars));
|
||||||
|
|
||||||
|
g_tree_ref (tree);
|
||||||
|
g_tree_destroy (tree);
|
||||||
|
|
||||||
|
g_assert_cmpint (g_tree_nnodes (tree), ==, 0);
|
||||||
|
|
||||||
|
g_tree_unref (tree);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
main (int argc, char *argv[])
|
||||||
|
{
|
||||||
|
g_test_init (&argc, &argv, NULL);
|
||||||
|
|
||||||
|
g_test_add_func ("/tree/search", test_tree_search);
|
||||||
|
g_test_add_func ("/tree/remove", test_tree_remove);
|
||||||
|
g_test_add_func ("/tree/destroy", test_tree_destroy);
|
||||||
|
|
||||||
|
return g_test_run ();
|
||||||
}
|
}
|
||||||
|
|
@ -114,7 +114,6 @@ test_programs = \
|
|||||||
$(spawn_test_win32_gui) \
|
$(spawn_test_win32_gui) \
|
||||||
thread-test \
|
thread-test \
|
||||||
threadpool-test \
|
threadpool-test \
|
||||||
tree-test \
|
|
||||||
type-test \
|
type-test \
|
||||||
unicode-caseconv \
|
unicode-caseconv \
|
||||||
unicode-encoding \
|
unicode-encoding \
|
||||||
@ -171,7 +170,6 @@ slice_threadinit_LDADD = $(thread_ldadd)
|
|||||||
spawn_test_LDADD = $(progs_ldadd)
|
spawn_test_LDADD = $(progs_ldadd)
|
||||||
thread_test_LDADD = $(thread_ldadd)
|
thread_test_LDADD = $(thread_ldadd)
|
||||||
threadpool_test_LDADD = $(thread_ldadd)
|
threadpool_test_LDADD = $(thread_ldadd)
|
||||||
tree_test_LDADD = $(progs_ldadd)
|
|
||||||
type_test_LDADD = $(progs_ldadd)
|
type_test_LDADD = $(progs_ldadd)
|
||||||
unicode_encoding_LDADD = $(progs_ldadd)
|
unicode_encoding_LDADD = $(progs_ldadd)
|
||||||
unicode_caseconv_LDADD = $(progs_ldadd)
|
unicode_caseconv_LDADD = $(progs_ldadd)
|
||||||
|
Loading…
Reference in New Issue
Block a user