Closed
Description
I'm writing tests for my lambda function but when I'm using @sentry/serverless and wrap my lambda function with AWSLambda.wrapHandler
mocha shows Promise rejected with no or falsy reason
.
Sample Lambda function:
const lambdaFn = async (event, context) => {
context.callbackWaitsForEmptyEventLoop = false
try {
return {
200,
body: JSON.stringify(body)
}
} catch (error) {
console.error(error)
sentry.captureException(error)
await sentry.flush(2500)
}
}
exports.actualLambda = lambdaFn
exports.handler = sentry.AWSLambda.wrapHandler(lambdaFn)
Sample test(not working as expected):
it('status must be 200', async () => {
const result = await app.handler(null, context)
expect(result.statusCode).to.equal(200)
})
But if I directly call exports.actualLambda
function test will be passed. like below:
Sample test:
it('status must be 200', async () => {
const result = await app.actualLambda(null, context)
expect(result.statusCode).to.equal(200)
})