我在 React 组件中有以下功能:
onUploadStart(file, xhr, formData) {
formData.append('filename', file.name);
formData.append('mimeType', file.type);
}
这是我的测试,至少可以调用间谍:
const formData = { append: jest.fn() };
const file = { name: 'someFileName', type: 'someMimeType' };
eventHandlers.onUploadStart(file, null, formData);
expect(formData.append).toHaveBeenCalledWith(
['mimeType', 'someMimeType'],
['fileName', 'someFileName']
);
但是,断言不起作用:
Expected mock function to have been called with:
[["mimeType", "someMimeType"], ["fileName", "someFileName"]]
But it was called with:
["mimeType", "someMimeType"], ["filename", "someFileName"]
使用 toHaveBeenCalledWith
的正确方法是什么?
原文由 Andreas Köberle 发布,翻译遵循 CC BY-SA 4.0 许可协议
我能够模拟多个调用并以这种方式检查参数:
其中
mockFn
是您的模拟函数名称。