Add Pixel.northeast/southwest properties

- the properties are needed for the drawing functionalitites
This commit is contained in:
Alexander Hess 2021-01-26 17:02:51 +01:00
commit 605ade4078
Signed by: alexander
GPG key ID: 344EA5AB10D868E0
5 changed files with 96 additions and 2 deletions

View file

@ -205,7 +205,7 @@ class TestGridification:
@pytest.mark.db
@pytest.mark.no_cover
@pytest.mark.parametrize('side_length', [250, 500, 1_000, 2_000, 4_000, 8_000])
def test_make_random_grids( # noqa:WPS211
def test_make_random_grids( # noqa:WPS211,WPS218
self, db_session, city, make_address, make_restaurant, make_order, side_length,
):
"""With 100 random `Address` objects, a grid must have ...
@ -228,5 +228,12 @@ class TestGridification:
assert isinstance(result, db.Grid)
assert 1 <= len(result.pixels) <= n_pixels_x * n_pixels_y
# Sanity checks for `Pixel.southwest` and `Pixel.northeast`.
for pixel in result.pixels:
assert abs(pixel.southwest.x - pixel.n_x * side_length) < 2
assert abs(pixel.southwest.y - pixel.n_y * side_length) < 2
assert abs(pixel.northeast.x - (pixel.n_x + 1) * side_length) < 2
assert abs(pixel.northeast.y - (pixel.n_y + 1) * side_length) < 2
db_session.add(result)
db_session.commit()