如何正确模拟JavaScript模块中的单个依赖项

时间:2018-12-09 09:11:14

标签: javascript mocking jestjs

我有以下模块queryBuilder

export const getHierarchy = () => hierarchy; 
export const getItem = (ItemId, endpoint) => `${getHierarchy().first(endpoint)}('${itemid}')`;

我想测试getItem方法,但无法模拟getHierarchy。无论我尝试什么,它都会返回原始的hierarchy值。

我正在使用Jest,并且尝试了以下方法:

const qb = require('./queryBuilder');
qb.getHierarchy = jest.fn().mockImplementation(...)

// test logic
expect(qb.getItem(itemId, endpoint)).toEqual(`whatever`);

但是似乎getItem仍在使用queryBuilder中声明的原始geHierarchy方法。

0 个答案:

没有答案