mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-08-02 07:23:41 +02:00
committed by
Philip Withnall
parent
7bfd6278b9
commit
3dc62171eb
@@ -617,6 +617,34 @@ test_boxed_checksum (void)
|
||||
g_value_unset (&value);
|
||||
}
|
||||
|
||||
static gint
|
||||
treecmp (gconstpointer a, gconstpointer b)
|
||||
{
|
||||
return (a < b) ? -1 : (a > b);
|
||||
}
|
||||
|
||||
static void
|
||||
test_boxed_tree (void)
|
||||
{
|
||||
GTree *t, *t2;
|
||||
GValue value = G_VALUE_INIT;
|
||||
|
||||
g_value_init (&value, G_TYPE_TREE);
|
||||
g_assert_true (G_VALUE_HOLDS_BOXED (&value));
|
||||
|
||||
t = g_tree_new (treecmp);
|
||||
g_value_take_boxed (&value, t);
|
||||
|
||||
t2 = g_value_get_boxed (&value);
|
||||
g_assert_true (t == t2);
|
||||
|
||||
t2 = g_value_dup_boxed (&value);
|
||||
g_assert_true (t == t2); /* trees use ref/unref for copy/free */
|
||||
g_tree_unref (t2);
|
||||
|
||||
g_value_unset (&value);
|
||||
}
|
||||
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
{
|
||||
@@ -646,6 +674,7 @@ main (int argc, char *argv[])
|
||||
g_test_add_func ("/boxed/markup", test_boxed_markup);
|
||||
g_test_add_func ("/boxed/thread", test_boxed_thread);
|
||||
g_test_add_func ("/boxed/checksum", test_boxed_checksum);
|
||||
g_test_add_func ("/boxed/tree", test_boxed_tree);
|
||||
|
||||
return g_test_run ();
|
||||
}
|
||||
|
Reference in New Issue
Block a user