Une autre solution consiste à spyOn
le modèle prototype
les fonctions.
Par exemple, cela fera MyModel.save()
échec :
jest.spyOn(MyModel.prototype, 'save')
.mockImplementationOnce(() => Promise.reject('fail update'))
Vous pouvez utiliser mockImplementationOnce
pour ne pas avoir à mockRestore
l'espion. Mais vous pouvez également utiliser mockImplementation
et utilisez quelque chose comme :
afterEach(() => {
jest.restoreAllMocks()
})
Testé avec "mongoose": "^4.11.7"
et "jest": "^23.6.0"
.