create-react-app-typescript
create-react-app-typescript copied to clipboard
Unit tests are failing when using dynamic imports
Is this a bug report?
Yes.
Can you also reproduce the problem with npm 4.x?
Yes.
Which terms did you search for in User Guide?
Unexpected token, Unexpected token import, dynamic import
Environment
npm ls react-scripts-ts(if you haven’t ejected): 2.16.0node -v: 8.11.2npm -v: 5.6.0yarn --version(if you use Yarn): 1.7.0npm ls react-scripts-ts(if you haven’t ejected):
Then, specify:
- Operating system: macOS Sierra
- Browser and version (if relevant): Chrome
Steps to Reproduce
Go to cra-workspaces#dynamic-import:
- Clone repo
- Run
yarn installfrom root - Run
yarn test
NOTE: Use yarn start to run the app and confirm it actually works.
Expected Behavior
Tests would pass without errors.
Actual Behavior
Tests are failing with:
/Users/rolandjitsu/Projects/cra-workspaces/apps/cra/src/app.tsx: Unexpected token (5:33)
3 | import Loadable from 'react-loadable';
4 | var DynamicComponent = Loadable({
> 5 | loader: function () { return import('./dynamic'); },
| ^
6 | loading: function () { return React.createElement("span", null, "Loading ..."); }
7 | });
8 | var App = /** @class */ (function (_super) {
Reproducible Demo
See cra-workspaces#dynamic-import and use instructions above to reproduce.
Try disabling allowSyntheticDefaultImports in your tsconfig.json if you have it enabled
This was fixed in ts-jest https://github.com/kulshekhar/ts-jest/issues/258#issuecomment-410236002.
I tried to get it upgraded locally in react-scripts-ts but failed, maybe I'm missing something as I'm pretty new to the whole ecosystem.