Publish curated Knowledge Hub source from 2ed833f290b439a7bc91e5fd19b042c269e3bee9

This commit is contained in:
Public Source Publisher committed 2026-10-03 17:07:21 +00:00
1 parent 10f2edcd29
commit 59f15b2d08
218 files changed
+23995 -1849

No files matched your search

@@ -90,6 +90,12 @@ test.describe("V2-M6 motion, matrices and dashboard personalization", () => {
await page.goto("/settings");
await expectAuthenticatedShell(page);
await expect(page.getByRole("heading", { name: "Dashboardwidgets" })).toBeVisible();
await expect(page.locator(".preference-sync-status")).toContainText("Voorkeuren gesynchroniseerd.");
await page.getByRole("button", { name: "Widgets herstellen" }).click();
await expect.poll(async () => {
const values = await (await page.request.get("/api/v1/me/preferences")).json();
return [values.dashboardWidgetOrder[0], values.hiddenDashboardWidgets.length];
}).toEqual(["attention", 0]);
// Hide the "Projecten" widget entirely.
await page.getByRole("checkbox", { name: "Projecten tonen" }).uncheck();
@@ -100,6 +106,13 @@ test.describe("V2-M6 motion, matrices and dashboard personalization", () => {
await expect(page.getByRole("button", { name: "Operationele signalen omhoog" })).toBeDisabled();
await page.getByRole("button", { name: "Unraid-overzicht omhoog" }).click();
// A full page navigation must wait for the server save, as indicated by the
// settings UI, instead of interrupting the pending preference request.
await expect.poll(async () => {
const values = await (await page.request.get("/api/v1/me/preferences")).json();
return [values.dashboardWidgetOrder[0], values.hiddenDashboardWidgets.includes("projects")];
}).toEqual(["server", true]);
await page.goto("/");
await expect(page.getByRole("heading", { name: "Operationeel overzicht" })).toBeVisible();
await expect(page.getByRole("heading", { name: "Projecten", exact: true })).toHaveCount(0);
@@ -120,7 +133,11 @@ test.describe("V2-M6 motion, matrices and dashboard personalization", () => {
// Restore the default so this test does not leak state into any other test that
// shares the same authenticated storage state / owner account.
await page.goto("/settings");
await page.getByRole("checkbox", { name: "Projecten tonen" }).check();
await page.getByRole("button", { name: "Unraid-overzicht omlaag" }).click();
await expect(page.locator(".preference-sync-status")).toContainText("Voorkeuren gesynchroniseerd.");
await page.getByRole("button", { name: "Widgets herstellen" }).click();
await expect.poll(async () => {
const values = await (await page.request.get("/api/v1/me/preferences")).json();
return [values.dashboardWidgetOrder[0], values.hiddenDashboardWidgets.length];
}).toEqual(["attention", 0]);
});
});