1
我想测试一个函数。这个功能也需要其他功能,但这个功能会被嘲笑。如何使用Jest测试和模拟功能Nodejs
这里是我的功能
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();
});
})
})
我还在困惑如何使用玩笑,也嘲弄了所需的相关测试该函数的功能。