Exemplo n.º 1
0
 def testCompile(self):
     a = otTables.ContextualMorphAction()
     a.NewState = 0x1234
     a.SetMark, a.DontAdvance, a.ReservedFlags = True, True, 0x3117
     a.MarkIndex, a.CurrentIndex = 0xDEAD, 0xBEEF
     writer = OTTableWriter()
     a.compile(writer, self.font, actionIndex=None)
     self.assertEqual(hexStr(writer.getAllData()), "1234f117deadbeef")
Exemplo n.º 2
0
 def testDecompileToXML(self):
     a = otTables.ContextualMorphAction()
     a.decompile(OTTableReader(deHexStr("1234f117deadbeef")), self.font)
     toXML = lambda w, f: a.toXML(w, f, {"Test": "Foo"}, "Transition")
     self.assertEqual(
         getXML(toXML, self.font),
         [
             '<Transition Test="Foo">',
             '  <NewState value="4660"/>',  # 0x1234 = 4660
             '  <Flags value="SetMark,DontAdvance"/>',
             '  <ReservedFlags value="0x3117"/>',
             '  <MarkIndex value="57005"/>',  # 0xDEAD = 57005
             '  <CurrentIndex value="48879"/>',  # 0xBEEF = 48879
             '</Transition>',
         ])
Exemplo n.º 3
0
 def testCompileActions(self):
     act = otTables.ContextualMorphAction()
     self.assertEqual(act.compileActions(self.font, []), (None, None))