Я использую Express и Express-JWT.
В экземпляре Express () я использую:
const api = express()
api.use(jwt({
// my options
}))
Для проверки этого в тестах я использую файл mocks\express-jwt\index.js
содержащий:
const jwt = jest.fn().mockImplementation(options => (req, res, next) => {
// set dummy req.user and call
next()
})
module exports = jwt
Все это прекрасно работает.Теперь я хочу пропустить JWT для корневой конечной точки, поэтому я изменил использование jwt на:
api.use(jwt({
// my options
}).unless({path:['/']}))
В своем макете я добавил:
jwt.unless = jest.fn().mockImplementation(options => (req, res, next) => {
next()
})
Однако тесты теперь всегдапотерпите неудачу с function unless is not defined
.
Кто-нибудь знает, как смоделировать это unless
поведение?