Example #1
0
def test_add_entangle_tile():
    tiles = []
    for _ in range(9):
        tiles.append(Tile())
    board = Board(tiles)
    assert board.entangl_tiles() == []
    board.add_entangl_tile(1)
    assert board.entangl_tiles() == [1]
Example #2
0
def test_could_collapse():
    tiles = []
    for _ in range(9):
        tiles.append(Tile())
    board = Board(tiles)
    board.add_entangl_tile(1)
    board.add_entangl_tile(2)
    board.tiles()[1].set_move_on_tile('x1')
    board.tiles()[2].set_move_on_tile('x1')
    assert board.could_collapse(1, 'x1') is True
Example #3
0
def test_reset_entangle_tiles():
    tiles = []
    for _ in range(9):
        tiles.append(Tile())
    board = Board(tiles)
    board.add_entangl_tile(1)
    board.add_entangl_tile(2)
    assert board.entangl_tiles() == [1, 2]
    board.reset_entangl_tiles()
    assert board.entangl_tiles() == []
Example #4
0
def test_analyse_board():
    tiles = []
    for _ in range(9):
        tiles.append(Tile())
    board = Board(tiles)
    board.add_entangl_tile(1)
    board.add_entangl_tile(2)
    board.tiles()[1].set_move_on_tile('x1')
    board.tiles()[2].set_move_on_tile('x1')
    board.tiles()[1].set_move_on_tile('y2')
    board.tiles()[2].set_move_on_tile('y2')
    board.collapse(1, 'x1')
    assert board.analyse_board() == ['-', 'x1', 'y2', '-', '-', '-', '-', '-', '-']
Example #5
0
def test_collapse_error():
    tiles = []
    for _ in range(9):
        tiles.append(Tile())
    board = Board(tiles)
    board.add_entangl_tile(1)
    board.add_entangl_tile(2)
    board.tiles()[1].set_move_on_tile('x1')
    board.tiles()[1].set_move_on_tile('x3')
    board.tiles()[2].set_move_on_tile('x1')
    board.tiles()[1].set_move_on_tile('y2')
    board.tiles()[2].set_move_on_tile('y2')
    with pytest.raises(InvalidCollapseError):
        board.collapse(1, 'x3')
Example #6
0
def test_bot_collapse(monkeypatch):
    tiles = []
    for _ in range(9):
        tiles.append(Tile())
    board = Board(tiles)
    game = Game(board)
    board.tiles()[1].set_move_on_tile('x1')
    board.tiles()[2].set_move_on_tile('x1')
    board.tiles()[1].set_move_on_tile('x3')
    board.tiles()[2].set_move_on_tile('x3')
    board.add_entangl_tile(1)
    board.add_entangl_tile(2)
    bot = Bot('easy', board, game)

    def one(a):
        return 1

    monkeypatch.setattr('quantum_tictactoe.bot.choice', one)
    assert bot.collapse() == '1,x3'