summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJuan Pablo Ugarte <juanpablougarte@gmail.com>2020-08-01 14:44:34 -0300
committerJuan Pablo Ugarte <juanpablougarte@gmail.com>2020-08-05 19:37:19 -0300
commit3236ee4ce14242ba88ed984191b932a2639447e2 (patch)
treeddf23ec1915ef527dc1c30939b3843a4a7b8ca0e /tests
parenta6f88f7441a70d3762c7d84e4966acaebd9f0945 (diff)
downloadglade-3236ee4ce14242ba88ed984191b932a2639447e2.tar.gz
Tests: add more add-child tests
Add test case for the following classes GTK_TYPE_FILE_CHOOSER_BUTTON GTK_TYPE_OFFSCREEN_WINDOW GTK_TYPE_APPLICATION_WINDOW GTK_TYPE_ASPECT_FRAME GTK_TYPE_STACK GTK_TYPE_REVEALER GTK_TYPE_POPOVER GTK_TYPE_HEADER_BAR GTK_TYPE_ACTION_BAR GTK_TYPE_SEARCH_BAR GTK_TYPE_SCROLLED_WINDOW GTK_TYPE_LIST_BOX GTK_TYPE_FLOW_BOX
Diffstat (limited to 'tests')
-rw-r--r--tests/add-child.c49
1 files changed, 25 insertions, 24 deletions
diff --git a/tests/add-child.c b/tests/add-child.c
index 010430f5..451a94b3 100644
--- a/tests/add-child.c
+++ b/tests/add-child.c
@@ -24,14 +24,6 @@ ignore_gvfs_warning (const gchar *log_domain,
return TRUE;
}
-static gboolean
-main_loop_quit_cb (gpointer data)
-{
- gtk_main_quit ();
-
- return FALSE;
-}
-
static void
check_finalized (gpointer data,
GObject *where_the_object_was)
@@ -75,19 +67,6 @@ test_add_child (gconstpointer data)
if (test->func)
test->func (parent, child);
- /* filechoosers hold a reference until an async operation is complete */
- if (GTK_IS_FILE_CHOOSER (parent) || GTK_IS_FILE_CHOOSER (child))
- {
- g_timeout_add (2000, main_loop_quit_cb, NULL);
- gtk_main();
- }
- /* Our plugin code adds an idle when cell renderers are created */
- else if (GTK_IS_CELL_RENDERER (child))
- {
- g_timeout_add (50, main_loop_quit_cb, NULL);
- gtk_main();
- }
-
/* Unreffing the parent should finalize the parent and child runtime objects */
g_object_weak_ref (G_OBJECT (gparent), check_finalized, &gparent_finalized);
g_object_weak_ref (G_OBJECT (gchild), check_finalized, &gchild_finalized);
@@ -126,7 +105,8 @@ static void
assert_widget_parented (GObject *parent,
GObject *child)
{
- g_assert_true (gtk_widget_get_parent (GTK_WIDGET (child)) == GTK_WIDGET (parent));
+ g_assert_true (gtk_widget_get_parent (GTK_WIDGET (child)) == GTK_WIDGET (parent) ||
+ G_OBJECT (gtk_widget_get_ancestor (GTK_WIDGET (child), G_OBJECT_TYPE (parent))) == parent);
}
static void
@@ -194,8 +174,7 @@ add_child_widgets (GType parent_type)
add_test (parent_type, GTK_TYPE_FONT_BUTTON, assert_widget_parented);
add_test (parent_type, GTK_TYPE_COLOR_BUTTON, assert_widget_parented);
- /* FIXME: FileChooserButton leaks a GTask which will crash in the following test */
- /* add_test (parent_type, GTK_TYPE_FILE_CHOOSER_BUTTON, assert_widget_parented); */
+ add_test (parent_type, GTK_TYPE_FILE_CHOOSER_BUTTON, assert_widget_parented);
add_test (parent_type, GTK_TYPE_APP_CHOOSER_BUTTON, assert_widget_parented);
add_test (parent_type, GTK_TYPE_TEXT_VIEW, assert_widget_parented);
add_test (parent_type, GTK_TYPE_TREE_VIEW, assert_widget_parented);
@@ -247,9 +226,13 @@ main (int argc,
/* Normal GtkContainer / GtkWidget parenting */
add_child_widgets (GTK_TYPE_WINDOW);
+ add_child_widgets (GTK_TYPE_OFFSCREEN_WINDOW);
+ add_child_widgets (GTK_TYPE_APPLICATION_WINDOW);
add_child_widgets (GTK_TYPE_BOX);
add_child_widgets (GTK_TYPE_GRID);
add_child_widgets (GTK_TYPE_NOTEBOOK);
+ //add_child_widgets (GTK_TYPE_FRAME);
+ add_child_widgets (GTK_TYPE_ASPECT_FRAME);
add_child_widgets (GTK_TYPE_OVERLAY);
add_child_widgets (GTK_TYPE_PANED);
add_child_widgets (GTK_TYPE_BUTTON_BOX);
@@ -259,6 +242,24 @@ main (int argc,
add_child_widgets (GTK_TYPE_EXPANDER);
add_child_widgets (GTK_TYPE_VIEWPORT);
add_child_widgets (GTK_TYPE_ALIGNMENT);
+ add_child_widgets (GTK_TYPE_STACK);
+ add_child_widgets (GTK_TYPE_REVEALER);
+ add_child_widgets (GTK_TYPE_POPOVER);
+ add_child_widgets (GTK_TYPE_HEADER_BAR);
+ add_child_widgets (GTK_TYPE_ACTION_BAR);
+ add_child_widgets (GTK_TYPE_SEARCH_BAR);
+ //add_child_widgets (GTK_TYPE_POPOVER_MENU);
+
+ /* Scrolled window */
+ add_test (GTK_TYPE_SCROLLED_WINDOW, GTK_TYPE_ICON_VIEW, assert_widget_parented);
+ add_test (GTK_TYPE_SCROLLED_WINDOW, GTK_TYPE_LAYOUT, assert_widget_parented);
+ add_test (GTK_TYPE_SCROLLED_WINDOW, GTK_TYPE_TEXT_VIEW, assert_widget_parented);
+ add_test (GTK_TYPE_SCROLLED_WINDOW, GTK_TYPE_TOOL_PALETTE, assert_widget_parented);
+ add_test (GTK_TYPE_SCROLLED_WINDOW, GTK_TYPE_TREE_VIEW, assert_widget_parented);
+ add_test (GTK_TYPE_SCROLLED_WINDOW, GTK_TYPE_VIEWPORT, assert_widget_parented);
+
+ add_test (GTK_TYPE_LIST_BOX, GTK_TYPE_LIST_BOX_ROW, assert_widget_parented);
+ add_test (GTK_TYPE_FLOW_BOX, GTK_TYPE_FLOW_BOX_CHILD, assert_widget_parented);
/* Actions */
add_test (GTK_TYPE_ACTION_GROUP, GTK_TYPE_ACTION, NULL);