Как проверить условный рендеринг компонентов с использованием Jest и Enzyme - PullRequest
0 голосов
/ 18 ноября 2018

У меня есть блок условного рендеринга в моем компоненте React, который определяется как:

 {(props.email.primary.isPending) ?
          <PendingComponent emailAddress={props.email.primary.pendingEmail} />
          :
          <SecondaryEmailContact
            state={props.email.secondary}
            retrieveInputData={props.retrieveInputData}
            handleSecondaryEmailToggle={props.handleSecondaryEmailToggle}
            handleDelete={props.handleDelete}
            handleSubmitContact={props.handleSubmitContact}
            refs={props.refs}
          />
        }

Я написал тестовый пример, как показано ниже:

it('renders the EditEmailContact component', () => {
        wrapper=mount(<EditEmailContact 
          email={emailState}
          handleSecondaryEmailToggle={handleSecondaryEmailToggleFn}
          retrieveInputData={retrieveInputDataFn}
          handleDelete={handleDeleteFn}
          handleSubmitContact={handleSubmitContactFn} />);
    });
  });

Итак, в моем тестерезультат показывает строку, в которой определяется оператор условного рендеринга, не проверяется.Итак, как мне проверить условный рендеринг?

1 Ответ

0 голосов
/ 19 ноября 2018

Вы можете создать два разных тестовых примера, передавая реквизиты вашему компоненту.Например:

const yourProps = {
    email: {
      primary: {
         isPending: true // create test cases passing a different value
      },

    },
  }

  const component = mount(<YourComponent {...yourProps} />)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...