vite-jest
vite-jest copied to clipboard
react ts app `yarn test:unit` fails with `SyntaxError: Cannot use import statement outside a module`
Thank you for your work on this package and apologies in advance if this issue is the result of user error.
I see the following error in the example react-app-ts and also when incorporating vite-jest
into my own react app.
/code/vite-jest/examples/react-app-ts/node_modules/vite-jest/bin/vite-jest.js:3
import fs from 'fs'
^^^^^^
SyntaxError: Cannot use import statement outside a module
at Module._compile (internal/modules/cjs/loader.js:895:18)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
at Module.load (internal/modules/cjs/loader.js:815:32)
at Function.Module._load (internal/modules/cjs/loader.js:727:14)
at Function.Module.runMain (internal/modules/cjs/loader.js:1047:10)
at internal/main/run_main_module.js:17:11
I am getting a very similar issue specifically when testing React components following the same example. In this case, react-hook-form seems to be the offender.
![Screen Shot 2021-08-27 at 10 11 29 AM](https://user-images.githubusercontent.com/29241619/131157170-583a6973-32cf-4470-a3a9-fb5ad263ae75.png)
I can post more details if that is helpful
Maybe more related to #11 though now that I read through it
Edit: for clarification this is using npm v7.19.0
I think this is a Yarn 2 specific problem, and to be more specific this is because Yarn 2 cannot currently run ES Modules.
See https://github.com/yarnpkg/berry/issues/638
When I try to run the example with pnpm it works, but not using yarn
@mijamo The error in my screenshot was with npm v7.19.0. I have not tried pnpm, although I did observe the same issue with Yarn 2 as you indicated as well.