meson: add a11y test
This commit is contained in:
		@ -99,7 +99,7 @@ test_in_files = \
 | 
			
		||||
	a11ymisc.test.in \
 | 
			
		||||
	$(NULL)
 | 
			
		||||
 | 
			
		||||
EXTRA_DIST += $(test_in_files) $(testdata)
 | 
			
		||||
EXTRA_DIST += $(test_in_files) $(testdata) meson.build
 | 
			
		||||
 | 
			
		||||
GTK_GSETTINGS_SCHEMAS = \
 | 
			
		||||
	$(top_srcdir)/gtk/org.gtk.Settings.ColorChooser.gschema.xml \
 | 
			
		||||
 | 
			
		||||
@ -928,7 +928,8 @@ 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);
 | 
			
		||||
  if (g_getenv ("GTK_TEST_MESON") == NULL)
 | 
			
		||||
    g_setenv ("GSETTINGS_SCHEMA_DIR", schema_dir, TRUE);
 | 
			
		||||
  g_free (schema_dir);
 | 
			
		||||
 | 
			
		||||
  /* gtk_test_init does not call setlocale(), so do it ourselves,
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										108
									
								
								testsuite/a11y/meson.build
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										108
									
								
								testsuite/a11y/meson.build
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,108 @@
 | 
			
		||||
a11y_state_tests = [
 | 
			
		||||
  'hello-world',
 | 
			
		||||
  'mnemonic',
 | 
			
		||||
  'accessible-name',
 | 
			
		||||
  'notebook',
 | 
			
		||||
  'range',
 | 
			
		||||
  'link',
 | 
			
		||||
  'text',
 | 
			
		||||
  'buttons',
 | 
			
		||||
  'colorchooser',
 | 
			
		||||
  'about',
 | 
			
		||||
  'messagedialog',
 | 
			
		||||
  'expander',
 | 
			
		||||
  'assistant',
 | 
			
		||||
  'pickers',
 | 
			
		||||
  'label',
 | 
			
		||||
  'lockbutton',
 | 
			
		||||
  'spinner',
 | 
			
		||||
  'progress',
 | 
			
		||||
  'infobar',
 | 
			
		||||
  'calendar',
 | 
			
		||||
  'statusbar',
 | 
			
		||||
  'paned',
 | 
			
		||||
  'iconview',
 | 
			
		||||
  'entries',
 | 
			
		||||
  'scale-drawvalue',
 | 
			
		||||
  'placeholder-text',
 | 
			
		||||
  'menus',
 | 
			
		||||
  'menu',
 | 
			
		||||
  'menubutton',
 | 
			
		||||
  'menubutton2',
 | 
			
		||||
  'menubutton3',
 | 
			
		||||
  'combos',
 | 
			
		||||
  'listbox',
 | 
			
		||||
  'stack',
 | 
			
		||||
  'headerbar',
 | 
			
		||||
  'tree',
 | 
			
		||||
  'actionbar',
 | 
			
		||||
  'tooltips',
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
skipped_tests = [
 | 
			
		||||
  # gtk_color_picker_new() in CI returns NULL which changes the UI
 | 
			
		||||
  'colorchooser',
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
a11y_testfocus_bin = executable('testfocus',
 | 
			
		||||
  'testfocus.c',
 | 
			
		||||
  dependencies: libgtk_dep,
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
a11y_dump_bin = executable('accessibility-dump',
 | 
			
		||||
  'accessibility-dump.c',
 | 
			
		||||
  dependencies: libgtk_dep,
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
foreach t: a11y_state_tests
 | 
			
		||||
  if t not in skipped_tests
 | 
			
		||||
    ui_path = join_paths(meson.current_source_dir(), t + '.ui')
 | 
			
		||||
    test (t + ' state',
 | 
			
		||||
      a11y_dump_bin,
 | 
			
		||||
      args: [ '--tap', '-k', ui_path ],
 | 
			
		||||
      env: [
 | 
			
		||||
        'GIO_USE_VOLUME_MONITOR=unix',
 | 
			
		||||
        'GSETTINGS_BACKEND=memory',
 | 
			
		||||
        'GTK_CSD=0',
 | 
			
		||||
        'G_ENABLE_DIAGNOSTIC=0',
 | 
			
		||||
        'G_TEST_SRCDIR=@0@'.format(meson.current_source_dir()),
 | 
			
		||||
        'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()),
 | 
			
		||||
        'GSETTINGS_SCHEMA_DIR=@0@'.format(gtk_schema_build_dir),
 | 
			
		||||
        'GTK_TEST_MESON=1',
 | 
			
		||||
      ],
 | 
			
		||||
      suite: 'a11y',
 | 
			
		||||
    )
 | 
			
		||||
  endif
 | 
			
		||||
endforeach
 | 
			
		||||
 | 
			
		||||
a11y_tests = [
 | 
			
		||||
  'tree-performance',
 | 
			
		||||
  'text',
 | 
			
		||||
  'children',
 | 
			
		||||
  'derive',
 | 
			
		||||
  'value',
 | 
			
		||||
  'misc',
 | 
			
		||||
  'tree-relationships',
 | 
			
		||||
  'util',
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
foreach t: a11y_tests
 | 
			
		||||
  test_prefix = 'a11y'
 | 
			
		||||
 | 
			
		||||
  test (t,
 | 
			
		||||
        executable (t, '@0@.c'.format(t),
 | 
			
		||||
                    dependencies: libgtk_dep),
 | 
			
		||||
        args: [ '--tap', '-k', ],
 | 
			
		||||
        timeout: 120,
 | 
			
		||||
        env: [ 'GIO_USE_VOLUME_MONITOR=unix',
 | 
			
		||||
               'GSETTINGS_BACKEND=memory',
 | 
			
		||||
               'GTK_CSD=1',
 | 
			
		||||
               'G_ENABLE_DIAGNOSTIC=0',
 | 
			
		||||
               'G_TEST_SRCDIR=@0@'.format(meson.current_source_dir()),
 | 
			
		||||
               'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()),
 | 
			
		||||
               'GSETTINGS_SCHEMA_DIR=@0@'.format(gtk_schema_build_dir),
 | 
			
		||||
             ],
 | 
			
		||||
        suite: 'a11y')
 | 
			
		||||
endforeach
 | 
			
		||||
 | 
			
		||||
subdir('state')
 | 
			
		||||
@ -28,7 +28,7 @@ testdata = \
 | 
			
		||||
	focus1.ui focus1.in focus1.out \
 | 
			
		||||
	focus2.ui focus2.in focus2.out
 | 
			
		||||
 | 
			
		||||
EXTRA_DIST += $(testdata)
 | 
			
		||||
EXTRA_DIST += $(testdata) meson.build
 | 
			
		||||
 | 
			
		||||
if BUILDOPT_INSTALL_TESTS
 | 
			
		||||
insttestdir = $(libexecdir)/installed-tests/$(PACKAGE)
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										4
									
								
								testsuite/a11y/state/meson.build
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								testsuite/a11y/state/meson.build
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,4 @@
 | 
			
		||||
a11y_state_record_bin = executable('state-record',
 | 
			
		||||
  'state-record.c',
 | 
			
		||||
  dependencies: libgtk_dep,
 | 
			
		||||
)
 | 
			
		||||
@ -1,3 +1,4 @@
 | 
			
		||||
subdir('gtk')
 | 
			
		||||
subdir('gdk')
 | 
			
		||||
subdir('css')
 | 
			
		||||
subdir('a11y')
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user