Esempio n. 1
0
 def center_room_a_on_room_b_by_waypoint(room_a, room_b, waypoint_pojo):
     intermediate_room_b = CenterTile.center_on_entrance(
         room_b, waypoint_pojo)
     room_a_exit = waypoint_pojo.get_exit(room_a)
     new_room_b = ShiftTile.shift_room_on_tile(intermediate_room_b,
                                               room_a_exit)
     return new_room_b
Esempio n. 2
0
def test_center_burrow_on_entrance_b(waypoint_b):
    room = Burrow()
    assert waypoint_b.has_entrance(room)
    actual = CenterTile.center_on_entrance(room, waypoint_b)
    tile = waypoint_b.get_entrance(actual)
    assert tile == Tile(0, 0, UniqueDungeonCardValues.ENTRANCE_B)
    assert isinstance(actual, Burrow)
Esempio n. 3
0
def test_center_hovel_on_entrance_a(waypoint_a):
    room = Hovel()
    assert waypoint_a.has_entrance(room)
    actual = CenterTile.center_on_entrance(room, waypoint_a)
    tile = waypoint_a.get_entrance(actual)
    assert tile == Tile(0, 0, UniqueDungeonCardValues.ENTRANCE_A)
    assert isinstance(actual, Hovel)
Esempio n. 4
0
def test_center_on_entrance_b_causes_entrance_to_have_coordinate_0_0(
        waypoint_b):
    room = Tunnel()
    new_room = CenterTile.center_on_entrance(room, waypoint_b)
    actual = waypoint_b.get_entrance(new_room)

    assert actual == Tile(0, 0, UniqueDungeonCardValues.ENTRANCE_B)
    assert actual.get_x() == 0
    assert actual.get_y() == 0
Esempio n. 5
0
def test_tile_character_attribute_does_not_change_after_being_recentered():
    attribute = DungeonCardValues.TREASURE
    tile_to_be_recentered = Tile(0, 0, attribute)
    tile_to_recenter_around = Tile(0, 1, None)

    actual = CenterTile.recenter_tile(tile_to_be_recentered,
                                      tile_to_recenter_around)

    assert actual.get_character_number() == DungeonCardValues.TREASURE
Esempio n. 6
0
def test_recentering_tile0_0_around_0_1_has_coordinates_0_minus_1():
    tile_to_be_recentered = Tile(0, 0, None)

    tile_to_recenter_around = Tile(0, 1, None)

    actual = CenterTile.recenter_tile(tile_to_be_recentered,
                                      tile_to_recenter_around)

    actual_x = actual.get_x()
    actual_y = actual.get_y()

    expected_x = 0
    expected_y = -1

    assert expected_x == actual_x
    assert expected_y == actual_y
Esempio n. 7
0
def test_recenters_list_of_tiles_around_a_tile():
    tile_one = Tile(0, 1, None)
    tile_two = Tile(1, 0, None)
    tile_list = [tile_one, tile_two]
    tile_to_be_recentered_around = Tile(-1, 1, None)

    actual = CenterTile.recenter_tile_list(tile_list,
                                           tile_to_be_recentered_around)
    new_tile_one = actual[0]
    new_tile_two = actual[1]
    expected_tile_one_x = 1
    expected_tile_one_y = 0
    expected_tile_two_x = 2
    expected_tile_two_y = -1

    assert new_tile_one.get_x() == expected_tile_one_x
    assert new_tile_one.get_y() == expected_tile_one_y
    assert new_tile_two.get_x() == expected_tile_two_x
    assert new_tile_two.get_y() == expected_tile_two_y
Esempio n. 8
0
def test_recentering_tile_0_0_returns_tile_with_coordinates_0_0():
    x_coordinate = 0
    y_coordinate = 0
    tile_to_be_recentered = Tile(x_coordinate, y_coordinate, None)

    tile_to_recenter_around = Tile(x_coordinate, y_coordinate, None)

    actual = CenterTile.recenter_tile(tile_to_be_recentered,
                                      tile_to_recenter_around)

    actual_x = actual.get_x()
    actual_y = actual.get_y()

    expected_x = 0
    expected_y = 0

    assert isinstance(actual, Tile)
    assert expected_x == actual_x
    assert expected_y == actual_y
Esempio n. 9
0
def test_recenter_room_on_tile(waypoint_b):
    room = Burrow()
    actual = CenterTile.center_on_entrance(room, waypoint_b)
    assert waypoint_b.get_entrance(actual) == Tile(
        0, 0, UniqueDungeonCardValues.ENTRANCE_B)
Esempio n. 10
0
def test_center_room_on_tile_type_that_room_does_not_have_raises_value_error(
        waypoint_a):
    room = Burrow()
    assert not waypoint_a.has_entrance(room)
    with pytest.raises(ValueError):
        CenterTile.center_on_entrance(room, waypoint_a)