1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 20:57:44 +00:00

LibJS: Throw InternalErrors instead of Errors on CallStackSizeExceeded

These seem more appropriate.
This commit is contained in:
Idan Horowitz 2021-11-27 01:39:57 +02:00
parent 7341faceeb
commit 957f54d96f
6 changed files with 9 additions and 9 deletions

View file

@ -8,7 +8,7 @@ describe("error", () => {
a[0] = a;
expect(() => {
a.flat(3893232121);
}).toThrowWithMessage(Error, "Call stack size limit exceeded");
}).toThrowWithMessage(InternalError, "Call stack size limit exceeded");
});
});

View file

@ -114,5 +114,5 @@ test("Proxy handler that has the Proxy itself as its prototype", () => {
handler.__proto__ = proxy;
expect(() => {
proxy.foo;
}).toThrowWithMessage(Error, "Call stack size limit exceeded");
}).toThrowWithMessage(InternalError, "Call stack size limit exceeded");
});

View file

@ -6,16 +6,16 @@ test("infinite recursion", () => {
try {
infiniteRecursion();
} catch (e) {
expect(e).toBeInstanceOf(Error);
expect(e.name).toBe("Error");
expect(e).toBeInstanceOf(InternalError);
expect(e.name).toBe("InternalError");
expect(e.message).toBe("Call stack size limit exceeded");
}
expect(() => {
JSON.stringify({}, () => ({ foo: "bar" }));
}).toThrowWithMessage(Error, "Call stack size limit exceeded");
}).toThrowWithMessage(InternalError, "Call stack size limit exceeded");
expect(() => {
new Proxy({}, { get: (_, __, p) => p.foo }).foo;
}).toThrowWithMessage(Error, "Call stack size limit exceeded");
}).toThrowWithMessage(InternalError, "Call stack size limit exceeded");
});