реагировать формик, проверить, если отправить функцию, вызываемую по щелчку, фермент - PullRequest
0 голосов
/ 11 ноября 2018

Я тестирую компонент реагирования, который содержит форму (с использованием formik), и мне нужно проверить, нажата ли кнопка «Отправить», вызвана ли функция отправки.

на данный момент тест не пройден. теперь форма имеет обязательную схему полей, используя yup поэтому мне было интересно, нужно ли мне заполнять все поля перед тестированием. потому что в данный момент он не отправляет, пока в форме не возникнут ошибки, т.е. если необходимые поля пусты. Так что же мешает проверке нажатия кнопки и вызываемой функции или нет?

describe('submitform', () => {
  let wrapper = '';
  const handleSubmit = jest.fn();
  beforeEach(() => {
        wrapper = mount(<ExampleButton  >
                          <span className="visible-sm">Next</span>
                          <span className="visible-xs font-entity">
                            &rsaquo;
                          </span>
                          </ExampleButton>
        );
      });
  afterEach(() => {
        wrapper.unmount();
      });
  it('call function on click',async ()=> {    

    // let btn = wrapper.find('#btnEx').find('button').find('#btnEx');
    let btn = wrapper.find('button').simulate('click');
    console.log('wrapper : ',btn.debug());
    // btn.props().onClick();
    expect(handleSubmit).toHaveBeenCalled();
  });
})

как мне заполнить поля перед тестированием? или мне даже нужно заполнить поля перед тестированием по клику?

...