React-day-picker тест с энзимом и шуткой - PullRequest
0 голосов
/ 11 июня 2018

Я пытался проверить react-day-picker из https://react -day-picker.js.org / examples / selected-множественный с enzyme, а также jest, но, к сожалению, я получаюошибка: TypeError: Cannot read property 'selected' of undefined.В основном я хочу проверить handleDayClick() метод

мой компонент

export default class MultiDayPicker extends Component {
  state = {
    selectedDays: []
  };

  handleDayClick = (day, {selected}) => {
    const {selectedDays} = this.state;

    if (selected) {
      const selectedIndex = selectedDays.findIndex(selectedDay =>
        DateUtils.isSameDay(selectedDay, day)
      );

      selectedDays.splice(selectedIndex, 1);
    } else {
      selectedDays.push(day);
    }

    this.setState({selectedDays});
  };

  render() {
    return (
      <DayPicker
        selectedDays={this.state.selectedDays}
        onDayClick={this.handleDayClick}
      />
    );
  }
}

мои тесты:

it('should call the `handleDayClick` function', () => {
    const component = shallow(<MultiDayPicker {...defaultProps} />);

    expect(component.instance().handleDayClick()).toHaveBeenCalled();
  });

Буду признателен за любые идеи или помощь, заранее спасибо

...