/usr/lib/python2.7/dist-packages/FontTools/fontTools/pens/boundsPen_test.py is in fonttools 3.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | from __future__ import print_function, division, absolute_import
from fontTools.misc.py23 import *
from fontTools.pens.boundsPen import BoundsPen, ControlBoundsPen
import unittest
def draw_(pen):
pen.moveTo((0, 0))
pen.lineTo((0, 100))
pen.qCurveTo((50, 75), (60, 50), (50, 25), (0, 0))
pen.curveTo((-50, 25), (-60, 50), (-50, 75), (0, 100))
pen.closePath()
def bounds_(pen):
return " ".join(["%.0f" % c for c in pen.bounds])
class BoundsPenTest(unittest.TestCase):
def test_draw(self):
pen = BoundsPen(None)
draw_(pen)
self.assertEqual("-55 0 58 100", bounds_(pen))
def test_empty(self):
pen = BoundsPen(None)
self.assertEqual(None, pen.bounds)
def test_curve(self):
pen = BoundsPen(None)
pen.moveTo((0, 0))
pen.curveTo((20, 10), (90, 40), (0, 0))
self.assertEqual("0 0 45 20", bounds_(pen))
def test_quadraticCurve(self):
pen = BoundsPen(None)
pen.moveTo((0, 0))
pen.qCurveTo((6, 6), (10, 0))
self.assertEqual("0 0 10 3", bounds_(pen))
class ControlBoundsPenTest(unittest.TestCase):
def test_draw(self):
pen = ControlBoundsPen(None)
draw_(pen)
self.assertEqual("-55 0 60 100", bounds_(pen))
def test_empty(self):
pen = ControlBoundsPen(None)
self.assertEqual(None, pen.bounds)
def test_curve(self):
pen = ControlBoundsPen(None)
pen.moveTo((0, 0))
pen.curveTo((20, 10), (90, 40), (0, 0))
self.assertEqual("0 0 90 40", bounds_(pen))
def test_quadraticCurve(self):
pen = ControlBoundsPen(None)
pen.moveTo((0, 0))
pen.qCurveTo((6, 6), (10, 0))
self.assertEqual("0 0 10 6", bounds_(pen))
if __name__ == '__main__':
unittest.main()
|