const { test, expect } = require("../../node_modules/@playwright/test"); test.skip(process.env.PLAYWRIGHT_LIVE_STACK !== "1", "Live-stack smoke test only"); test("editor can archive and unarchive a real species in the running stack", async ({ page }) => { const archiveFilters = page.locator("#archive-filter-group"); const speciesList = page.locator("#species-list"); const targetName = /Alabama Shad/; await page.goto("/"); await page.getByPlaceholder("Bearer token for editor access").fill("editor-token"); await page.getByRole("button", { name: "Use Token" }).click(); await expect(archiveFilters).toBeVisible(); await archiveFilters.getByRole("button", { name: "All", exact: true }).click(); await page.locator("#search").fill("Alabama"); await expect(speciesList.getByRole("button", { name: targetName })).toBeVisible(); await speciesList.getByRole("button", { name: targetName }).click(); await expect(page.locator("#editor-is-archived")).toBeVisible(); if (await page.locator("#editor-is-archived").isChecked()) { await page.locator("#editor-is-archived").uncheck(); await page.getByRole("button", { name: "Save Editorial Changes" }).click(); await expect(page.locator("#detail-archive-badge")).toBeHidden(); } await page.locator("#editor-is-archived").check(); await page.getByRole("button", { name: "Save Editorial Changes" }).click(); await expect(page.locator("#detail-archive-badge")).toBeVisible(); await expect(page.locator("#detail-archive-note")).toBeVisible(); await archiveFilters.getByRole("button", { name: "Archived", exact: true }).click(); await expect(speciesList.getByRole("button", { name: targetName })).toBeVisible(); await speciesList.getByRole("button", { name: targetName }).click(); await expect(page.locator("#editor-is-archived")).toBeChecked(); await page.locator("#editor-is-archived").uncheck(); await page.getByRole("button", { name: "Save Editorial Changes" }).click(); await archiveFilters.getByRole("button", { name: "Active", exact: true }).click(); await page.locator("#search").fill("Alabama"); await expect(speciesList.getByRole("button", { name: targetName })).toBeVisible(); await expect(page.locator("#detail-archive-badge")).toBeHidden(); });