Initial Commit
This commit is contained in:
33
apps/testbed/e2e/layout/console-baseline.spec.ts
Normal file
33
apps/testbed/e2e/layout/console-baseline.spec.ts
Normal file
@@ -0,0 +1,33 @@
|
||||
import { test, expect } from "@playwright/test";
|
||||
import { attachConsoleMonitor } from "@suaveplan/testing-e2e/console-monitor";
|
||||
|
||||
test.describe("Console Baseline", () => {
|
||||
const routes = ["/", "/crypto", "/logger", "/datetime", "/i18n", "/feature-flags"];
|
||||
|
||||
for (const route of routes) {
|
||||
test(`${route} has no console errors on load`, async ({ page }) => {
|
||||
const monitor = attachConsoleMonitor(page, {
|
||||
failOn: ["error"],
|
||||
ignore: [
|
||||
// Ignore known non-critical messages
|
||||
/ResizeObserver loop/,
|
||||
/WebSocket connection/,
|
||||
/Failed to load resource.*favicon/,
|
||||
],
|
||||
});
|
||||
|
||||
await page.goto(route);
|
||||
await expect(page.locator('[data-testid="page-title"]')).toBeVisible();
|
||||
|
||||
monitor.assertClean();
|
||||
});
|
||||
}
|
||||
|
||||
test("console-panel is present on every library page", async ({ page }) => {
|
||||
const libraryRoutes = ["/crypto", "/logger", "/datetime", "/i18n", "/feature-flags"];
|
||||
for (const route of libraryRoutes) {
|
||||
await page.goto(route);
|
||||
await expect(page.locator('[data-testid="console-panel"]')).toBeAttached();
|
||||
}
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user