diff --git a/testsuite/gdk/cairo.test.in b/testsuite/gdk/cairo.test.in deleted file mode 100644 index 26fd33ea01..0000000000 --- a/testsuite/gdk/cairo.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/gdk/cairo --tap -k -Type=session -Output=TAP diff --git a/testsuite/gdk/cursor.test.in b/testsuite/gdk/cursor.test.in deleted file mode 100644 index 25e5c8a22f..0000000000 --- a/testsuite/gdk/cursor.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/gdk/cursor --tap -k -Type=session -Output=TAP diff --git a/testsuite/gdk/display.test.in b/testsuite/gdk/display.test.in deleted file mode 100644 index ea2b75bf7b..0000000000 --- a/testsuite/gdk/display.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/gdk/display --tap -k -Type=session -Output=TAP diff --git a/testsuite/gdk/encoding.test.in b/testsuite/gdk/encoding.test.in deleted file mode 100644 index 07ad561c63..0000000000 --- a/testsuite/gdk/encoding.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/gdk/encoding --tap -k -Type=session -Output=TAP diff --git a/testsuite/gdk/keysyms.test.in b/testsuite/gdk/keysyms.test.in deleted file mode 100644 index 4eb2596e3a..0000000000 --- a/testsuite/gdk/keysyms.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/gdk/keysyms --tap -k -Type=session -Output=TAP diff --git a/testsuite/gdk/rectangle.test.in b/testsuite/gdk/rectangle.test.in deleted file mode 100644 index b3b96178d5..0000000000 --- a/testsuite/gdk/rectangle.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/gdk/rectangle --tap -k -Type=session -Output=TAP diff --git a/testsuite/gdk/rgba.test.in b/testsuite/gdk/rgba.test.in deleted file mode 100644 index ae3f7e0df5..0000000000 --- a/testsuite/gdk/rgba.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/gdk/rgba --tap -k -Type=session -Output=TAP diff --git a/testsuite/gdk/seat.test.in b/testsuite/gdk/seat.test.in deleted file mode 100644 index dade2ef10a..0000000000 --- a/testsuite/gdk/seat.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/gdk/seat --tap -k -Type=session -Output=TAP diff --git a/testsuite/gtk/meson.build b/testsuite/gtk/meson.build index a772a71613..1c91d192ea 100644 --- a/testsuite/gtk/meson.build +++ b/testsuite/gtk/meson.build @@ -1,3 +1,6 @@ +testexecdir = join_paths(installed_test_bindir, 'gtk') +testdatadir = join_paths(installed_test_datadir, 'gtk') + gtk_tests_export_dynamic_ldflag = [] if cc.get_id() != 'msvc' @@ -51,14 +54,6 @@ tests = [ ['widgetorder'], ] -test_env = environment() -test_env.set('G_TEST_SRCDIR', meson.current_source_dir()) -test_env.set('G_TEST_BUILDDIR', meson.current_build_dir()) -test_env.set('G_ENABLE_DIAGNOSTIC', '0') -test_env.set('GIO_USE_VFS', 'local') -test_env.set('GSETTINGS_BACKEND', 'memory') -test_env.set('GSK_RENDERER', 'cairo') - test_cargs = [] if os_unix @@ -75,18 +70,37 @@ foreach t : tests test_exe = executable(test_name, test_srcs, c_args : test_cargs + test_extra_cargs, link_args : test_extra_ldflags, - dependencies : libgtk_dep) + dependencies : libgtk_dep, + install: get_option('install-tests'), + install_dir: testexecdir) - test(test_name, test_exe, suite : 'gtk', env : test_env) + test(test_name, test_exe, + args: [ '--tap', '-k' ], + env: installed_test_env, + suite: 'gtk') endforeach # FIXME: if objc autotestkeywords_CPPFLAGS += -DHAVE_OBJC=1 -x objective-c++ if add_languages('cpp') test_exe = executable('autotestkeywords', - 'autotestkeywords.cc', - c_args : test_cargs + ['-Idummy-headers'], - dependencies : libgtk_dep) - test('c++ keywords', test_exe, suite : 'gtk', env : test_env) + 'autotestkeywords.cc', + c_args : test_cargs + ['-Idummy-headers'], + dependencies : libgtk_dep, + install: get_option('install-tests'), + install_dir: testexecdir) + test('c++ keywords', test_exe, + args: [ '--tap', '-k' ], + env: installed_test_env, + suite: 'gtk') + if get_option('install-tests') + conf = configuration_data() + conf.set('testexecdir', testexecdir) + conf.set('test', 'keywords') + configure_file(input: 'gtk.test.in', + output: 'keywords.test', + configuration: conf, + install_dir: testdatadir) + endif endif # FIXME: schemas from gtk+ dir? @@ -94,105 +108,20 @@ endif # $(top_srcdir)/gtk/org.gtk.Settings.FileChooser.gschema.xml # gnome.compile_schemas() -# Installed data +if get_option('install-tests') + foreach t : tests + test_name = t.get(0) + conf = configuration_data() + conf.set('testexecdir', testexecdir) + conf.set('test', test_name) + configure_file(input: 'gtk.test.in', + output: '@0@.test'.format(test_name), + configuration: conf, + install_dir: testdatadir) + endforeach -test_icontheme = [ - 'icons/index.theme', - 'icons/16x16/simple.png', - 'icons/16x16/twosize-fixed.svg', - 'icons/16x16s/twosize.svg', - 'icons/32x32/only32-symbolic.svg', - 'icons/32x32/twosize-fixed.svg', - 'icons/32x32s/twosize.svg', - 'icons/scalable/everything-justregular.svg', - 'icons/scalable/everything-justrtl-rtl.svg', - 'icons/scalable/everything-rtl.svg', - 'icons/scalable/everything-symbolic-rtl.svg', - 'icons/scalable/everything-justsymbolic-symbolic.svg', - 'icons/scalable/everything.svg', - 'icons/scalable/everything-symbolic.svg', - 'icons/scalable/nonsquare-symbolic.svg', - 'icons/15/size-test.png', - 'icons/16-22/size-test.png', - 'icons/25+/size-test.svg', - 'icons/35+/size-test.svg', - 'icons/scalable/one-two.svg', - 'icons/scalable/one-two-rtl.svg', - 'icons2/scalable/one-two-three-symbolic.svg', - 'icons2/scalable/one-two-symbolic.svg', - 'icons2/scalable/one-two-symbolic-rtl.svg', - 'icons2/index.theme', -] + install_subdir('icons', install_dir: testexecdir) + install_subdir('ui', install_dir: testexecdir) -test_ui = [ - 'ui/test1.ui', 'ui/test1.expected', - 'ui/test2.ui', 'ui/test2.expected', - 'ui/test3.ui', 'ui/test3.expected', - 'ui/test4.ui', 'ui/test4.expected', - 'ui/test5.ui', 'ui/test5.expected', - 'ui/test6.ui', 'ui/test6.expected', - 'ui/test7.ui', 'ui/test7.expected', - 'ui/label1.ui', 'ui/label1.expected', - 'ui/label2.ui', 'ui/label2.expected', - 'ui/label3.ui', 'ui/label3.expected', - 'ui/label4.ui', 'ui/label4.expected', - 'ui/label5.ui', 'ui/label5.expected', - 'ui/celllayout1.ui', 'ui/celllayout1.expected', - 'ui/celllayout2.ui', 'ui/celllayout2.expected', - 'ui/celllayout3.ui', 'ui/celllayout3.expected', - 'ui/celllayout4.ui', 'ui/celllayout4.expected', - 'ui/celllayout5.ui', 'ui/celllayout5.expected', - 'ui/celllayout6.ui', 'ui/celllayout6.expected', - 'ui/celllayout7.ui', 'ui/celllayout7.expected', - 'ui/container1.ui', 'ui/container1.expected', - 'ui/container2.ui', 'ui/container2.expected', - 'ui/container3.ui', 'ui/container3.expected', - 'ui/container4.ui', 'ui/container4.expected', - 'ui/container5.ui', 'ui/container5.expected', - 'ui/container6.ui', 'ui/container6.expected', - 'ui/container7.ui', 'ui/container7.expected', - 'ui/container8.ui', 'ui/container8.expected', - 'ui/scale1.ui', 'ui/scale1.expected', - 'ui/scale2.ui', 'ui/scale2.expected', - 'ui/scale3.ui', 'ui/scale3.expected', - 'ui/scale4.ui', 'ui/scale4.expected', - 'ui/scale5.ui', 'ui/scale5.expected', - 'ui/scale6.ui', 'ui/scale6.expected', - 'ui/scale7.ui', 'ui/scale7.expected', - 'ui/levelbar1.ui', 'ui/levelbar1.expected', - 'ui/levelbar2.ui', 'ui/levelbar2.expected', - 'ui/levelbar3.ui', 'ui/levelbar3.expected', - 'ui/levelbar4.ui', 'ui/levelbar4.expected', - 'ui/levelbar5.ui', 'ui/levelbar5.expected', - 'ui/levelbar6.ui', 'ui/levelbar6.expected', - 'ui/dialog1.ui', 'ui/dialog1.expected', - 'ui/dialog2.ui', 'ui/dialog2.expected', - 'ui/dialog3.ui', 'ui/dialog3.expected', - 'ui/dialog4.ui', 'ui/dialog4.expected', - 'ui/dialog5.ui', 'ui/dialog5.expected', - 'ui/dialog6.ui', 'ui/dialog6.expected', - 'ui/filefilter1.ui', 'ui/filefilter1.expected', - 'ui/filefilter2.ui', 'ui/filefilter2.expected', - 'ui/filefilter3.ui', 'ui/filefilter3.expected', - 'ui/filefilter4.ui', 'ui/filefilter4.expected', - 'ui/filefilter5.ui', 'ui/filefilter5.expected', - 'ui/filefilter6.ui', 'ui/filefilter6.expected', - 'ui/filefilter7.ui', 'ui/filefilter7.expected', - 'ui/filefilter8.ui', 'ui/filefilter8.expected', - 'ui/filefilter9.ui', 'ui/filefilter9.expected', - 'ui/filefilter10.ui', 'ui/filefilter10.expected', - 'ui/infobar1.ui', 'ui/infobar1.expected', - 'ui/infobar2.ui', 'ui/infobar2.expected', - 'ui/infobar3.ui', 'ui/infobar3.expected', - 'ui/infobar4.ui', 'ui/infobar4.expected', - 'ui/infobar5.ui', 'ui/infobar5.expected', - 'ui/infobar6.ui', 'ui/infobar6.expected', - 'ui/image1.ui', 'ui/image1.expected', - 'ui/image2.ui', 'ui/image2.expected', -] +endif -# TODO: installed tests + .test files -# if install_tests -# install_data(test_icontheme + test_ui, -# install_dir : join_paths(libexecdir, 'installed-tests/gtk+')) -# endif