コード例 #1
0
    def testFontFileReads(self):
        "Tests TTFontParset.read_xxx"

        class FakeTTFontFile(TTFontParser):
            def __init__(self, data):
                self._ttf_data = data
                self._pos = 0

        ttf = FakeTTFontFile("\x81\x02\x03\x04" "\x85\x06" "ABCD" "\x7F\xFF" "\x80\x00" "\xFF\xFF")
        self.assertEquals(ttf.read_ulong(), _L2U32(0x81020304L))  # big-endian
        self.assertEquals(ttf._pos, 4)
        self.assertEquals(ttf.read_ushort(), 0x8506)
        self.assertEquals(ttf._pos, 6)
        self.assertEquals(ttf.read_tag(), "ABCD")
        self.assertEquals(ttf._pos, 10)
        self.assertEquals(ttf.read_short(), 0x7FFF)
        self.assertEquals(ttf.read_short(), -0x8000)
        self.assertEquals(ttf.read_short(), -1)
コード例 #2
0
 def testChecksum(self):
     "Test calcChecksum function"
     self.assertEquals(calcChecksum(""), 0)
     self.assertEquals(calcChecksum("\1"), 0x01000000)
     self.assertEquals(calcChecksum("\x01\x02\x03\x04\x10\x20\x30\x40"), 0x11223344)
     self.assertEquals(calcChecksum("\x81"), _L2U32(0x81000000L))
     self.assertEquals(calcChecksum("\x81\x02"), _L2U32(0x81020000L))
     self.assertEquals(calcChecksum("\x81\x02\x03"), _L2U32(0x81020300L))
     self.assertEquals(calcChecksum("\x81\x02\x03\x04"), _L2U32(0x81020304L))
     self.assertEquals(calcChecksum("\x81\x02\x03\x04\x05"), _L2U32(0x86020304L))
     self.assertEquals(calcChecksum("\x41\x02\x03\x04\xD0\x20\x30\x40"), 0x11223344)
     self.assertEquals(calcChecksum("\xD1\x02\x03\x04\x40\x20\x30\x40"), 0x11223344)
     self.assertEquals(calcChecksum("\x81\x02\x03\x04\x90\x20\x30\x40"), 0x11223344)
     self.assertEquals(calcChecksum("\x7F\xFF\xFF\xFF\x00\x00\x00\x01"), _L2U32(0x80000000L))
コード例 #3
0
 def testAdd32(self):
     "Test add32"
     self.assertEquals(add32(10, -6), 4)
     self.assertEquals(add32(6, -10), -4)
     self.assertEquals(add32(_L2U32(0x80000000L), -1), 0x7FFFFFFF)
     self.assertEquals(add32(0x7FFFFFFF, 1), _L2U32(0x80000000L))