def test_game_ends_with_diagonal_win(self):
     _game_board = game_board.GameBoard()
     _game_board.set_board([1, 0, 0, 0, 1, 0, 0, 0, 1])
     _game_board2 = game_board.GameBoard()
     _game_board2.set_board([0, 0, 2, 0, 2, 0, 2, 0, 0])
     self.assertTrue(_game_board.is_game_over())
     self.assertTrue(_game_board2.is_game_over())
Exemple #2
0
 def test_turn_display_player2(self):
     player1 = computer_player.ComputerPlayer(1)
     player2 = computer_player.ComputerPlayer(2)
     board = game_board.GameBoard()
     test_game = game.Game(player1, player2, board)
     test_game.process_turn()
     self.assertEqual(console_prompts.ConsolePrompts().alert_whose_turn_it_is(test_game), "Player 2's turn... ")
Exemple #3
0
 def test_player1_can_make_a_move(self):
     test_player = TestPlayer(1, 0)
     test_player2 = TestPlayer(2, 1)
     test_game = game.Game(test_player, test_player2,
                           game_board.GameBoard())
     test_game.process_turn()
     self.assertEqual(test_game.game_board.board,
                      [1, 0, 0, 0, 0, 0, 0, 0, 0])
Exemple #4
0
 def test_game_will_not_move_forward_with_illegal_move(self):
     test_player = TestPlayer(1, 0)
     test_player2 = TestPlayer(2, 0)
     test_game = game.Game(test_player, test_player2,
                           game_board.GameBoard())
     test_game.process_turn()
     test_game.process_turn()
     self.assertEqual(test_game.game_board.board,
                      [1, 0, 0, 0, 0, 0, 0, 0, 0])
     self.assertEqual(test_game.turn, 2)
Exemple #5
0
 def test_game_display(self):
     board = game_board.GameBoard()
     board.change_square(1, 1)
     board.change_square(3, 1)
     board.change_square(7, 2)
     board.change_square(8, 2)
     self.assertEqual(console_prompts.ConsolePrompts().display_game(board), "Current board: \r\n"
                                                                         + " |O| \r\n"
                                                                         + "_____\r\n"
                                                                         + "O| | \r\n"
                                                                         + "_____\r\n"
                                                                         + " |X|X\r\n")
Exemple #6
0
from Application import console_prompts
from Application import human_input
from Application import input_output
from GameInfo import game
from GameInfo import human_player
from GameInfo import computer_player
from GameInfo import game_board

console_io = input_output.InputOutput(human_input.HumanInput(),
                                      console_prompts.ConsolePrompts())
player1 = human_player.HumanPlayer(1, console_io)
player2 = computer_player.ComputerPlayer(2)
_game = game.Game(player1, player2, game_board.GameBoard())

while not _game.game_board.is_game_over():
    console_io.alert_whose_turn_it_is(_game)
    console_io.display_game(_game.game_board)
    _game.process_turn()

console_io.alert_game_over(_game.game_board)
console_io.display_game(_game.game_board)
 def test_game_does_not_end_early2(self):
     _game_board = game_board.GameBoard()
     _game_board.set_board([1, 2, 1, 0, 0, 0, 0, 0, 0])
     self.assertFalse(_game_board.is_game_over())
 def test_move_is_legal_if_square_is_blank(self):
     _game_board = game_board.GameBoard()
     self.assertTrue(_game_board.is_move_legal(0))
 def test_moves_can_not_be_overwritten(self):
     _game_board = game_board.GameBoard()
     _game_board.change_square(0, 1)
     self.assertFalse(_game_board.is_move_legal(0))
 def test_game_does_not_end_early(self):
     _game_board = game_board.GameBoard()
     self.assertFalse(_game_board.is_game_over())
 def test_board_can_be_changed(self):
     _game_board = game_board.GameBoard()
     _game_board.change_square(0, 1)
     _game_board.change_square(1, 2)
     self.assertEqual(_game_board.board, [1, 2, 0, 0, 0, 0, 0, 0, 0])
 def test_game_ends_with_full_board(self):
     _game_board = game_board.GameBoard()
     _game_board.set_board([1, 2, 1, 2, 1, 2, 2, 1, 1])
     self.assertTrue(_game_board.is_game_over())
 def test_make_move(self):
     human = human_player.HumanPlayer(1, MockInput())
     board = game_board.GameBoard()
     human.make_move(board)
     self.assertEqual(human.make_move(board), 0)
Exemple #14
0
 def test_computer_makes_correct_move(self):
     ai_player = computer_player.ComputerPlayer(2)
     board = game_board.GameBoard()
     board.set_board([1, 0, 0, 0, 0, 0, 0, 0, 0])
     self.assertEqual(ai_player.make_move(board), 4)
Exemple #15
0
 def test_game_over_alert_tie_game(self):
     board = game_board.GameBoard()
     board.set_board([1, 2, 1, 1, 2, 1, 2, 1, 2])
     self.assertEqual(console_prompts.ConsolePrompts().alert_game_over(board), "Tie game!")
Exemple #16
0
 def test_game_over_alert_player2(self):
     board = game_board.GameBoard()
     board.set_board([1, 1, 0, 1, 0, 0, 2, 2, 2])
     self.assertEqual(console_prompts.ConsolePrompts().alert_game_over(board), "Player 2 has won!")