Files
2026-06-20 10:43:08 -04:00

28 lines
936 B
Python

import os
from playwright.sync_api import expect
BASE_URL = os.getenv("E2E_BASE_URL", "http://localhost:8082").rstrip("/")
ADMIN_USERNAME = os.getenv("E2E_ADMIN_USERNAME")
ADMIN_PASSWORD = os.getenv("E2E_ADMIN_PASSWORD")
def app_url(path):
return f"{BASE_URL}/{path.lstrip('/')}"
def login_as_admin(page):
if page.locator("#login-username").is_visible():
page.locator("#login-username").fill(ADMIN_USERNAME)
page.locator("#login-password").fill(ADMIN_PASSWORD)
page.locator("#login-btn").click()
expect(page.locator("#current-user")).to_have_text(ADMIN_USERNAME)
if page.get_by_role("heading", name="Login").count() > 0:
expect(page.get_by_role("heading", name="Login")).to_be_hidden()
def skip_without_admin_credentials(pytest):
if not ADMIN_USERNAME or not ADMIN_PASSWORD:
pytest.skip("Set E2E_ADMIN_USERNAME and E2E_ADMIN_PASSWORD to run authenticated e2e tests")