def test_show_breakpoints_ignores_deleted_breakpoints(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon._breakpoints = [None, 0xffd2] mon.do_show_breakpoints('') out = stdout.getvalue() self.assertTrue(out.startswith("Breakpoint 1: $FFD2"))
def test_goto_without_breakpoints_stops_execution_at_brk(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon._breakpoints = [] mon._mpu.memory = [ 0xEA, 0xEA, 0x00, 0xEA ] mon.do_goto('0') self.assertEqual(0x02, mon._mpu.pc)
def test_show_breakpoints_shows_breakpoints(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon._breakpoints = [0xffd2] mon._address_parser.labels = {'chrout': 0xffd2} mon.do_show_breakpoints('') out = stdout.getvalue() self.assertTrue(out.startswith("Breakpoint 0: $FFD2 chrout"))
def test_goto_with_breakpoints_stops_execution_at_breakpoint(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon._breakpoints = [ 0x03 ] mon._mpu.memory = [ 0xEA, 0xEA, 0xEA, 0xEA ] mon.do_goto('0') out = stdout.getvalue() self.assertTrue(out.startswith("Breakpoint 0 reached")) self.assertEqual(0x03, mon._mpu.pc)