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")
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>', ])
def testCompileActions(self): act = otTables.ContextualMorphAction() self.assertEqual(act.compileActions(self.font, []), (None, None))