def test_do_mem_shows_help_when_given_extra_args(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon.do_mem('c000 c001') out = stdout.getvalue() self.assertTrue(out.startswith('mem <address_range>'))
def test_do_mem_shows_help_when_given_no_args(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon.do_mem("") out = stdout.getvalue() self.assertTrue(out.startswith("mem <address_range>"))
def test_do_mem_shows_help_when_given_extra_args(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon.do_mem('c000 c001') out = stdout.getvalue() self.assertTrue(out.startswith('mem <address_range>'))
def test_do_mem_shows_memory_for_a_single_address(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon._mpu.memory[0xC000] = 0xAA mon.do_mem('c000') out = stdout.getvalue() self.assertEqual('c000: aa\n', out)
def test_do_mem_wraps_at_terminal_width(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon._width = 14 mon.do_mem("c000:c003") out = stdout.getvalue() self.assertEqual("c000: 00 00\n" "c002: 00 00\n", out)
def test_do_mem_shows_memory_for_a_single_address(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon._mpu.memory[0xC000] = 0xAA mon.do_mem('c000') out = stdout.getvalue() self.assertEqual('c000: aa\n', out)
def test_do_mem_wraps_at_terminal_width(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon._width = 14 mon.do_mem('c000:c003') out = stdout.getvalue() self.assertEqual('c000: 00 00\n' 'c002: 00 00\n', out)
def test_do_mem_shows_memory_for_an_address_range(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon._mpu.memory[0xC000] = 0xAA mon._mpu.memory[0xC001] = 0xBB mon._mpu.memory[0xC002] = 0xCC mon.do_mem('c000:c002') out = stdout.getvalue() self.assertEqual('c000: aa bb cc\n', out)
def test_do_mem_shows_memory_for_an_address_range(self): stdout = StringIO() mon = Monitor(stdout=stdout) mon._mpu.memory[0xC000] = 0xAA mon._mpu.memory[0xC001] = 0xBB mon._mpu.memory[0xC002] = 0xCC mon.do_mem('c000:c002') out = stdout.getvalue() self.assertEqual('c000: aa bb cc\n', out)
def test_external_memory(self): stdout = StringIO() memory = bytearray(65536) memory[10] = 0xff mon = Monitor(memory=memory, stdout=stdout, putc_addr=None, getc_addr=None) self.assertEqual(0xff, memory[10], "memory must remain untouched") mon.do_mem('0008:000c') mon.do_fill('0000:0020 ab') self.assertEqual(0xab, memory[10], "memory must have been modified") out = stdout.getvalue() self.assertTrue(out.startswith('0008: 00 00 ff 00 00'), "monitor must see pre-initialized memory")