testsuite/a11y: Fix missing glib schemas
authorChristoph Reiter <creiter@src.gnome.org>
Thu, 15 Feb 2018 10:44:04 +0000 (11:44 +0100)
committerChristoph Reiter <creiter@src.gnome.org>
Thu, 15 Feb 2018 11:30:57 +0000 (12:30 +0100)
The a11y tests complain that org.gtk.Settings schemas are missing
and fail. This copies the code to build and include the schemas from
the reftests testsuite.

testsuite/a11y/Makefile.am
testsuite/a11y/accessibility-dump.c

index 9fd1fc054d915f7835181cd985f6017d1f9f0ee5..c51e55eec35f749e35c0acd9f18fd15f2f6ce2c9 100644 (file)
@@ -101,6 +101,22 @@ test_in_files = \
 
 EXTRA_DIST += $(test_in_files) $(testdata)
 
+GTK_GSETTINGS_SCHEMAS = \
+       $(top_srcdir)/gtk/org.gtk.Settings.ColorChooser.gschema.xml \
+       $(top_srcdir)/gtk/org.gtk.Settings.FileChooser.gschema.xml \
+       $(NULL)
+
+gschemas.compiled: $(GTK_GSETTINGS_SCHEMAS)
+       $(AM_V_GEN) $(GLIB_COMPILE_SCHEMAS) \
+               $(addprefix --schema-file=,$(GTK_GSETTINGS_SCHEMAS)) \
+               --targetdir=$(builddir)
+
+BUILT_SOURCES = gschemas.compiled
+
+CLEANFILES = gschemas.compiled
+
+all-am: gschemas.compiled
+
 if BUILDOPT_INSTALL_TESTS
 insttestdir=$(libexecdir)/installed-tests/$(PACKAGE)
 insttest_PROGRAMS = $(TEST_PROGS)
index eb90477ad07f462bba129dbb5a93074f19cf04a2..779bf801b708db74aae632707318e2034eca984e 100644 (file)
@@ -858,6 +858,7 @@ parse_command_line (int *argc, char ***argv)
 {
   GError *error = NULL;
   GOptionContext *context;
+  gchar *schema_dir;
 
   context = g_option_context_new ("- run GTK accessibility tests");
   g_option_context_add_main_entries (context, test_args, NULL);
@@ -871,6 +872,10 @@ parse_command_line (int *argc, char ***argv)
 
   gtk_test_init (argc, argv);
 
+  schema_dir = g_test_build_filename (G_TEST_BUILT, "", NULL);
+  g_setenv ("GSETTINGS_SCHEMA_DIR", schema_dir, TRUE);
+  g_free (schema_dir);
+
   /* gtk_test_init does not call setlocale(), so do it ourselves,
    * since running in the C locale breaks some our fancy
    * utf8 output.