From c9d4b65fd4a80b54e6924eaea40cd99ecb5c671b Mon Sep 17 00:00:00 2001 From: justvanrossum Date: Mon, 29 Oct 2018 19:54:52 +0100 Subject: [PATCH] add some component tests --- Tests/pens/pointPen_test.py | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/Tests/pens/pointPen_test.py b/Tests/pens/pointPen_test.py index 79ca6b8f1..6c5857b45 100644 --- a/Tests/pens/pointPen_test.py +++ b/Tests/pens/pointPen_test.py @@ -36,6 +36,9 @@ class _TestSegmentPen(AbstractPen): def endPath(self): self._commands.append("endpath") + def addComponent(self, glyphName, transformation): + self._commands.append("%r %s addcomponent" % (glyphName, transformation)) + def _reprKwargs(kwargs): items = [] @@ -76,6 +79,13 @@ class _TestPointPen(AbstractPointPen): def endPath(self): self._commands.append("endPath()") + def addComponent(self, glyphName, transform, identifier=None, **kwargs): + items = ["%r" % glyphName, "%s" % transform] + if identifier is not None: + items.append("identifier=%r" % identifier) + items.extend(_reprKwargs(kwargs)) + self._commands.append("addComponent(%s)" % ", ".join(items)) + class PointToSegmentPenTest(unittest.TestCase): @@ -210,7 +220,10 @@ class TestSegmentToPointPen(unittest.TestCase): pen = SegmentToPointPen(PointToSegmentPen(spen)) pen.qCurveTo((10, 20), (20, 20), (20, 10), (10, 10), None) pen.closePath() - self.assertEqual("10 20 20 20 20 10 10 10 None qcurveto closepath", repr(spen)) + pen.addComponent('base', [1, 0, 0, 1, 0, 0]) + self.assertEqual("10 20 20 20 20 10 10 10 None qcurveto closepath " + "'base' [1, 0, 0, 1, 0, 0] addcomponent", + repr(spen)) class TestGuessSmoothPointPen(unittest.TestCase): @@ -384,10 +397,12 @@ class TestReverseContourPointPen(unittest.TestCase): pen.addPoint((100, 200)) pen.addPoint((200, 200)) pen.endPath() + pen.addComponent("base", [1, 0, 0, 1, 0, 0], identifier='foo') self.assertEqual("beginPath(identifier='bar') " "addPoint((0, 0)) " "addPoint((200, 200)) " "addPoint((100, 200)) " "addPoint((0, 100), identifier='foo') " - "endPath()", + "endPath() " + "addComponent('base', [1, 0, 0, 1, 0, 0], identifier='foo')", repr(tpen))