模拟链接方法

时间:2018-08-01 23:14:50

标签: javascript testing jestjs

(我使用Jest进行测试) 例如,我具有以下功能:

const find = () => {
    return {
        where: () => {
            in: () => {}
        }
    };
};

我在另一个地方叫它

find('me').where('id').in(['123']);

如何在find(),where()和in()中模拟和测试调用?

1 个答案:

答案 0 :(得分:3)

这是一个简单的模拟界面:

const find = (findData) => {
    const data = {
      find: findData
    };
    const self = {
      where: (whereData) => {
        data.where = whereData;
        return self;
      },
      in: (inData) => {
        data.in = inData;
        return self;
      },
      data
    };
    
    return self;
};

const res = find('me').where('id').in(['123']);

console.log(res.data);