Как импортировать модули во время тестов, используя jest? - PullRequest
0 голосов
/ 21 февраля 2020

Я использую React, Enzyme и Jest. Это мой компонент подключения, который отображает только кнопку

import { connect } from 'react-redux';
import { withStyles } from '@material-ui/core/styles';

import PlaidLinkButton from 'react-plaid-link-button';


const plaidEnv = process.env.REACT_APP_PLAID_ENV

export class ConnectStep extends Component {

  handleOnSuccessBroker = async (token, metadata) => {
    //unimportant
  };

  render() {
    const { classes } = this.props;
    return (
        <PlaidLinkButton
          buttonProps={{
            className: classes.connectButton,
            id: 'button',
          }}
          plaidLinkProps={{
            clientName: '###',
            key: '###',
            env: plaidEnv,
            product: ['transactions'],
            onSuccess: this.handleOnSuccessBroker,
            token: ''
          }}
        >
          {this.props.plaid.accounts.length > 0 ? 'CONNECTED' : 'Start'}
            </PlaidLinkButton>
    );
  }
}

Как вы можете видеть, я импортирую PlaidLinkButton, но jest выдает эту ошибку:


    ###/node_modules/react-plaid-link-button/dist/react-plaid-link-button/react-plaid-link-button.js:19
    import PropTypes from 'prop-types';
           ^^^^^^^^^

    SyntaxError: Unexpected identifier

      4 | 
      5 | import { setPlaid } from '../../../actions/actions';
    > 6 | import PlaidLinkButton from 'react-plaid-link-button';

Чего мне не хватает? Я сделал успешные тестовые наборы для других компонентов, которые также импортируют модули. Но именно этот вызывает у меня проблемы.

1 Ответ

0 голосов
/ 21 февраля 2020
    import PropTypes from 'prop-types';
           ^^^^^^^^^

    SyntaxError: Unexpected identifier

Вероятно, это проблема, связанная с вашей конфигурацией Jest / Babel, поскольку модули не компилируются правильно. Вам нужно будет удалить, где бы вы ни установили опцию Babel modules на false.

Связанные: https://github.com/facebook/react/issues/14399

...