21 lines
610 B
Python
21 lines
610 B
Python
import pytest
|
|
|
|
from pigeon_magnet_solver.board import Board
|
|
|
|
|
|
def test_default():
|
|
board = Board.default_puzzle
|
|
|
|
assert board.height == 4, "Wrong height"
|
|
assert board.width == 3, "Wrong width"
|
|
|
|
assert board.columns == ("001x", "1101", "110x"), "Wrong columns"
|
|
assert board.binary_repr == (4, 11, 3), "Wrong binary repr"
|
|
assert board.solution_class == (1, 3, 2), "Wrong solution class"
|
|
|
|
assert board.click(4).binary_repr == (4, 14, 3)
|
|
assert board.click(5).binary_repr == (4, 11, 6)
|
|
|
|
for idx in (3, 7):
|
|
with pytest.raises(AssertionError):
|
|
board.click(idx)
|