【发布时间】:2020-06-21 04:14:37
【问题描述】:
在我的用户服务中:
createUser: async (data) => {
const user = new UserDBEntryMapper(data);
const createdUser = await UserModel.create(user).catch(error => {
this.handleError(error);
});
return createdUser ? new UserBOMapper(createdUser) : null;
}
在我的 user.test.js 中
it.only('Create New User', async () => {
const stub = sinon.stub(UserModel, "create").returns(user);
const created = await UserService.createUser(user);
expect(stub.calledOnce).to.be.true;
});
将错误抛出为:
Create New User:
TypeError: UserModel.create(...).catch is not a function
如果我删除 UserService 中的 catch 块,测试通过,但我们需要一个 catch 块。我该如何处理?
注意:UserModel.create()是sequelize默认函数
【问题讨论】:
标签: node.js unit-testing sequelize.js sinon-chai