Exemple #1
0
 def assert_try_move_is(self, expected_winner, pieces_before, pieces_after,
                        position, piece):
     set_board(self.board, pieces_before)
     with self.board.try_move(position, piece) as (winner, state):
         self.assertEqual(expected_winner, winner)
         assert_board_is(self, self.board, pieces_after)
         assert_board_state_tuple_is(self, pieces_after, state)
     assert_board_is(self, self.board, pieces_before)
Exemple #2
0
 def test_constructor(self):
     assert_board_is(self, self.board)
Exemple #3
0
 def assert_board_is_after_move(self, pieces, position, piece):
     self.board.make_move(position, piece)
     assert_board_is(self, self.board, pieces)
Exemple #4
0
 def test_make_move_indicates_draw_when_board_full(self):
     self.assert_make_moves_winner_is(Board.DRAW,
                                      [4, 0, 6, 2, 1, 7, 5, 3, 8])
     assert_board_is(self, self.controller.board, "OXO|OXX|XOX")
Exemple #5
0
 def test_make_move_indicates_winner_when_o_wins(self):
     self.assert_make_moves_winner_is(Board.O, [0, 2, 1, 4, 3, 6])
     assert_board_is(self, self.controller.board, "XXO|XO-|O--")
Exemple #6
0
 def test_make_move_indicates_winner_when_x_wins(self):
     self.assert_make_moves_winner_is(Board.X, [6, 2, 8, 1, 7])
     assert_board_is(self, self.controller.board, "-OO|---|XXX")
Exemple #7
0
 def test_make_move_sets_board_and_changes_player_number_when_valid_move(
         self):
     self.player1.set_moves([4])
     self.assertEqual((None, 4), self.controller.make_move())
     assert_board_is(self, self.controller.board, "---|-X-|---")
     self.assertEqual(1, self.controller.player_number)