| tests = [ |
| 'basics', |
| 'full-font', |
| 'cff-full-font', |
| 'japanese', |
| 'cff-japanese', |
| 'cff.notoserifmyanmar', |
| 'glyf_bug_3131', |
| 'layout', |
| 'layout.gpos', |
| 'layout.gpos2', |
| 'layout.gpos3', |
| 'layout.gpos4', |
| 'layout.gpos5', |
| 'layout.gpos6', |
| 'layout.gpos8', |
| 'layout.gpos8.amiri', |
| 'layout.gpos9', |
| 'layout.gsub3', |
| 'layout.gsub5', |
| 'layout.gsub6', |
| 'layout.gsub8', |
| 'layout.gdef', |
| 'layout.khmer', |
| 'layout.context', |
| 'layout.gdef-varstore', |
| 'layout.gdef-attachlist', |
| 'layout.notonastaliqurdu', |
| 'layout.tinos', |
| 'layout.duplicate_features', |
| 'cmap', |
| 'cmap14', |
| 'sbix', |
| 'colr', |
| 'math', |
| # TODO: re-enable once colrv1 subsetting is stabilized. |
| # 'colrv1.notoemoji', |
| 'colrv1', |
| 'colr_with_components', |
| 'cbdt', |
| 'variable', |
| 'glyph_names', |
| ] |
| |
| repack_tests = [ |
| 'basic', |
| 'prioritization', |
| 'table_duplication', |
| 'isolation', |
| 'advanced_prioritization', |
| 'space_splitting', |
| ] |
| |
| |
| run_test = find_program('run-tests.py') |
| |
| foreach t : tests |
| fname = '@0@.tests'.format(t) |
| |
| test(t, run_test, |
| args: [ |
| hb_subset, |
| join_paths(meson.current_source_dir(), 'data', 'tests', fname), |
| ], |
| # as the tests are ran concurrently let's raise acceptable time here |
| # ideally better to break and let meson handles them in parallel |
| timeout: 500, |
| workdir: join_paths(meson.current_build_dir(), '..', '..'), |
| suite: 'subset', |
| ) |
| endforeach |
| |
| run_repack_test = find_program('run-repack-tests.py') |
| |
| foreach t : repack_tests |
| fname = '@0@.tests'.format(t) |
| |
| test(t, run_repack_test, |
| args: [ |
| hb_subset, |
| join_paths(meson.current_source_dir(), 'data', 'repack_tests', fname), |
| ], |
| workdir: join_paths(meson.current_build_dir(), '..', '..'), |
| suite: ['subset', 'repack'], |
| ) |
| endforeach |