def test_rand_player_get_move():
    test_board = board.Board("X", "O")
    test_board.board_list = [" ", "X", "X", "X", "X", " ", "X", " ", "X"]
    test_player = player.Player("X")
    test_rand_player = rand_player.RandomPlayer(test_player)
    assert test_rand_player.get_move(
        test_board) in test_board.get_possible_moves()
Exemple #2
0
def test_board_initialization():
    test_board = board.Board("X", "O")
    assert test_board.current_player == "X"
    assert test_board.other_player == "O"
    assert test_board.board_list == [
        " ", " ", " ", " ", " ", " ", " ", " ", " "
    ]
    assert test_board.moves_made == ""
Exemple #3
0
def test_board_unapply_move():
    test_board = board.Board("X", "O")
    test_move = 3
    test_board.moves_made += str(test_move)
    test_board.board_list[test_move] = "X"
    test_board.unapply_move(test_move)
    assert test_board.board_list[test_move] == " "
    assert str(test_move) not in test_board.moves_made
Exemple #4
0
def test_board_apply_move_positive():
    test_board = board.Board("X", "O")
    test_move = 5
    test_player = player.Player("X")
    test_board.current_player = test_player
    assert test_board.apply_move(test_move)
    assert test_board.board_list[test_move] == test_player.marker
    assert str(test_move) in test_board.moves_made
Exemple #5
0
def test_board_reset():
    test_board = board.Board("X", "O")
    test_board.board_list = ["X", " ", " ", " ", "O", " ", " ", " ", " "]
    test_board.moves_made = "1237"
    test_board.reset()
    assert test_board.board_list == [
        " ", " ", " ", " ", " ", " ", " ", " ", " "
    ]
    assert test_board.moves_made == ""
Exemple #6
0
def test_board_apply_move_negative():
    test_board = board.Board("X", "O")
    test_move = 4
    test_board.moves_made += str(test_move)
    test_player = player.Player("X")
    test_board.current_player = test_player
    assert test_board.apply_move(test_move) == False
    assert test_board.board_list[test_move] == " "
    assert str(test_move) in test_board.moves_made
Exemple #7
0
 def __init__(self, parent):
     winsound.PlaySound("./audio/pacman_end.wav",
                        winsound.SND_FILENAME | winsound.SND_ASYNC)
     tk.Frame.__init__(self, parent)
     self.parent = parent
     self.board = board.Board()
     self.board.generate_level()
     self.canvas = tk.Canvas(self,
                             width=BOARD_WIDTH * CELL_SIZE,
                             height=(BOARD_HEIGHT * CELL_SIZE) +
                             CELL_SIZE / 2,
                             background="black")
     self.canvas.pack()
     self.initialise_canvas()
Exemple #8
0
def main():
    player1 = construct_player_for("X")
    player2 = construct_player_for("O")
    game_board = board.Board(current_player=player1, other_player=player2)
    while not game_board.check_game_over():
        print(game_board)
        game_board.draw_board()
        move = game_board.current_player.get_move(board=game_board)
        game_board.apply_move(move)
        game_board.turn_player()
    game_board.turn_player()
    print("=========================")
    game_board.draw_board()
    if game_board.check_win_for_player(game_board.current_player):
        print(f"congrats player {game_board.current_player.marker} won")
    elif game_board.check_win_for_player(game_board.other_player):
        print(f"congrats player {game_board.other_player.marker} won")
    else:
        print("It was a tie you both loose.")
 def __init__(self, player_o_agent, player_x_agent, context):
     self.board = board.Board()
     self.player_o = player.Player(player_o_agent, 1)
     self.player_x = player.Player(player_x_agent, -1)
     self.turn = 1  # Initialized to 1, then -1, 1, -1, 1...
     self.context_gui = context  # GUI context for sending messages.
def test_player_is_valid_move_negative():
    test_board = board.Board("X", "O")
    test_player = player.Player("X")
    move = 20
    assert not test_player.is_valid_move(move=move, board=test_board)
def test_player_get_move_negative():
    test_player = player.Player('X')
    test_board = board.Board(test_player, "O")
    with mock.patch('builtins.input', return_value='3'):
        assert not test_player.get_move(test_board) == 1
Exemple #12
0
def test_board_get_possible_moves():
    test_board = board.Board("X", "O")
    test_board.board_list = ["X", " ", " ", " ", " ", " ", "X", " ", "O"]
    assert test_board.get_possible_moves() == [1, 2, 3, 4, 5, 7]
def test_player_is_valid_move_positive():
    test_board = board.Board("X", "O")
    test_player = player.Player("X")
    move = 3
    assert test_player.is_valid_move(move=move, board=test_board)
Exemple #14
0
def test_board_check_win_for_player_negative():
    test_board = board.Board("X", "O")
    test_player = player.Player("X")
    test_board.board_list = ["X", "X", " ", " ", " ", " ", " ", " ", " "]
    assert not test_board.check_win_for_player(test_player)
Exemple #15
0
def test_board_check_for_tie():
    test_player = player.Player("X")
    test_board = board.Board(test_player, "O")
    test_board.board_list = ["X", "X", "O", "O", "O", "X", "X", "O", "X"]
    assert test_board.check_for_tie()
Exemple #16
0
def test_board_check_empty_negative():
    test_board = board.Board("X", "O")
    test_board.board_list = [" ", " ", "X", " ", " ", " ", "X", " ", " "]
    assert not test_board.check_empty()
Exemple #17
0
def test_board_repr():
    test_board = board.Board("X", "O")
    assert test_board.__repr__() == test_board.instruction_board
Exemple #18
0
def test_board_turn_player():
    test_board = board.Board("X", "O")
    test_board.turn_player()
    assert test_board.current_player == "O"
    assert test_board.other_player == "X"
Exemple #19
0
def test_board_check_move_negative(move):
    test_board = board.Board("X", "O")
    test_board.moves_made += str(move)
    assert test_board.check_move(move) == False
Exemple #20
0
def test_board_check_move_positive():
    test_board = board.Board("X", "O")
    assert test_board.check_move(2) == True