def test_bumpdwn_indirect_invalid_adress(self): # arrange sut = Vm() sut.rom = [sut.OPC_BUMPDWN_I, 3, sut.OPC_NOP] sut.ram = [1, 2, 3, 4] # act action = sut.next_step # assert self.assertRaises(InvalidRamAdressException, action)
def test_copyfrom_direct_invalid_adress(self): # arrange sut = Vm() sut.rom = [sut.OPC_COPYFROM, 4, sut.OPC_NOP] sut.ram = [1, 2, 3, 4] # act action = sut.next_step # assert self.assertRaises(InvalidRamAdressException, action)
def test_sub_indirect_invalid_adress(self): # arrange sut = Vm() sut.accumulator = 1 sut.rom = [sut.OPC_SUB_I, 2, sut.OPC_NOP] sut.ram = [1, 2, 3] # act action = sut.next_step # assert self.assertRaises(InvalidRamAdressException, action)
def test_sub_indirect(self): # arrange sut = Vm() sut.accumulator = 1 sut.rom = [sut.OPC_SUB_I, 0, sut.OPC_NOP] sut.ram = [1, 2, 3] # act sut.next_step() # assert self.assertEqual(sut.accumulator, -1)
def test_add_direct(self): # arrange sut = Vm() sut.accumulator = 1 sut.rom = [sut.OPC_ADD, 0, sut.OPC_NOP] sut.ram = [1, 2, 3] # act sut.next_step() # assert self.assertEqual(sut.accumulator, 2)
def test_copyfrom_indirect(self): # arrange sut = Vm() sut.rom = [sut.OPC_COPYFROM_I, 2, sut.OPC_NOP] sut.ram = [1, 2, 3, 4] # act sut.next_step() # assert self.assertEqual(sut.program_count, 2) self.assertEqual(sut.accumulator, 4) self.assertEqual(sut.ram, [1, 2, 3, 4])
def test_bumpdwn_indirect(self): # arrange sut = Vm() sut.accumulator = 42 sut.ram = [1, 2, 3, 4] sut.rom = [sut.OPC_BUMPDWN_I, 2, sut.OPC_NOP] # act sut.next_step() # assert self.assertEqual(sut.program_count, 2) self.assertEqual(sut.accumulator, 3) self.assertEqual(sut.ram, [1, 2, 3, 3])
def test_nop(self): # arrange sut = Vm() sut.accumulator = 42 sut.ram = [1, 2, 3, 4] sut.rom = [sut.OPC_NOP, sut.OPC_NOP] # act sut.next_step() # assert self.assertEqual(sut.program_count, 1) self.assertEqual(sut.accumulator, 42) self.assertEqual(sut.ram, [1, 2, 3, 4])