From 8a5ad799cefa3e7b9e03dc7a5fb1d34f36e3f2e8 Mon Sep 17 00:00:00 2001 From: Yohan Boniface Date: Mon, 2 Dec 2024 12:12:14 +0100 Subject: [PATCH] chore: fix failing test --- umap/tests/base.py | 8 +++++++- umap/tests/fixtures/empty_tile.png | Bin 0 -> 103 bytes umap/tests/integration/conftest.py | 4 +++- umap/tests/integration/test_import.py | 4 +++- 4 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 umap/tests/fixtures/empty_tile.png diff --git a/umap/tests/base.py b/umap/tests/base.py index 12b672fc..af4011fd 100644 --- a/umap/tests/base.py +++ b/umap/tests/base.py @@ -1,5 +1,6 @@ import copy import json +from pathlib import Path import factory from django.contrib.auth import get_user_model @@ -40,7 +41,7 @@ class LicenceFactory(factory.django.DjangoModelFactory): class TileLayerFactory(factory.django.DjangoModelFactory): name = "Test zoom layer" - url_template = "http://{s}.test.org/{z}/{x}/{y}.png" + url_template = "https://{s}.test.org/osmfr/{z}/{x}/{y}.png" attribution = "Test layer attribution" class Meta: @@ -150,3 +151,8 @@ def login_required(response): redirect_url = reverse("login") assert j["login_required"] == redirect_url return True + + +def mock_tiles(route): + path = Path(__file__).parent / "fixtures/empty_tile.png" + route.fulfill(path=path) diff --git a/umap/tests/fixtures/empty_tile.png b/umap/tests/fixtures/empty_tile.png new file mode 100644 index 0000000000000000000000000000000000000000..f607ae0a94ac5b56cfb50a8b275a4e878a391171 GIT binary patch literal 103 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K585o&?RN5XZRUpM2;1lAy>hk^bZ}xlza^*c; u978f1-yUS-1@aCp`0k&}XTAW)1cQCNia`Cd5*}U!aXnrAT-G@yGywpw9~smD literal 0 HcmV?d00001 diff --git a/umap/tests/integration/conftest.py b/umap/tests/integration/conftest.py index 079f6b78..9bf1aad9 100644 --- a/umap/tests/integration/conftest.py +++ b/umap/tests/integration/conftest.py @@ -6,6 +6,8 @@ from pathlib import Path import pytest from playwright.sync_api import expect +from ..base import mock_tiles + @pytest.fixture(scope="session") def browser_context_args(browser_context_args): @@ -23,7 +25,7 @@ def set_timeout(context): @pytest.fixture(autouse=True) def mock_osm_tiles(page): if not bool(os.environ.get("PWDEBUG", False)): - page.route("*/**/osmfr/**", lambda route: route.fulfill()) + page.route("*/**/osmfr/**", mock_tiles) @pytest.fixture diff --git a/umap/tests/integration/test_import.py b/umap/tests/integration/test_import.py index e0d44f2d..6d8f29ee 100644 --- a/umap/tests/integration/test_import.py +++ b/umap/tests/integration/test_import.py @@ -1,5 +1,4 @@ import json -import os import platform import re from pathlib import Path @@ -10,6 +9,7 @@ from playwright.sync_api import expect from umap.models import DataLayer +from ..base import mock_tiles from .helpers import save_and_get_json pytestmark = pytest.mark.django_db @@ -72,6 +72,8 @@ def test_umap_import_from_file(live_server, tilelayer, page): def test_umap_import_from_textarea(live_server, tilelayer, page, settings): + page.route("https://tile.openstreetmap.fr/hot/**", mock_tiles) + settings.UMAP_ALLOW_ANONYMOUS = True page.goto(f"{live_server.url}/map/new/") page.get_by_role("button", name="Open browser").click()