Files
lucia-frontend/tests/unit/cypress/uncaughtExceptionPolicy.test.js

32 lines
1.0 KiB
JavaScript

import { describe, expect, it } from "vitest";
import {
getCypressUncaughtExceptionDecision,
shouldIgnoreUncaughtException,
} from "../../../cypress/support/uncaughtExceptionPolicy";
describe("shouldIgnoreUncaughtException", () => {
it("returns true for known benign ResizeObserver errors", () => {
expect(
shouldIgnoreUncaughtException(new Error("ResizeObserver loop limit exceeded")),
).toBe(true);
});
it("returns false for unknown runtime errors", () => {
expect(shouldIgnoreUncaughtException(new Error("TypeError: x is undefined"))).toBe(false);
});
it("returns false for Cypress handler when the error should be ignored", () => {
expect(
getCypressUncaughtExceptionDecision(
new Error("ResizeObserver loop completed with undelivered notifications."),
),
).toBe(false);
});
it("returns undefined for Cypress handler when the error should fail the test", () => {
expect(
getCypressUncaughtExceptionDecision(new Error("TypeError: x is undefined")),
).toBeUndefined();
});
});