gtk2/testsuite/gtk/meson.build
2017-09-29 12:10:42 +02:00

198 lines
6.5 KiB
Meson

gtk_tests_export_dynamic_ldflag = []
if cc.get_id() != 'msvc'
gtk_tests_export_dynamic_ldflag = ['-Wl,--export-dynamic']
endif
tests = [
['accel'],
['accessible'],
['adjustment'],
['bitmask', ['../../gtk/gtkallocatedbitmask.c'], ['-DGTK_COMPILATION', '-UG_ENABLE_DEBUG']],
['builder', [], [], gtk_tests_export_dynamic_ldflag],
['builderparser'],
['cellarea'],
['check-icon-names'],
['check-cursor-names'],
['clipboard'],
['cssprovider'],
['entry'],
['firefox-stylecontext'],
['floating'],
['focus'],
['gestures'],
['grid'],
['gtkmenu'],
['icontheme'],
['keyhash', ['../../gtk/gtkkeyhash.c', gtkresources, '../../gtk/gtkprivate.c'], gtk_cargs],
['listbox'],
['notify'],
['no-gtk-init'],
['object'],
['objects-finalize'],
['papersize'],
['rbtree', ['../../gtk/gtkrbtree.c'], ['-DGTK_COMPILATION', '-UG_ENABLE_DEBUG']],
['recentmanager'],
['regression-tests'],
['scrolledwindow'],
['spinbutton'],
['stylecontext'],
['templates'],
['textbuffer'],
['textiter'],
['treemodel', ['treemodel.c', 'liststore.c', 'treestore.c', 'filtermodel.c',
'modelrefcount.c', 'sortmodel.c', 'gtktreemodelrefcount.c']],
['treepath'],
['treeview'],
['typename'],
['window'],
['displayclose'],
['revealer-size'],
['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_cargs = []
if os_unix
# tests += [['defaultvalue']] # disabled in Makefile.am as well
test_cargs += ['-DHAVE_UNIX_PRINT_WIDGETS']
endif
foreach t : tests
test_name = t.get(0)
test_srcs = ['@0@.c'.format(test_name)] + t.get(1, [])
test_extra_cargs = t.get(2, [])
test_extra_ldflags = t.get(3, [])
test_exe = executable(test_name, test_srcs,
c_args : test_cargs + test_extra_cargs,
link_args : test_extra_ldflags,
dependencies : libgtk_dep)
test('@0@ test'.format(test_name), test_exe, suite : 'gtk', env : test_env)
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('autotestkeywords test', test_exe, suite : 'gtk', env : test_env)
endif
# FIXME: schemas from gtk+ dir?
# $(top_srcdir)/gtk/org.gtk.Settings.ColorChooser.gschema.xml
# $(top_srcdir)/gtk/org.gtk.Settings.FileChooser.gschema.xml
# gnome.compile_schemas()
# Installed data
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',
]
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',
]
# TODO: installed tests + .test files
# if install_tests
# install_data(test_icontheme + test_ui,
# install_dir : join_paths(libexecdir, 'installed-tests/gtk+'))
# endif