Jest - неожиданный экспорт токенов - PullRequest
0 голосов
/ 15 января 2019

Я создал тест для моего подключенного компонента. В один файл я импортирую модуль «Локализация», который находится вне корневой папки проекта. Он не скомпилирован в ES5, и Jest сообщает об ошибке SyntaxError: неожиданный экспорт токена. Как заставить Jest преобразовать этот файл?

           1 | import axios from 'axios';
           2 | import * as types from './actionTypes';
 error   > 3 | import Localization from '../../../../React/MainMethods/localization';

У меня есть .babelrc с предустановкой env.

{
    "presets": ["env", "react"]
}

package.json

//...
"devDependencies": {
            "babel-core": "^6.26.0",
            "babel-jest": "^23.4.0",
            "babel-loader": "^7.1.2",
            "babel-plugin-lodash": "^3.3.2",
            "babel-plugin-syntax-object-rest-spread": "^6.13.0",
            "babel-plugin-transform-class-properties": "^6.24.1",
            "babel-plugin-transform-decorators-legacy": "^1.3.4",
            "babel-preset-env": "^1.6.1",
            "babel-preset-es2015": "^6.24.1",
            "babel-preset-react": "^6.24.1",
            "babel-preset-stage-0": "^6.24.1",
            "chalk": "^2.3.0",
            "cross-env": "^5.1.1",
            "css-loader": "^0.23.1",
            "enzyme": "^3.3.0",
            "enzyme-adapter-react-15": "^1.0.6",
            "jest": "^23.4.1",
            "jest-cli": "^23.4.1",
            "parallel-webpack": "^1.5.0",
            "progress-bar-webpack-plugin": "^1.11.0",
            "react-test-renderer": "^15.6.2",
            "redux-immutable-state-invariant": "^2.1.0",
            "redux-mock-store": "^1.5.3",
            "style-loader": "^0.13.1",
            "webpack": "^4.16.1",
            "webpack-cli": "^3.0.8"
        },
//...

1 Ответ

0 голосов
/ 15 января 2019

Jest автоматически преобразует ваши файлы в ES6, если в вашем проекте есть файл babel.config. Если вам нужен больший контроль, вы можете добавить ключ Jest в свой файл package.json ...

"jest": {
    "transform": {}
  }

Кроме того, взгляните на проект Babel-Jest, который будет компилировать модули ES6 во время тестирования.

https://github.com/facebook/jest/tree/master/packages/babel-jest#setup

...