From 5ba54b82abbd7de27f605c1f49ace10c71317a51 Mon Sep 17 00:00:00 2001 From: Lee Henson Date: Thu, 8 Oct 2020 10:01:03 +0100 Subject: [PATCH 1/2] issue-2956: failing test --- packages/serverless/test/awslambda.test.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/serverless/test/awslambda.test.ts b/packages/serverless/test/awslambda.test.ts index 63c2246b6d65..115cb3f95cfd 100644 --- a/packages/serverless/test/awslambda.test.ts +++ b/packages/serverless/test/awslambda.test.ts @@ -38,7 +38,7 @@ const fakeCallback: Callback = (err, result) => { if (err === null || err === undefined) { return result; } - return err; + return undefined; }; describe('AWSLambda', () => { @@ -157,7 +157,7 @@ describe('AWSLambda', () => { }); test('unsuccessful execution', async () => { - expect.assertions(2); + expect.assertions(3); const error = new Error('sorry'); const handler: Handler = (_event, _context, callback) => { @@ -169,6 +169,7 @@ describe('AWSLambda', () => { await wrappedHandler(fakeEvent, fakeContext, fakeCallback); } catch (e) { expect(Sentry.captureException).toBeCalledWith(error); + expect(Sentry.captureException).toBeCalledTimes(1); expect(Sentry.flush).toBeCalledWith(2000); } }); From 7a713268366ef001c8f811bb701d3294160a996c Mon Sep 17 00:00:00 2001 From: Lee Henson Date: Thu, 8 Oct 2020 10:02:13 +0100 Subject: [PATCH 2/2] issue-2956: let reject call captureAsyncException --- packages/serverless/src/awslambda.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/serverless/src/awslambda.ts b/packages/serverless/src/awslambda.ts index 9f3a7720ad92..214f66a6a1b3 100644 --- a/packages/serverless/src/awslambda.ts +++ b/packages/serverless/src/awslambda.ts @@ -165,7 +165,8 @@ export const wrapHandler = ( if (args[0] === null || args[0] === undefined) { resolve(callback(...args)); } else { - captureExceptionAsync(args[0], context, options).finally(() => reject(callback(...args))); + callback(...args); + reject(args[0]); } }; };