Add smoke-test for layout interpolation of OTFs

This commit is contained in:
Nikolaus Waxweiler 2019-02-05 13:57:01 +00:00
parent 8bff72139c
commit 3011f3b7d4

View File

@ -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.
"""