fonttools/Tests/misc/encodingTools_test.py
Cosimo Lupo e1d340cc65
[Tests] use absolute imports and add __init__.py where relevant
We can't use relative imports any more since the tests are now located outside the package.

I had to add __init__.py to Tests/feaLib/ so that pytest does not get confused by the presence
of two test files with the same basename: i.e. Tests/feaLib/builder_test.py and Tests/feaLib/builder_test.py

https://github.com/pytest-dev/pytest/issues/774
http://stackoverflow.com/questions/12582503/py-test-test-discovery-failure-when-tests-in-different-directories-are-called
2017-01-16 09:14:13 +00:00

33 lines
1.2 KiB
Python

from __future__ import print_function, division, absolute_import, unicode_literals
from fontTools.misc.py23 import *
import unittest
from fontTools.misc.encodingTools import getEncoding
class EncodingTest(unittest.TestCase):
def test_encoding_unicode(self):
self.assertEqual(getEncoding(3, 0, None), "utf_16_be") # MS Symbol is Unicode as well
self.assertEqual(getEncoding(3, 1, None), "utf_16_be")
self.assertEqual(getEncoding(3, 10, None), "utf_16_be")
self.assertEqual(getEncoding(0, 3, None), "utf_16_be")
def test_encoding_macroman_misc(self):
self.assertEqual(getEncoding(1, 0, 17), "mac_turkish")
self.assertEqual(getEncoding(1, 0, 37), "mac_romanian")
self.assertEqual(getEncoding(1, 0, 45), "mac_roman")
def test_extended_mac_encodings(self):
encoding = getEncoding(1, 1, 0) # Mac Japanese
decoded = b'\xfe'.decode(encoding)
self.assertEqual(decoded, unichr(0x2122))
def test_extended_unknown(self):
self.assertEqual(getEncoding(10, 11, 12), None)
self.assertEqual(getEncoding(10, 11, 12, "ascii"), "ascii")
self.assertEqual(getEncoding(10, 11, 12, default="ascii"), "ascii")
if __name__ == "__main__":
import sys
sys.exit(unittest.main())