def testCompile(self): r = otTables.RearrangementMorphAction() r.NewState = 0x1234 r.MarkFirst = r.DontAdvance = r.MarkLast = True r.ReservedFlags, r.Verb = 0x1FF0, 0xD writer = OTTableWriter() r.compile(writer, self.font, actionIndex=None) self.assertEqual(hexStr(writer.getAllData()), "1234fffd")
def testDecompileToXML(self): r = otTables.RearrangementMorphAction() r.decompile(OTTableReader(deHexStr("1234fffd")), self.font) toXML = lambda w, f: r.toXML(w, f, {"Test": "Foo"}, "Transition") self.assertEqual( getXML(toXML, self.font), [ '<Transition Test="Foo">', ' <NewState value="4660"/>', # 0x1234 = 4660 ' <Flags value="MarkFirst,DontAdvance,MarkLast"/>', ' <ReservedFlags value="0x1FF0"/>', ' <Verb value="13"/><!-- ABxCD ⇒ CDxBA -->', '</Transition>', ])
def testCompileActions(self): act = otTables.RearrangementMorphAction() self.assertEqual(act.compileActions(self.font, []), (None, None))