def make_ft_program(assembly): program = Program() program.fromAssembly(assembly) # need to compile bytecode for PUSH optimization program._assemble() del program.assembly return program
def test__bool__(self): p = Program() assert not bool(p) bc = array.array("B", [0]) p.fromBytecode(bc) assert bool(p) assert p.bytecode.pop() == 0 assert not bool(p) p = Program() asm = ['SVTCA[0]'] p.fromAssembly(asm) assert bool(p) assert p.assembly.pop() == 'SVTCA[0]' assert not bool(p)
def test_roundtrip(self): p = Program() p.fromBytecode(BYTECODE) asm = p.getAssembly(preserve=True) p.fromAssembly(asm) assert BYTECODE == p.getBytecode()