import { expect, test } from "@playwright/test"; import { anmelden, keinQuerscrollen } from "./helfer"; test("Verlauf: Filter stehen in der URL und überleben das Neuladen", async ({ page }) => { await anmelden(page, "/auftraege"); await expect(page.getByRole("heading", { name: "Verlauf" })).toBeVisible(); await page.getByLabel("Typ").selectOption("vm"); await expect(page).toHaveURL(/typ=vm/); await page.getByLabel("Status").selectOption("ERFOLGREICH"); await expect(page).toHaveURL(/typ=vm.*status=ERFOLGREICH|status=ERFOLGREICH.*typ=vm/); await page.reload(); await expect(page.getByLabel("Typ")).toHaveValue("vm"); await expect(page.getByLabel("Status")).toHaveValue("ERFOLGREICH"); await keinQuerscrollen(page); await page.getByRole("button", { name: "Filter zurücksetzen" }).click(); await expect(page).toHaveURL(/\/auftraege$/); }); test("Wiederholen füllt den Assistenten mit den alten Werten, Name leer", async ({ page }) => { await anmelden(page, "/auftraege?typ=vm&status=ERFOLGREICH"); const erster = page.locator("main ul li a").first(); if ((await erster.count()) === 0) test.skip(true, "Kein erfolgreicher VM-Auftrag vorhanden"); await erster.click(); await page.getByRole("link", { name: "Wiederholen" }).click(); await expect(page).toHaveURL(/\/ausrollen\?wiederholen=/); await expect(page.getByText(/Wiederholung von d-/)).toBeVisible(); await keinQuerscrollen(page); for (let i = 0; i < 3; i++) await page.getByRole("button", { name: "Weiter" }).click(); await expect(page.getByLabel("Name (Hostname)")).toHaveValue(""); await expect(page.getByRole("button", { name: "Weiter" })).toBeDisabled(); });