def test_territory(): test_territory = Territory(0, "Fooland", "Baz", (0, 0), []) assert str(test_territory) == "Fooland" assert test_territory.get_coordinates() == "0,0!" test_territory.set_armies(5) assert test_territory.armies == 5 with pytest.raises(AssertionError): test_territory.set_armies(-5)
from risk.board import Board, Territory import copy # define boards for the tests # HINT: I recommend you plot these boards board0 = Board([ Territory(territory_id=i, player_id=1, armies=i % 5 + 1) for i in range(42) ]) board1 = copy.deepcopy(board0) board1.set_owner(3, 0) board1.set_armies(3, 500) board1.set_armies(4, 500) board1.set_armies(34, 500) board1.set_armies(39, 500) board1.set_armies(35, 500) #x= board1.is_valid_attack_path([3,28]) #print('x=', x) board2 = copy.deepcopy(board1) board2.set_owner(34, 0) board2.set_armies(34, 1) board2.set_owner(35, 0) board2.set_armies(35, 1) board2.set_owner(39, 0) board2.set_armies(39, 1) #board2.plot_board() board3 = copy.deepcopy(board2) board3.set_owner(34, 1)
risk.logger.error("You don't have enough troops to attack!") raise InsufficientAttackingArmies(origin) def _have_sufficient_armies(attacker_armies, defender_armies): return attacker_armies >= _MIN_ATTACK_ARMIES and defender_armies > 0 if __name__ == '__main__': import risk from risk.player import HumonRiskPlayer from risk.board.territory import Territory test_player1 = HumonRiskPlayer('playa0') test_player2 = HumonRiskPlayer('playa1') t0 = Territory('winterfell') t0.armies = 10 t1 = Territory('kings_landing') t1.armies = 10 t1.owner = test_player2 t2 = Territory('riverrun') t2.armies = 10 t2.owner = test_player1 t2.add_neighbour(t1) try: attack(t0, t2) except NonNeighbours: pass else:
from risk.board import Board,Territory import copy # define boards for the tests # HINT: I recommend you plot these boards board0 = Board([Territory(territory_id=i, player_id=1, armies=i%5+1) for i in range(42)]) board1 = copy.deepcopy(board0) board1.set_owner(3,0) board1.set_armies(3,500) board1.set_armies(4,500) board1.set_armies(34,500) board1.set_armies(39,500) board1.set_armies(35,500) board1.plot_board() board2 = copy.deepcopy(board1) board2.set_owner(34, 0) board2.set_armies(34,1) board2.set_owner(35, 0) board2.set_armies(35,1) board2.set_owner(39, 0) board2.set_armies(39,1) board3 = copy.deepcopy(board2) board3.set_owner(34, 1) board4 = copy.deepcopy(board2) board4.set_owner(4, 0) board4.set_armies(4, 1) board4.set_owner(1, 0)