diff options
author | Christian Dywan <christian@twotoasts.de> | 2008-10-14 12:33:00 +0000 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2016-06-05 22:15:00 -0400 |
commit | b97c490b8761a165c995b169e4f29e7fd572e288 (patch) | |
tree | 926f59bc7028221f3d248338f59d64ea08827f34 /testsuite | |
parent | 321ddb8697a22cbff67979de9e838b5233c546de (diff) | |
download | gtk+-b97c490b8761a165c995b169e4f29e7fd572e288.tar.gz |
object test: Also test object type properties
Old patch found in bugzilla, it still applies and doesn't
cause the test to fail.
https://bugzilla.gnome.org/show_bug.cgi?id=556254
Diffstat (limited to 'testsuite')
-rw-r--r-- | testsuite/gtk/object.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/testsuite/gtk/object.c b/testsuite/gtk/object.c index 2da5bdceb3..6bdcd73864 100644 --- a/testsuite/gtk/object.c +++ b/testsuite/gtk/object.c @@ -63,6 +63,7 @@ list_ignore_properties (gboolean buglist) { "GtkCellView", "background", (void*) "", }, /* "" is not a valid background color */ { "GtkColorButton", "color", (void*) NULL, }, /* not a valid boxed color */ { "GtkInputDialog", "has-separator", (void*) MATCH_ANY_VALUE, }, /* property disabled */ + { "GtkInvisible", "screen", (void*) MATCH_ANY_VALUE }, /* cannot create GdkScreen */ { "GtkMessageDialog", "has-separator", (void*) MATCH_ANY_VALUE, }, /* property disabled */ { "GtkFontSelectionDialog", "has-separator", (void*) MATCH_ANY_VALUE, }, /* property disabled */ { "GtkColorSelectionDialog","has-separator", (void*) MATCH_ANY_VALUE, }, /* property disabled */ @@ -80,6 +81,8 @@ list_ignore_properties (gboolean buglist) { "GtkRecentChooserMenu", "select-multiple", (void*) MATCH_ANY_VALUE }, /* property disabled */ { "GtkTextView", "overwrite", (void*) MATCH_ANY_VALUE }, /* needs text buffer */ { "GtkToolbar", "icon-size", (void*) GTK_ICON_SIZE_INVALID }, + { "GtkTreeView", "expander-column", (void*) MATCH_ANY_VALUE }, /* assertion list != NULL */ + { "GtkWindow", "screen", (void*) MATCH_ANY_VALUE }, /* cannot create GdkScreen */ { NULL, NULL, NULL } }; /* properties suspected to be Gdk/Gtk+ bugs */ @@ -162,12 +165,27 @@ pspec_select_value (GParamSpec *pspec, else if (dvalue <= -1) g_value_set_flags (value, fspec->flags_class->values[g_test_rand_int_range (0, fspec->flags_class->n_values)].value); } + else if (G_IS_PARAM_SPEC_OBJECT (pspec)) + { + gpointer object = NULL; + if (!G_TYPE_IS_ABSTRACT (pspec->value_type) && + !G_TYPE_IS_INTERFACE (pspec->value_type)) + { + if (g_type_is_a (pspec->value_type, GDK_TYPE_PIXBUF)) + object = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, 32, 32); + else if (g_type_is_a (pspec->value_type, GDK_TYPE_PIXBUF_ANIMATION)) + object = gdk_pixbuf_simple_anim_new (32, 32, 15); + else + object = g_object_new (pspec->value_type, NULL); + g_object_ref_sink (object); + g_value_take_object (value, object); + } + } /* unimplemented: * G_IS_PARAM_SPEC_PARAM * G_IS_PARAM_SPEC_BOXED * G_IS_PARAM_SPEC_POINTER * G_IS_PARAM_SPEC_VALUE_ARRAY - * G_IS_PARAM_SPEC_OBJECT */ } |