diff --git a/packages/babel-cli/test/index.js b/packages/babel-cli/test/index.js index 50dd88d0cd..c55c509dde 100644 --- a/packages/babel-cli/test/index.js +++ b/packages/babel-cli/test/index.js @@ -36,7 +36,9 @@ const readDir = function(loc, filter) { const saveInFiles = function(files) { // Place an empty .babelrc in each test so tests won't unexpectedly get to repo-level config. - outputFileSync(".babelrc", "{}"); + if (!fs.existsSync(".babelrc")) { + outputFileSync(".babelrc", "{}"); + } Object.keys(files).forEach(function(filename) { const content = files[filename]; diff --git a/packages/babel-node/src/_babel-node.js b/packages/babel-node/src/_babel-node.js index 98130bb600..e680f1ec88 100644 --- a/packages/babel-node/src/_babel-node.js +++ b/packages/babel-node/src/_babel-node.js @@ -22,6 +22,10 @@ function collect(value, previousValue): Array { } program.option("-e, --eval [script]", "Evaluate script"); +program.option( + "--no-babelrc", + "Specify whether or not to use .babelrc and .babelignore files", +); program.option("-r, --require [module]", "Require module"); program.option("-p, --print [code]", "Evaluate script and print result"); program.option( @@ -47,6 +51,7 @@ program.usage("[options] [ -e script | script.js ] [arguments]"); program.parse(process.argv); register({ + babelrc: program.babelrc, extensions: program.extensions, ignore: program.ignore, only: program.only, diff --git a/packages/babel-node/test/fixtures/babel-node/--no-babelrc/.babelrc b/packages/babel-node/test/fixtures/babel-node/--no-babelrc/.babelrc new file mode 100644 index 0000000000..8dba884533 --- /dev/null +++ b/packages/babel-node/test/fixtures/babel-node/--no-babelrc/.babelrc @@ -0,0 +1,3 @@ +{ + "plugins": ["./logPlugin.js"] +} diff --git a/packages/babel-node/test/fixtures/babel-node/--no-babelrc/in-files/index.js b/packages/babel-node/test/fixtures/babel-node/--no-babelrc/in-files/index.js new file mode 100644 index 0000000000..85ce559e8f --- /dev/null +++ b/packages/babel-node/test/fixtures/babel-node/--no-babelrc/in-files/index.js @@ -0,0 +1 @@ +console.log("foo"); diff --git a/packages/babel-node/test/fixtures/babel-node/--no-babelrc/in-files/logPlugin.js b/packages/babel-node/test/fixtures/babel-node/--no-babelrc/in-files/logPlugin.js new file mode 100644 index 0000000000..afb98ab22a --- /dev/null +++ b/packages/babel-node/test/fixtures/babel-node/--no-babelrc/in-files/logPlugin.js @@ -0,0 +1,4 @@ +module.exports = function () { + console.log("Plugin was loaded, shouldn't appear due to --no-babelrc"); + return {} +} diff --git a/packages/babel-node/test/fixtures/babel-node/--no-babelrc/options.json b/packages/babel-node/test/fixtures/babel-node/--no-babelrc/options.json new file mode 100644 index 0000000000..c5363572cd --- /dev/null +++ b/packages/babel-node/test/fixtures/babel-node/--no-babelrc/options.json @@ -0,0 +1,3 @@ +{ + "args": ["--no-babelrc", "index"] +} diff --git a/packages/babel-node/test/fixtures/babel-node/--no-babelrc/stdout.txt b/packages/babel-node/test/fixtures/babel-node/--no-babelrc/stdout.txt new file mode 100644 index 0000000000..257cc5642c --- /dev/null +++ b/packages/babel-node/test/fixtures/babel-node/--no-babelrc/stdout.txt @@ -0,0 +1 @@ +foo