21 Commits

Author SHA1 Message Date
Khaled Hosny
7ccc52b075 [test] Compare sha256 hash before TTX dumps
Most of time the files are identical, so instead of comparing the TTX
dump we can check sha256 hashes of the files first and if they match, we
don’t have to check the TTX dumps at all, making the subset tests orders
of magnitude faster.

time meson test --suite=subset down from:
real    0m19.418s
user    0m38.171s
sys     0m3.587s

to:
real	0m3.102s
user	0m8.622s
sys	0m1.701s

The expected files have been replaced by hb-subset output so they are
bit-identical where FontTools output might not.

The generate-expected-outputs.py now compares the hb-subset output with
fontttols subset and errors of they don’t match.
2021-08-04 04:10:38 +02:00
Khaled Hosny
770fbd5aa6 Revert "[test] Speed-up subset tests by saving TTX dump"
This reverts commit 278f44dcee34cea25403e42e06668f0afe2328c1.
2021-08-04 04:10:37 +02:00
Khaled Hosny
278f44dcee [test] Speed-up subset tests by saving TTX dump
Speed-up subset tests by saving TTX dump of expected output instead of
generating it each time the tests are run.

Cuts down meson test --suite=subset on my system from:
real	0m38.977s
user	1m12.024s
sys	0m10.547s

to:
real	0m22.291s
user	0m44.548s
sys	0m9.221s

Part of https://github.com/harfbuzz/harfbuzz/issues/3089
2021-07-30 00:00:35 +02:00
Qunxin Liu
d07f789ae3 [subset] support option "--notdef-outline" 2021-06-18 15:35:02 -07:00
Qunxin Liu
cb5a6b5a27 [subset] support option --layout-features 2021-05-26 18:04:18 -06:00
Garret Rieger
6fddc2bbf9 [subset] subset layout tables (G*) by default. 2021-04-22 15:08:49 -07:00
Ebrahim Byagowi
ad87155fd0 minor, use py3's open(encoding=) 2020-05-29 00:11:19 +04:30
Ebrahim Byagowi
8d19907704 Remove python2 support from tests/utils scripts 2020-02-19 16:17:45 +03:30
Qunxin Liu
36a5c042d7 [subset] Add "--name-languages" and "--name-legacy" options
Make name table subsetting consistent with fontTools
2020-01-24 23:17:04 +03:30
Ebrahim Byagowi
e171beeb5f Revert "[subset] Add "--name-languages" and "--name-legacy" options"
Causes tests failures, please reapply when tests are fixed, thanks.

This reverts commit fd85818b5b85fb0ad2db71c60e94ca0689d38bca.
2020-01-24 19:51:32 +03:30
Qunxin Liu
fd85818b5b [subset] Add "--name-languages" and "--name-legacy" options
Make name table subsetting consistent with fontTools
2020-01-23 17:24:05 -08:00
ckitagawa
43b6c865ae [subset] Support sbix subsetting 2020-01-15 13:36:01 -08:00
Michiharu Ariza
66361c72f6 restore gvar/MVAR/HVAR tables in subset tests 2019-06-05 14:51:04 -07:00
Qunxin Liu
993d81b9c5 [subset] Add one ttf file with fvar/STAT tables to integration test
Ignore gvar/MVAR/HVAR table
add support for --nameIDs=* option
2019-05-22 17:20:45 -07:00
Garret Rieger
c740c8636b [subset] Add integration tests for SingleSubst. 2019-05-21 13:02:11 -07:00
cclauss
b5c12b9f4d print() is a function in Python 3 (#1520) 2018-12-30 15:37:28 +03:30
Garret Rieger
5241d7f4b9 [subset] apply subset profiles (flags) to the subset integration tests. 2018-02-27 17:23:44 -08:00
Garret Rieger
d31ace3274 [subset] Add subset integration tests using the full roboto font. 2018-02-27 17:23:44 -08:00
Garret Rieger
b0eefacf4c [subset] Drop GSUB, GDEF, GPOS, and DSIG from subsetter expected test outputs. 2018-02-14 10:19:50 -08:00
Garret Rieger
cc46cd88a1 In generate-expected-outputs read the test definition with utf8 encoding. 2018-02-04 12:57:33 -08:00
Garret Rieger
4cdae914e2 Add basic directory structure for subsetter integration tests. Plus a utility for generating expected output files. 2018-02-04 12:57:33 -08:00