@fronter-up

Как протестировать закрытие модального окна, react?

Добрый день! Подскажите пожалуйста как протестировать метод handleCloseModal в компоненте?
Сам компонент
const TextModal = ({
  isOpen,
  isLoading,
  onClose,
  handleSubmit,
  onSubmit,
  update,
}) => {
  const handleCloseModal = () => {
    onClose();
    update()
  };
  return (
    <Modal
      isOpen={isOpen}
      handleClose={handleCloseModal}
    >
      <Form onSubmit={handleSubmit(onSubmit)}>
        <ModalBody>
          <Field
            name="text"
            component={FormGroupField}
            label="Text"
          />
        </ModalBody>
        <ModalFooter>
          <FormSubmit
            className="button is-primary"
            isLoading={isLoading}
          >
            Save
          </FormSubmit>
        </ModalFooter>
      </Form>
    </Modal>
  );
};


Для тестов использую jest/enzyme
В таком случае ошибка
it('test closeModal', () => {
    const props = {
      isOpen: true,
      isLoading: false,
      change: jest.fn(),
      onSubmit: jest.fn(),
      onClose: jest.fn(),
      handleSubmit: jest.fn(),
    };

    const enzymeWrapper = shallow(<TextModal {...props} />);
    enzymeWrapper.instance().handleCloseModal();

    expect(props.onClose).toHaveBeenCalledTimes(1);
    expect(props.update).toHaveBeenCalledTimes(1);
  });


Буду благодарен за помощь!
  • Вопрос задан
  • 405 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы