summaryrefslogtreecommitdiff
path: root/testsuite/a11y
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2014-07-30 23:11:17 +0200
committerMatthias Clasen <mclasen@redhat.com>2014-07-30 23:14:49 +0200
commita6b8800531a2aec419fdc693abeb422ce08153a7 (patch)
tree1997b0fedb7dbf6b699e3308632d84d455f9d47c /testsuite/a11y
parent2b0ae4bad358a467da05cf0e16acb2adf3e6a1c1 (diff)
downloadgtk+-a6b8800531a2aec419fdc693abeb422ce08153a7.tar.gz
Add a test for popover accessible parents
This tests the fix in the previous commit.
Diffstat (limited to 'testsuite/a11y')
-rw-r--r--testsuite/a11y/Makefile.am3
-rw-r--r--testsuite/a11y/a11ymisc.test.in4
-rw-r--r--testsuite/a11y/misc.c59
3 files changed, 66 insertions, 0 deletions
diff --git a/testsuite/a11y/Makefile.am b/testsuite/a11y/Makefile.am
index b921a37918..5762efa44a 100644
--- a/testsuite/a11y/Makefile.am
+++ b/testsuite/a11y/Makefile.am
@@ -37,6 +37,8 @@ TEST_PROGS += derive
TEST_PROGS += value
+TEST_PROGS += misc
+
# the focus test has no chance of working until
# all the idle handlers in gail are gone
#
@@ -95,6 +97,7 @@ test_in_files = \
a11yderive.test.in \
a11ytext.test.in \
a11yutil.test.in \
+ a11ymisc.test.in \
$(NULL)
EXTRA_DIST += $(test_in_files) $(testdata)
diff --git a/testsuite/a11y/a11ymisc.test.in b/testsuite/a11y/a11ymisc.test.in
new file mode 100644
index 0000000000..9de0253255
--- /dev/null
+++ b/testsuite/a11y/a11ymisc.test.in
@@ -0,0 +1,4 @@
+[Test]
+Exec=/bin/sh -c "env G_ENABLE_DIAGNOSTIC=0 @libexecdir@/installed-tests/gtk+/misc"
+Type=session
+
diff --git a/testsuite/a11y/misc.c b/testsuite/a11y/misc.c
new file mode 100644
index 0000000000..a6ae6cacd0
--- /dev/null
+++ b/testsuite/a11y/misc.c
@@ -0,0 +1,59 @@
+/*
+ * Copyright (C) 2011 Red Hat Inc.
+ *
+ * Author:
+ * Matthias Clasen <mclasen@redhat.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include <gtk/gtk.h>
+
+static void
+test_popover_parent (void)
+{
+ GtkWidget *w;
+ GtkWidget *p;
+ AtkObject *a;
+
+ g_test_bug ("733923");
+
+ w = gtk_entry_new ();
+
+ p = gtk_popover_new (NULL);
+ a = gtk_widget_get_accessible (p);
+
+ g_assert (a != NULL);
+ g_assert (atk_object_get_parent (a) == NULL);
+
+ gtk_popover_set_relative_to (GTK_POPOVER (p), w);
+
+ g_assert (atk_object_get_parent (a) != NULL);
+
+ gtk_widget_destroy (w);
+ gtk_widget_destroy (p);
+}
+
+int
+main (int argc, char *argv[])
+{
+ gtk_test_init (&argc, &argv, NULL);
+
+ g_test_bug_base ("http://bugzilla.gnome.org/");
+
+ g_test_add_func ("/popover/accessible-parent", test_popover_parent);
+
+ return g_test_run ();
+}
+