'repeat-texture',
'transform-in-transform',
'transform-in-transform-in-transform',
- 'unaligned-offscreen',
- 'upside-down-label-3d', # not really 3d, but cairo fails it
'rounded-clip-in-clip-3d', # not really 3d, but cairo fails it
]
]
renderers = [
- # name exclude term
- [ 'gl', '' ],
- [ 'broadway', '-3d' ],
- [ 'cairo', '-3d' ],
+ { 'name': 'gl' },
+ { 'name': 'broadway', 'exclude_term': '-3d' },
+ { 'name': 'cairo', 'exclude_term': '-3d' },
+]
+
+compare_xfails = [
+ # Both tests fail because of some font rendering issue
+ 'unaligned-offscreen',
+ 'upside-down-label-3d', # not really 3d, but cairo fails it
]
foreach renderer : renderers
- foreach test : compare_render_tests
- if ((renderer[1] == '' or not test.contains(renderer[1])) and
- (renderer[0] != 'broadway' or broadway_enabled))
- test(renderer[0] + ' ' + test, compare_render,
+ foreach testname : compare_render_tests
+
+ renderer_name = renderer.get('name')
+ exclude_term = renderer.get('exclude_term', '')
+
+ suites = [
+ 'gsk',
+ 'gsk-compare',
+ 'gsk-' + renderer_name,
+ 'gsk-compare-' + renderer_name,
+ ]
+
+ if compare_xfails.contains(testname)
+ suites += 'failing'
+ endif
+
+ if ((exclude_term == '' or not testname.contains(exclude_term)) and
+ (renderer_name != 'broadway' or broadway_enabled))
+ test(renderer_name + ' ' + testname, compare_render,
args: [
- '--output', join_paths(meson.current_build_dir(), 'compare', renderer[0]),
- join_paths(meson.current_source_dir(), 'compare', test + '.node'),
- join_paths(meson.current_source_dir(), 'compare', test + '.png'),
+ '--output', join_paths(meson.current_build_dir(), 'compare', renderer_name),
+ join_paths(meson.current_source_dir(), 'compare', testname + '.node'),
+ join_paths(meson.current_source_dir(), 'compare', testname + '.png'),
],
env: [
- 'GSK_RENDERER=' + renderer[0],
+ 'GSK_RENDERER=' + renderer_name,
'GTK_A11Y=test',
'G_TEST_SRCDIR=@0@'.format(meson.current_source_dir()),
'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir())
],
- suite: [ 'gsk', 'gsk-compare', 'gsk-' + renderer[0], 'gsk-compare-' + renderer[0] ],
+ suite: suites,
)
endif
endforeach