Beispiel #1
0
def test_can_move_everywhere():
    room = Room.from_str(valid_moves_room)
    moves = room._get_valid_moves((7, 2))
    assert (6, 2) in moves
    assert (8, 2) in moves
    assert (7, 1) in moves
    assert (7, 3) in moves
Beispiel #2
0
def test_bottom_left_move():
    room = Room.from_str(valid_moves_room)
    moves = room._get_valid_moves((9, 0))
    assert (9, 1) in moves
    assert (8, 0) in moves
Beispiel #3
0
def test_cant_move_anywhere():
    room = Room.from_str(valid_moves_room)
    moves = room._get_valid_moves((7, 6))
    assert len(moves) == 0
Beispiel #4
0
def test_no_desks_generated():
    room = Room(0)
    assert len(room._select_desks()[1]) == 0
Beispiel #5
0
def test_10_desks_generated():
    room = Room(0.1, room_size=10)
    assert len(room._select_desks()[1]) == 10
Beispiel #6
0
def test_room_data_structure():
    room = Room(0.5)
    assert isinstance(room.desks, list)
    assert isinstance(room.desks[0], list)
Beispiel #7
0
def test_room_integers():
    room = Room(0.5)
    desks = chain.from_iterable(room.desks)
    assert all([isinstance(desk, int) for desk in desks])
Beispiel #8
0
def test_short_solution():
    room = Room.from_str(solvable_room2)
    assert len(room.solution) == 13
Beispiel #9
0
def test_room_is_square():
    room = Room(0.5)
    assert len(room.desks) == len(room.desks[0])
Beispiel #10
0
def test_serialise_deserialise_room():
    room = Room(0.6)
    room_str = room.to_str()
    new_room = Room.from_str(room_str)
    assert new_room.to_str() == room_str
Beispiel #11
0
def test_cant_find_lunch():
    room = Room.from_str(not_solvable_room)
    assert not room.found_lunch
Beispiel #12
0
def test_can_find_lunch():
    room = Room.from_str(solvable_room)
    assert room.found_lunch
Beispiel #13
0
def test_can_find_lunch_pos():
    room = Room.from_str(solvable_room)
    assert room._find_lunch_solution((9, 4)) is not None
Beispiel #14
0
def test_bottom_right_move():
    room = Room.from_str(valid_moves_room)
    moves = room._get_valid_moves((9, 9))
    assert (9, 8) in moves
    assert (8, 9) in moves