Я хочу следить за функцией, которая выполняется, как только требуется файл.В приведенном ниже примере я хочу шпионить за баром.У меня есть следующие файлы.
code.ts
import {bar} from 'third-party-lib';
const foo = bar()
test.ts
import * as thirdParty from 'third-party-lib';
describe('test', () => {
let barStub: SinonStub;
beforeEach(() => {
barStub = sinon.stub(thridParty, 'bar')
})
it('should work', () => {
assert.isTrue(bar.calledOnce)
})
}
Заглушка не работает.Я думаю, что это проблема времени.Бар заглушен после того, как он был выполнен.Приведенный выше пример работает, если я обертываю первую строку в функции и выполняю эту функцию в своем тесте.Но это не то, что я хочу.У кого-нибудь есть идея, как заглушить такие методы?