У меня есть тест, просто пытающийся увидеть, был ли вызван onSearch.
it("calls the onSearch method when searching", () => {
const testFilter = {
filterIndex: "testFilter4",
searchResults: [],
selectedItems: [],
isComplete: false,
isSearchMultiSelect: true,
entity: "Organization"
};
const spy = jest.fn();
const component = shallow(
<FilterSelect
{...preloadedState.main}
filter={testFilter}
onSearch={spy}
/>
);
component.find("Select").simulate("search", "term1");
expect(spy).toHaveBeenCalledWith("Organization", "testFilter4", "term1");
});
Я получаю эту ошибку:
expect(jest.fn()).toHaveBeenCalledWith(expected)
Expected mock function to have been called with:
["Organization", "testFilter4", "term1"]
But it was not called.
Также вот json "component"
{ node:
{ nodeType: 'class',
type:
{ [Function: Select]
Option: [Function],
OptGroup: [Function],
defaultProps: [Object],
propTypes: [Object],
contextTypes: [Object] },
props:
{ showSearch: true,
placeholder: 'Select',
value: [],
onSelect: [Function: onSelect],
disabled: false,
notFoundContent: 'No results found',
filterOption: false,
onSearch: [Function: onSearch],
children: [],
prefixCls: 'ant-select',
transitionName: 'slide-up',
choiceTransitionName: 'zoom' },
key: undefined,
ref: null,
instance: null,
rendered: [] },
type: 'Select',
props:
{ showSearch: true,
placeholder: 'Select',
value: [],
onSelect: [Function: onSelect],
disabled: false,
notFoundContent: 'No results found',
filterOption: false,
onSearch: [Function: onSearch],
prefixCls: 'ant-select',
transitionName: 'slide-up',
choiceTransitionName: 'zoom' },
children: null,
'$$typeof': Symbol(react.test.json) }
Также здесь есть часть Select для onSearch:
onSearch={term => {
this.handleSearch(filter.entity, filter.filterIndex, term);
}}
При просмотре мелкого Json 'Select' есть и есть onSearch, все выглядит хорошо ...
Не уверен, что здесь происходит, и это сводит меня с ума.Спасибо