12345678910111213141516171819202122232425262728 |
- test("Anonymous function", function () {
- let stackString = (() => {
- return Error();
- })().stack;
- let [header, ...stackFrames] = stackString.split("\n");
- expect(header).toBe("Error");
- expect(!!stackFrames[0].match(/^ at Error \(.*\/error-stack\.js:3:\d+\)$/)).toBeTrue();
- expect(!!stackFrames[1].match(/^ at .*\/error-stack\.js:3:\d+$/)).toBeTrue();
- expect(!!stackFrames[2].match(/^ at .*\/error-stack\.js:2:\d+$/)).toBeTrue();
- });
- test("Named function with message", function () {
- function f() {
- throw Error("You Shalt Not Pass!");
- }
- try {
- f();
- } catch (e) {
- let stackString = e.stack;
- let [header, ...stack_frames] = stackString.split("\n");
- expect(header).toBe("Error: You Shalt Not Pass!");
- expect(!!stack_frames[0].match(/^ at Error \(.*\/error-stack\.js:15:\d+\)$/)).toBeTrue();
- expect(!!stack_frames[1].match(/^ at f \(.*\/error-stack\.js:15:\d+\)$/)).toBeTrue();
- expect(!!stack_frames[2].match(/^ at .*\/error-stack\.js:18:\d+$/)).toBeTrue();
- }
- });
|