From 3011f3b7d49fdc9565a3563b80d9b4260af8902b Mon Sep 17 00:00:00 2001 From: Nikolaus Waxweiler Date: Tue, 5 Feb 2019 13:57:01 +0000 Subject: [PATCH] Add smoke-test for layout interpolation of OTFs --- Tests/varLib/interpolate_layout_test.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/Tests/varLib/interpolate_layout_test.py b/Tests/varLib/interpolate_layout_test.py index 00039295c..dacd640c4 100644 --- a/Tests/varLib/interpolate_layout_test.py +++ b/Tests/varLib/interpolate_layout_test.py @@ -4,7 +4,7 @@ from fontTools.ttLib import TTFont from fontTools.varLib import build from fontTools.varLib.interpolate_layout import interpolate_layout from fontTools.varLib.interpolate_layout import main as interpolate_layout_main -from fontTools.designspaceLib import DesignSpaceDocumentError +from fontTools.designspaceLib import DesignSpaceDocument, DesignSpaceDocumentError from fontTools.feaLib.builder import addOpenTypeFeaturesFromString import difflib import os @@ -162,6 +162,22 @@ class InterpolateLayoutTest(unittest.TestCase): with self.assertRaisesRegex(DesignSpaceDocumentError, "No axes defined"): instfont = interpolate_layout(ds_path, {'weight': 500}) + def test_varlib_interpolate_layout_GSUB_only_otf(self): + """A smoke-test for layout-interpolating of OTFs.""" + ds_path = self.get_test_input('InterpolateLayout.designspace') + ds = DesignSpaceDocument.fromfile(ds_path) + ttx_dir = self.get_test_input('master_ttx_interpolatable_otf') + + self.temp_dir() + ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily2-') + for path, source in zip(ttx_paths, ds.sources): + font = TTFont(recalcBBoxes=False, recalcTimestamp=False) + font.importXML(path) + source.font = font + + finder = lambda s: s + instfont = interpolate_layout(ds, {'weight': 500}, finder) + def test_varlib_interpolate_layout_GPOS_only_size_feat_same_val_ttf(self): """Only GPOS; 'size' feature; same values in all masters. """