#javascript #es6-modules
Вопрос:
Я пишу модульные тесты и хотел бы имитировать функцию в модуле, но избегать ее использования jest.mock
. Возможно ли такое?
Если нет, то как это jest.mock
работает и переживет ли он переход от commonjs к esmodules в узле?
import * as foo from './foo'
describe('foo', () => {
let mockFn: jest.Mock
beforeEach(() => {
mockFn = jest.fn()
Object.defineProperty(foo, 'bar', {
value: mockFn,
writable: true,
configurable: true,
})
})
it('Should not throw', () => {
const testFunc = () => foo()
expect(testFunc).not.toThrow()
})
})