コード例 #1
0
 def test_empty_board(self):
     board = TicTacToe()
     board.board = [[TicTacToe.X, TicTacToe.X, TicTacToe.X],
                    [TicTacToe.X, TicTacToe.X, TicTacToe.X],
                    [TicTacToe.X, TicTacToe.X, TicTacToe.X]]
     board.empty_board()
     self._board_empty(board)
コード例 #2
0
 def __init__(self, display, player1, player2):
     super().__init__(display, player1, player2)
     self.game_board = TicTacToe()
     start_menu = []
     game_menu = []
     game_over_menu = []
     settings_menu = []
     credits_menu = []
     #Start Menu
     start_menu.append(Choice("Start Game",self.display.game_screen, (self,), self.GAME_MENU_NAME))
     start_menu.append(Choice("Settings",self.display.settings_screen, (self,), self.SETTINGS_MENU_NAME))
    # start_menu.append(Choice("Credits",self.display.credits_screen,(self,), self.CREDITS_MENU_NAME))
     start_menu.append(Choice("Exit TicTacToe",self.end_game, None, None))
     #Game Menu
     game_menu.append(Choice("Make Next Move", self.move, (), None))
     game_menu.append(Choice("End Game",self.end_current_game, (), self.START_MENU_NAME))
     #Game Over Menu
     game_over_menu.append(Choice("End Game",self.end_current_game, (), self.START_MENU_NAME))
    # game_over_menu.append(Choice("Settings",self.display.settings_screen, (self,), self.SETTINGS_MENU_NAME))
     game_over_menu.append(Choice("New Game", self.new_game, (),  self.GAME_MENU_NAME))
     #Settings Menu
     settings_menu.append(Choice(self.BACK_OPTION,self.display.start_menu, (self,), self.START_MENU_NAME))
     settings_menu.append(Choice("Change Computer Player",self.change_computer_player, (), None))
     #Credits Menu
     credits_menu.append(Choice(self.BACK_OPTION,self.display.start_menu, (self,), self.START_MENU_NAME))
     self.menus = {self.START_MENU_NAME:start_menu, self.GAME_MENU_NAME:game_menu, self.SETTINGS_MENU_NAME:settings_menu, self.GAME_OVER_MENU_NAME:game_over_menu, self.CREDITS_MENU_NAME:credits_menu}
     #Current menu is pointed to by self.menu
     self.menu = start_menu
     #Because the game has just started the previous menu is None
     self.prev_menu = None
     self.current_player = self.player_1
コード例 #3
0
 def test_init(self):
     board = TicTacToe()
     self.assertEqual(len(board.board), 3)
     self.assertEqual(len(board.board[0]), 3)
     self.assertEqual(len(board.board[1]), 3)
     self.assertEqual(len(board.board[2]), 3)
     self._board_empty(board)
コード例 #4
0
 def test_str_(self):
     board = TicTacToe()
     board.board = [[TicTacToe.X, TicTacToe.X, TicTacToe.X],
                    [TicTacToe.X, TicTacToe.X, TicTacToe.X],
                    [TicTacToe.X, TicTacToe.X, TicTacToe.X]]
     board_str = """\nx | x | x\n----------\nx | x | x\n----------\nx | x | x\n"""
     self.assertEqual(board_str, str(board))
コード例 #5
0
 def test_move(self):
     tictactoe = TicTacToe()
     tictactoe.move(2, 2, TicTacToe.X)
     tictactoe.move(0, 1, TicTacToe.O)
     tictactoe.move(1, 0, TicTacToe.X)
     self.assertEqual(tictactoe.board[2][2], TicTacToe.X)
     self.assertEqual(tictactoe.board[0][1], TicTacToe.O)
     self.assertEqual(tictactoe.board[1][0], TicTacToe.X)
コード例 #6
0
 def test_availble_moves(self):
     board = TicTacToe()
     expected = [(x, y) for x in range(3) for y in range(3)]
     self.assertEqual(board.avalible_moves(), expected)
     board.move(0, 0, board.X)
     board.move(2, 0, board.O)
     board.move(1, 1, board.X)
     expected.remove((0, 0))
     expected.remove((2, 0))
     expected.remove((1, 1))
     self.assertEqual(board.avalible_moves(), expected)
コード例 #7
0
 def test_has_won_diagonals(self):
     board = TicTacToe()
     self.assertEqual(board.has_won(), False)
     board.board = [[TicTacToe.X, TicTacToe.EMPTY, TicTacToe.EMPTY],
                    [TicTacToe.EMPTY, TicTacToe.X, TicTacToe.EMPTY],
                    [TicTacToe.EMPTY, TicTacToe.EMPTY, TicTacToe.X]]
     self.assertEqual(board.has_won(), True)
     board.empty_board()
     self.assertEqual(board.has_won(), False)
     board.board = [[TicTacToe.EMPTY, TicTacToe.EMPTY, TicTacToe.O],
                    [TicTacToe.EMPTY, TicTacToe.O, TicTacToe.EMPTY],
                    [TicTacToe.O, TicTacToe.EMPTY, TicTacToe.EMPTY]]
     self.assertEqual(board.has_won(), True)
     board.empty_board()
     self.assertEqual(board.has_won(), False)
     board.board = [[TicTacToe.EMPTY, TicTacToe.EMPTY, TicTacToe.O],
                    [TicTacToe.EMPTY, TicTacToe.X, TicTacToe.EMPTY],
                    [TicTacToe.O, TicTacToe.X, TicTacToe.X]]
     self.assertEqual(board.has_won(), False)
     board.board = [[TicTacToe.X, TicTacToe.EMPTY, TicTacToe.X],
                    [TicTacToe.X, TicTacToe.O, TicTacToe.O],
                    [TicTacToe.EMPTY, TicTacToe.EMPTY, TicTacToe.X]]
     self.assertEqual(board.has_won(), False)