From 706ce99d27b79e1a6ab9bf4417588711c2e7a592 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bazyli=20Brz=C3=B3ska?= Date: Tue, 11 Apr 2017 09:56:15 +0200 Subject: [PATCH] Add support for Babel 7 in babel-jest (#3271) * Add support for Babel 7 in babel-jest * Fix Flow enforcing string literals on require() * Update index.js --- packages/babel-jest/src/index.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/babel-jest/src/index.js b/packages/babel-jest/src/index.js index 9a258e9505a4..a5840da4c474 100644 --- a/packages/babel-jest/src/index.js +++ b/packages/babel-jest/src/index.js @@ -19,6 +19,7 @@ const jestPreset = require('babel-preset-jest'); const path = require('path'); const BABELRC_FILENAME = '.babelrc'; +const BABELRC_JS_FILENAME = '.babelrc.js'; const THIS_FILE = fs.readFileSync(__filename); const cache = Object.create(null); @@ -39,6 +40,12 @@ const getBabelRC = (filename, {useCache}) => { cache[directory] = fs.readFileSync(configFilePath, 'utf8'); break; } + const configJsFilePath = path.join(directory, BABELRC_JS_FILENAME); + if (fs.existsSync(configJsFilePath)) { + // $FlowFixMe + cache[directory] = JSON.stringify(require(configJsFilePath)); + break; + } } paths.forEach(directoryPath => { cache[directoryPath] = cache[directory]; @@ -91,7 +98,7 @@ const createTransformer = (options: any) => { babel = require('babel-core'); } - if (!babel.util.canCompile(filename)) { + if (babel.util && !babel.util.canCompile(filename)) { return src; }