Jestjs 如何模拟一个ES6类,它是一个Jest中命名的导出?
Jest文档清楚地显示了当它是默认导出时如何执行。例如,以下是作为默认值导出的类:Jestjs 如何模拟一个ES6类,它是一个Jest中命名的导出?,jestjs,Jestjs,Jest文档清楚地显示了当它是默认导出时如何执行。例如,以下是作为默认值导出的类: class QueryService { query(queryText: string): Promise<any> { // ----- Query the API ----- // ----- Return the result ----- return Promise.resolve({ data: {
class QueryService {
query(queryText: string): Promise<any> {
// ----- Query the API -----
// ----- Return the result -----
return Promise.resolve({
data: {
ticker: 'GOOG',
name: 'Alphabet Company'
}
});
}
}
export default QueryService;
但是,如果这个类是命名的导出,我如何模拟它?我想不出来
这是我的答案。回答如下:
总结:
const mockQuery = jest.fn();
jest.mock('./QueryService', () => {
return {
QueryService: jest.fn().mockImplementation(() => {
return { query: mockQuery };
})
};
});
答复如下:
总结:
const mockQuery = jest.fn();
jest.mock('./QueryService', () => {
return {
QueryService: jest.fn().mockImplementation(() => {
return { query: mockQuery };
})
};
});
对于一个你想使用专门为类设计的
spyOn()
函数的类对于一个你想使用专门为类设计的spyOn()
函数的类我在本期中找不到同样的手动模拟。你有没有关于命名导出类的手动模拟的例子?我在这个问题上找不到同样的手动模拟。您是否有手动模拟命名导出类的示例?