diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.default.1FC,21,41,20,62,63.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.default.1FC,21,41,20,62,63.otf index 18a9bcc4c..1bd287d3d 100644 Binary files a/test/subset/data/expected/full-font/SourceSansPro-Regular.default.1FC,21,41,20,62,63.otf and b/test/subset/data/expected/full-font/SourceSansPro-Regular.default.1FC,21,41,20,62,63.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.default.61,62,63.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.default.61,62,63.otf index edd389b41..328c6ee88 100644 Binary files a/test/subset/data/expected/full-font/SourceSansPro-Regular.default.61,62,63.otf and b/test/subset/data/expected/full-font/SourceSansPro-Regular.default.61,62,63.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.default.D7,D8,D9,DA,DE.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.default.D7,D8,D9,DA,DE.otf index 65fa1daea..4602847a1 100644 Binary files a/test/subset/data/expected/full-font/SourceSansPro-Regular.default.D7,D8,D9,DA,DE.otf and b/test/subset/data/expected/full-font/SourceSansPro-Regular.default.D7,D8,D9,DA,DE.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.desubroutinize.1FC,21,41,20,62,63.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.desubroutinize.1FC,21,41,20,62,63.otf new file mode 100644 index 000000000..18a9bcc4c Binary files /dev/null and b/test/subset/data/expected/full-font/SourceSansPro-Regular.desubroutinize.1FC,21,41,20,62,63.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.desubroutinize.61,62,63.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.desubroutinize.61,62,63.otf new file mode 100644 index 000000000..edd389b41 Binary files /dev/null and b/test/subset/data/expected/full-font/SourceSansPro-Regular.desubroutinize.61,62,63.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.desubroutinize.D7,D8,D9,DA,DE.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.desubroutinize.D7,D8,D9,DA,DE.otf new file mode 100644 index 000000000..65fa1daea Binary files /dev/null and b/test/subset/data/expected/full-font/SourceSansPro-Regular.desubroutinize.D7,D8,D9,DA,DE.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.1FC,21,41,20,62,63.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.1FC,21,41,20,62,63.otf index 604e14045..53109e24b 100644 Binary files a/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.1FC,21,41,20,62,63.otf and b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.1FC,21,41,20,62,63.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.61,62,63.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.61,62,63.otf index a0b2c2f7b..dd908c242 100644 Binary files a/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.61,62,63.otf and b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.61,62,63.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.D7,D8,D9,DA,DE.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.D7,D8,D9,DA,DE.otf index 805532868..5422d3228 100644 Binary files a/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.D7,D8,D9,DA,DE.otf and b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.D7,D8,D9,DA,DE.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.desubroutinize.1FC,21,41,20,62,63.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.desubroutinize.1FC,21,41,20,62,63.otf new file mode 100644 index 000000000..604e14045 Binary files /dev/null and b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.desubroutinize.1FC,21,41,20,62,63.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.desubroutinize.61,62,63.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.desubroutinize.61,62,63.otf new file mode 100644 index 000000000..a0b2c2f7b Binary files /dev/null and b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.desubroutinize.61,62,63.otf differ diff --git a/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.desubroutinize.D7,D8,D9,DA,DE.otf b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.desubroutinize.D7,D8,D9,DA,DE.otf new file mode 100644 index 000000000..805532868 Binary files /dev/null and b/test/subset/data/expected/full-font/SourceSansPro-Regular.drop-hints.desubroutinize.D7,D8,D9,DA,DE.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.default.3042,3044,3046,3048,304A,304B.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.default.3042,3044,3046,3048,304A,304B.otf index e51866acd..8d717cc5f 100644 Binary files a/test/subset/data/expected/japanese/SourceHanSans-Regular.default.3042,3044,3046,3048,304A,304B.otf and b/test/subset/data/expected/japanese/SourceHanSans-Regular.default.3042,3044,3046,3048,304A,304B.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.default.3042,3044,3046,73E0,5EA6,8F38.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.default.3042,3044,3046,73E0,5EA6,8F38.otf index c4f6bb246..3d570cd7a 100644 Binary files a/test/subset/data/expected/japanese/SourceHanSans-Regular.default.3042,3044,3046,73E0,5EA6,8F38.otf and b/test/subset/data/expected/japanese/SourceHanSans-Regular.default.3042,3044,3046,73E0,5EA6,8F38.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.default.61,63,65,6B.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.default.61,63,65,6B.otf index 62ddb6092..216ed170a 100644 Binary files a/test/subset/data/expected/japanese/SourceHanSans-Regular.default.61,63,65,6B.otf and b/test/subset/data/expected/japanese/SourceHanSans-Regular.default.61,63,65,6B.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.default.660E,6975,73E0,5EA6,8F38,6E05.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.default.660E,6975,73E0,5EA6,8F38,6E05.otf index 7ce9d4028..f548f48da 100644 Binary files a/test/subset/data/expected/japanese/SourceHanSans-Regular.default.660E,6975,73E0,5EA6,8F38,6E05.otf and b/test/subset/data/expected/japanese/SourceHanSans-Regular.default.660E,6975,73E0,5EA6,8F38,6E05.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.default.660E.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.default.660E.otf index 35d9eea4b..6362d217b 100644 Binary files a/test/subset/data/expected/japanese/SourceHanSans-Regular.default.660E.otf and b/test/subset/data/expected/japanese/SourceHanSans-Regular.default.660E.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.default..otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize..otf similarity index 100% rename from test/subset/data/expected/japanese/SourceHanSans-Regular.default..otf rename to test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize..otf diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.3042,3044,3046,3048,304A,304B.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.3042,3044,3046,3048,304A,304B.otf new file mode 100644 index 000000000..e51866acd Binary files /dev/null and b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.3042,3044,3046,3048,304A,304B.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.3042,3044,3046,73E0,5EA6,8F38.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.3042,3044,3046,73E0,5EA6,8F38.otf new file mode 100644 index 000000000..c4f6bb246 Binary files /dev/null and b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.3042,3044,3046,73E0,5EA6,8F38.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.61,63,65,6B.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.61,63,65,6B.otf new file mode 100644 index 000000000..62ddb6092 Binary files /dev/null and b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.61,63,65,6B.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.660E,6975,73E0,5EA6,8F38,6E05.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.660E,6975,73E0,5EA6,8F38,6E05.otf new file mode 100644 index 000000000..7ce9d4028 Binary files /dev/null and b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.660E,6975,73E0,5EA6,8F38,6E05.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.660E.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.660E.otf new file mode 100644 index 000000000..35d9eea4b Binary files /dev/null and b/test/subset/data/expected/japanese/SourceHanSans-Regular.desubroutinize.660E.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.3042,3044,3046,3048,304A,304B.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.3042,3044,3046,3048,304A,304B.otf index 790b7141f..9e1041df2 100644 Binary files a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.3042,3044,3046,3048,304A,304B.otf and b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.3042,3044,3046,3048,304A,304B.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.3042,3044,3046,73E0,5EA6,8F38.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.3042,3044,3046,73E0,5EA6,8F38.otf index c707bcd9a..6a3bff14e 100644 Binary files a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.3042,3044,3046,73E0,5EA6,8F38.otf and b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.3042,3044,3046,73E0,5EA6,8F38.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.61,63,65,6B.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.61,63,65,6B.otf index 591d13905..06d28b67e 100644 Binary files a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.61,63,65,6B.otf and b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.61,63,65,6B.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.660E,6975,73E0,5EA6,8F38,6E05.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.660E,6975,73E0,5EA6,8F38,6E05.otf index efc98b643..ce9d28701 100644 Binary files a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.660E,6975,73E0,5EA6,8F38,6E05.otf and b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.660E,6975,73E0,5EA6,8F38,6E05.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.660E.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.660E.otf index ce0e4fc79..27c46765a 100644 Binary files a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.660E.otf and b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.660E.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints..otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize..otf similarity index 100% rename from test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints..otf rename to test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize..otf diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.3042,3044,3046,3048,304A,304B.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.3042,3044,3046,3048,304A,304B.otf new file mode 100644 index 000000000..790b7141f Binary files /dev/null and b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.3042,3044,3046,3048,304A,304B.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.3042,3044,3046,73E0,5EA6,8F38.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.3042,3044,3046,73E0,5EA6,8F38.otf new file mode 100644 index 000000000..c707bcd9a Binary files /dev/null and b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.3042,3044,3046,73E0,5EA6,8F38.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.61,63,65,6B.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.61,63,65,6B.otf new file mode 100644 index 000000000..591d13905 Binary files /dev/null and b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.61,63,65,6B.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.660E,6975,73E0,5EA6,8F38,6E05.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.660E,6975,73E0,5EA6,8F38,6E05.otf new file mode 100644 index 000000000..efc98b643 Binary files /dev/null and b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.660E,6975,73E0,5EA6,8F38,6E05.otf differ diff --git a/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.660E.otf b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.660E.otf new file mode 100644 index 000000000..27c46765a Binary files /dev/null and b/test/subset/data/expected/japanese/SourceHanSans-Regular.drop-hints.desubroutinize.660E.otf differ diff --git a/test/subset/data/profiles/desubroutinize.txt b/test/subset/data/profiles/desubroutinize.txt new file mode 100644 index 000000000..67f3a8427 --- /dev/null +++ b/test/subset/data/profiles/desubroutinize.txt @@ -0,0 +1 @@ +--desubroutinize diff --git a/test/subset/data/profiles/drop-hints-desubroutinize.txt b/test/subset/data/profiles/drop-hints-desubroutinize.txt new file mode 100644 index 000000000..279d46680 --- /dev/null +++ b/test/subset/data/profiles/drop-hints-desubroutinize.txt @@ -0,0 +1,2 @@ +--no-hinting +--desubroutinize diff --git a/test/subset/generate-expected-outputs.py b/test/subset/generate-expected-outputs.py index 9bebbc39c..9ebf082f6 100755 --- a/test/subset/generate-expected-outputs.py +++ b/test/subset/generate-expected-outputs.py @@ -23,7 +23,6 @@ def generate_expected_output(input_file, unicodes, profile_flags, output_path): "--name-languages=*", "--name-legacy", "--drop-tables+=DSIG,GPOS,GSUB,GDEF", - "--desubroutinize", "--unicodes=%s" % unicodes, "--output-file=%s" % output_path]) check_call(args) diff --git a/test/subset/subset_test_suite.py b/test/subset/subset_test_suite.py index b9d0f053b..73ac3d273 100644 --- a/test/subset/subset_test_suite.py +++ b/test/subset/subset_test_suite.py @@ -33,6 +33,9 @@ class Test: font_base_name_parts = os.path.splitext(font_base_name) return font_base_name_parts[1] + def applicable(self): + return self.profile_path.find("desubroutinize") < 0 or self.get_font_extension() == "otf" + # A group of tests to perform on the subsetter. Each test # Identifies a font a subsetting profile, and a subset to be cut. class SubsetTestSuite: @@ -62,7 +65,9 @@ class SubsetTestSuite: for profile in self.profiles: profile = os.path.join(self._base_path(), "profiles", profile) for subset in self.subsets: - yield Test(font, profile, subset) + test = Test(font, profile, subset) + if test.applicable(): + yield test def _base_path(self): return os.path.dirname(os.path.dirname(self.test_path))