У меня есть этот код (Node.js):
Файл: utils. js
// utils.js
const foo = () => {
// ....
}
const bar = () => {
// ....
}
module.exports = { foo, bar }
Файл: myModule. js
// myModule.js
const {
foo,
bar
} = require('./utils');
const bizz = () => {
let fooResult = foo()
return bar(fooResult)
}
module.exports = { bizz }
Файл: myModule.spe c. js
// myModule.spec.js
const { bizz } = require('./myModule');
describe('myModule', () => {
it('bizz should return bla bla bla', () => {
let foo = jasmine.createSpy('foo').and.returnValue(true)
let bar = jasmine.createSpy('bar').and.callFake((data) => {
expect(date).toBeTrue();
return 'fake-data'
})
expect(bizz()).toBe('fake-data')
})
})
Я пытаюсь проверить bizz
, используя шпионов для функций foo
и bar
, но это не работает хорошо.
Может кто-нибудь объяснить мне, как создавать шпионов на этих функциях с целью тестирования Bizz ??