Harden e2e waits against loaded-box flakes; add AGENTS.md

This commit is contained in:
2026-10-05 12:59:39 +02:00
parent 89564a96ca
commit 94ae750e56
8 changed files with 49 additions and 21 deletions
+18 -1
View File
@@ -128,17 +128,34 @@ def browser(app_server):
browser.close()
def _record_console_error(page, message):
if message.type == "error" and "ERR_NETWORK_CHANGED" not in message.text:
page.console_errors.append(message.text)
@pytest.fixture()
def page(browser):
context = browser.new_context(viewport={"width": 1280, "height": 900}, locale="nl-NL")
page = context.new_page()
page.set_default_timeout(60000)
page.console_errors = []
page.on("pageerror", lambda error: page.console_errors.append(str(error)))
page.on("console", lambda message: message.type == "error" and page.console_errors.append(message.text))
page.on("console", lambda message: _record_console_error(page, message))
yield page
context.close()
def goto_ready(page, url):
from playwright.sync_api import TimeoutError as PlaywrightTimeoutError
page.goto(url, wait_until="domcontentloaded")
try:
page.wait_for_selector("html[data-app=ready]")
except PlaywrightTimeoutError:
page.reload(wait_until="domcontentloaded")
page.wait_for_selector("html[data-app=ready]")
def pytest_sessionfinish(session, exitstatus):
shutil.rmtree(TEST_DATA_DIR, ignore_errors=True)