我有auth.handler中间件,该中间件调用了一些我在使用mocha&chai进行测试时遇到问题的异步函数,使用done()
对此没有帮助,示例代码:
中间件
async function authHandler(req, res, next) {
const token = req.headers.authorization.split(' ')[1]
const validCredential = await AuthService.verifyAccess(token)
if (!validCredential) {
next(new Error('Invalid credential')
}
next()
}
测试
it('should return error', async () => {
const token = 'invalid-token'
const { req, res} = mockSetup(token)
await authHandler(req, res, function next(error) => {
expect(res.status).to.be.equal(500)
expect(error.message).to.be.equal('invalid credential')
})
})