diff --git a/tests/e2e/fake_gitea.py b/tests/e2e/fake_gitea.py index c346056..ac1ef64 100644 --- a/tests/e2e/fake_gitea.py +++ b/tests/e2e/fake_gitea.py @@ -22,6 +22,7 @@ class FakeGiteaServer(ThreadingHTTPServer): def __init__(self, address: tuple[str, int]): super().__init__(address, FakeGiteaHandler) self.created_issues: list[dict] = [] + self.issue_creation_enabled = False class FakeGiteaHandler(BaseHTTPRequestHandler): @@ -62,6 +63,9 @@ class FakeGiteaHandler(BaseHTTPRequestHandler): if path != "/api/v1/repos/acme/mobile/issues": self._json(404, {"message": "not found"}) return + if not self.server.issue_creation_enabled: + self._json(503, {"message": "release journey is still offline"}) + return self.server.created_issues.append(payload) assignee = payload.get("assignee") self._json( diff --git a/tests/e2e/test_mobile_offline_issue_release.py b/tests/e2e/test_mobile_offline_issue_release.py index ff351a8..b7f4754 100644 --- a/tests/e2e/test_mobile_offline_issue_release.py +++ b/tests/e2e/test_mobile_offline_issue_release.py @@ -219,6 +219,7 @@ def test_release_artifact_files_one_mobile_issue_exactly_once_after_offline_relo browser_errors.clear() # Chromium reports expected network errors while the context is offline. failed_responses.clear() + fake.issue_creation_enabled = True context.set_offline(False) page.evaluate("window.dispatchEvent(new Event('online'))") for _ in range(80):