47 lines
2.2 KiB
JavaScript
47 lines
2.2 KiB
JavaScript
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();
|
|
});
|