import * as assert from "node:assert";
import { test, expect } from "./backend-fixture";
test("sitemap returns expected XML for empty DB", async ({ backend, request }) => {
const response = await request.get(`${backend.url}/sitemap.xml`);
assert.strictEqual(response.status(), 200);
const actual = await response.text();
const expected = `
${backend.url}/
`;
assert.strictEqual(actual, expected);
});
test("sitemap returns expected XML after creating a page via UI", async ({
page,
backend,
request,
}) => {
await page.goto(backend.url);
await page.getByRole("link", { name: "Go to Admin" }).click();
await page.getByPlaceholder("text").fill("admin");
await page.getByPlaceholder("text").press("Tab");
await page.getByPlaceholder("password").fill("adminadmin");
await page.getByRole("button", { name: "Wyślij" }).click();
await page.getByRole("link", { name: "Edit Pages" }).click();
await page.getByRole("link", { name: "Create" }).click();
await page.getByLabel("url").fill("/my-page/");
await page.getByLabel("title").fill("My Page");
await page.getByLabel("heading").fill("My Heading");
await page.getByLabel("description").fill("My Description");
await page.getByRole("button", { name: "Wyślij" }).click();
const response = await request.get(`${backend.url}/sitemap.xml`);
assert.strictEqual(response.status(), 200);
const actual = await response.text();
const expected = `
${backend.url}/
${backend.url}/my-page/
`;
assert.strictEqual(actual, expected);
});