I have IDEA 2020.1.2 Ultimate Edition, I have NodeJS plugin installed that is required for running Mocha tests with IDE.
When I run this simple test with IDEA (not with npm test
in console)
import assert from "assert";
it('must return true', () => {
assert.equal(true, true);
});
it gives me the following error:
/usr/bin/node /home/chriego/Projects/personal/my-project/frontend/node_modules/mocha/bin/mocha --ui bdd --reporter /opt/idea/plugins/NodeJS/js/mocha-intellij/lib/mochaIntellijReporter.js /home/chriego/Projects/personal/my-project/frontend/tests/time.js --grep "^должно возвращать true$"
/home/chriego/Projects/personal/my-project/frontend/tests/time.js:1
import assert from "assert";
^^^^^^
SyntaxError: Cannot use import statement outside a module
at wrapSafe (internal/modules/cjs/loader.js:1116:16)
at Module._compile (internal/modules/cjs/loader.js:1164:27)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1220:10)
at Module.load (internal/modules/cjs/loader.js:1049:32)
at Function.Module._load (internal/modules/cjs/loader.js:937:14)
at Module.require (internal/modules/cjs/loader.js:1089:19)
at require (internal/modules/cjs/helpers.js:73:18)
at Object.exports.requireOrImport (/home/chriego/Projects/personal/my-project/frontend/node_modules/mocha/lib/esm-utils.js:20:12)
at Object.exports.loadFilesAsync (/home/chriego/Projects/personal/my-project/frontend/node_modules/mocha/lib/esm-utils.js:33:34)
at Mocha.loadFilesAsync (/home/chriego/Projects/personal/my-project/frontend/node_modules/mocha/lib/mocha.js:421:19)
at singleRun (/home/chriego/Projects/personal/my-project/frontend/node_modules/mocha/lib/cli/run-helpers.js:156:15)
at exports.runMocha (/home/chriego/Projects/personal/my-project/frontend/node_modules/mocha/lib/cli/run-helpers.js:225:10)
at Object.exports.handler (/home/chriego/Projects/personal/my-project/frontend/node_modules/mocha/lib/cli/run.js:366:11)
at /home/chriego/Projects/personal/my-project/frontend/node_modules/mocha/node_modules/yargs/lib/command.js:241:49
Process finished with exit code 1
I know that I have to use Babel, and I can set it up and run Mocha from console with ES6 features, but how do I tell IDEA to use ES6 features?
All I had to do was:
npm install --save-dev babel-register
--require babel-core/register
in Mocha test run configuration settings under "Extra Mocha options" (this deprecates --compilers
option, see https://github.com/mochajs/mocha/wiki/compilers-deprecation ). To make it permanent, edit Mocha template for run configuration:
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.