【发布时间】:2017-04-26 05:57:27
【问题描述】:
我想测试一个函数。这个函数还需要其他函数,但是这个函数会被玩笑。
这是我的功能
translate(args, cb) {
const transid = args.transid;
const language = args.language;
const defaultValue = args.defaultValue || '';
if (transid === null || transid === '') {
return cb(new Error('Error. Need TransiD'));
}
if (language === null || language === '') {
return cb(new Error('Error. Need language'));
}
return this.translation(transid, language, defaultValue)
.then((res) => {
return cb(null, res);
});
}
该功能需要功能“翻译”。在测试过程中,我会嘲笑它。
这是我的测试功能
describe('Translator', () => {
describe('translate', () => {
it('Should return translated value', (done) => {
const args = {
transid: 1,
language: 'EN',
defaultValue: 'defaultValue',
}
const cb = jest.fn((err, res) => {
});
translator.translation = jest.fn((transid, language, defaultValue) => {
// done();
})
translator.translate(args, cb);
done();
});
})
})
我仍然对如何使用 Jest 测试该函数以及如何模拟所需的依赖感到困惑。
【问题讨论】:
标签: node.js unit-testing callback mocking jestjs