Друго решение е spyOn
моделът prototype
функции.
Например, това ще направи MyModel.save()
неуспешно :
jest.spyOn(MyModel.prototype, 'save')
.mockImplementationOnce(() => Promise.reject('fail update'))
Можете да използвате mockImplementationOnce
за да не се налага mockRestore
шпионинът. Но можете също да използвате mockImplementation
и използвайте нещо като:
afterEach(() => {
jest.restoreAllMocks()
})
Тествано с "mongoose": "^4.11.7"
и "jest": "^23.6.0"
.