小编mom*_*uke的帖子

如何用玩笑模拟函数 .save() 续集

我想用玩笑模拟 sequelize 中的函数 .save()。但是我在文件 user.services.test.js 中发现我的代码有错误。有人可以帮助我吗?

错误说:result.save() 不是函数。

用户服务.test.js

 it('Should update user that input by ', async () => {

        let result;
        let data ;
        let dataInput =  {id : 1, username : "teguh", userPassword : "apake"};        
        user.findByPk = jest.fn(() => {
            return {username : "teguh", userPassword : "iyah", save : mockFuntion()};
        });
        data = user.findByPk();
        data.userPassword = dataInput.userPassword;
        data.save = jest.fn(() => {return {saved:true}});

        result = await service.updateUser(dataInput);
        expect(data.save).toBeCalledTimes(1);
        expect(data.userPassword).toEqual(dataInput.userPassword);
    });
Run Code Online (Sandbox Code Playgroud)

用户服务.js

async updateUser(user){
        let result;
        try {
            const …
Run Code Online (Sandbox Code Playgroud)

mocking node.js express sequelize.js jestjs

2
推荐指数
1
解决办法
1817
查看次数

标签 统计

express ×1

jestjs ×1

mocking ×1

node.js ×1

sequelize.js ×1