# retoor from tests.conftest import BASE_URL from devplacepy.database import get_table, refresh_snapshot def _clear_isslop_data(): refresh_snapshot() jobs = get_table("jobs") for row in list(jobs.find(kind="isslop")): jobs.delete(uid=row["uid"]) analyses = get_table("isslop_analyses") for row in list(analyses.find()): analyses.delete(uid=row["uid"]) def test_isslop_page_loads(page, app_server): page.goto(f"{BASE_URL}/tools/isslop", wait_until="domcontentloaded") page.locator("[data-isslop-tool]").wait_for(state="visible") page.locator("[data-isslop-form] input[name='url']").wait_for(state="visible") page.locator("[data-isslop-run]").wait_for(state="visible") page.locator(".isslop-history-title").wait_for(state="visible") def test_isslop_tools_menu_links_to_page(page, app_server): page.goto(f"{BASE_URL}/tools", wait_until="domcontentloaded") card = page.locator("a[href='/tools/isslop']").first card.wait_for(state="visible") def test_isslop_submit_opens_live_report(alice): page, _user = alice try: page.goto(f"{BASE_URL}/tools/isslop", wait_until="domcontentloaded") page.locator("[data-isslop-form] input[name='url']").fill( "https://github.com/owner/repository" ) page.locator("[data-isslop-run]").click() page.wait_for_url("**/tools/isslop/*/report", wait_until="domcontentloaded") page.locator("dp-isslop-run").wait_for(state="attached") page.locator("[data-isslop-report] .sidebar-card").wait_for(state="visible") page.locator(".breadcrumb").wait_for(state="visible") page.locator(".isslop-feed-loader").wait_for(state="visible") finally: _clear_isslop_data()