From 29de28000662cade007718b7d606447a4b53dab6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Mon, 29 Nov 2021 21:48:34 +0100 Subject: [PATCH] Use Node.js interop when importing `lib` in `test` (#13995) --- babel.config.js | 44 ++++++++++++++++--- .../test/rules/dry-error-messages.js | 2 +- .../rules/report-error-message-formtat.js | 2 +- .../test/rules/no-deprecated-clone.js | 2 +- .../test/rules/no-undefined-identifier.js | 2 +- .../test/rules/plugin-name.js | 2 +- .../babel-eslint-plugin/test/rules/new-cap.js | 2 +- .../test/rules/no-invalid-this.js | 2 +- .../test/rules/no-unused-expressions.js | 2 +- .../test/rules/object-curly-spacing.js | 2 +- eslint/babel-eslint-plugin/test/rules/semi.js | 2 +- packages/babel-code-frame/test/index.js | 4 +- packages/babel-core/test/api.js | 6 ++- packages/babel-core/test/config-chain.js | 6 ++- packages/babel-core/test/config-loading.js | 4 +- packages/babel-core/test/evaluation.js | 4 +- packages/babel-core/test/path.js | 4 +- packages/babel-core/test/plugins.js | 2 +- packages/babel-core/test/transformation.js | 2 +- .../babel-generator/test/arrow-functions.js | 4 +- packages/babel-generator/test/index.js | 9 ++-- .../test/index.js | 3 +- .../browserslist-extends.spec.js | 4 +- .../custom-browserslist-env.spec.js | 4 +- .../load-browserslist-package-json.spec.js | 4 +- .../load-browserslistrc.spec.js | 4 +- .../test/targets-parser.spec.js | 4 +- .../test/index.js | 7 ++- packages/babel-highlight/test/index.js | 4 +- .../test/hasMoreThanOneBinding.test.js | 5 ++- .../test/get-option-specific-excludes.spec.js | 3 +- packages/babel-preset-env/test/index.spec.js | 15 ++++--- .../test/normalize-options.spec.js | 3 +- .../test/normalize-options.spec.js | 4 +- packages/babel-preset-react/test/index.js | 9 ++-- .../test/normalize-options.skip-bundled.js | 3 +- .../test/normalize-options.skip-bundled.js | 3 +- packages/babel-template/test/index.js | 7 ++- packages/babel-traverse/test/ancestry.js | 4 +- .../babel-traverse/test/arrow-transform.js | 4 +- packages/babel-traverse/test/conversion.js | 7 ++- packages/babel-traverse/test/evaluation.js | 4 +- packages/babel-traverse/test/family.js | 4 +- packages/babel-traverse/test/inference.js | 4 +- packages/babel-traverse/test/introspection.js | 4 +- packages/babel-traverse/test/modification.js | 7 ++- packages/babel-traverse/test/removal.js | 7 ++- packages/babel-traverse/test/replacement.js | 7 ++- packages/babel-traverse/test/scope.js | 4 +- packages/babel-traverse/test/traverse.js | 4 +- packages/babel-types/test/converters.js | 4 +- 51 files changed, 186 insertions(+), 73 deletions(-) diff --git a/babel.config.js b/babel.config.js index 5ea6cfb229e9..9ce9beacdc7f 100644 --- a/babel.config.js +++ b/babel.config.js @@ -165,9 +165,6 @@ module.exports = function (api) { ["@babel/proposal-object-rest-spread", { useBuiltIns: true }], convertESM ? "@babel/proposal-export-namespace-from" : null, - convertESM - ? ["@babel/transform-modules-commonjs", { importInterop }] - : null, convertESM ? pluginImportMetaUrl : null, pluginPackageJsonMacro, @@ -202,7 +199,10 @@ module.exports = function (api) { ].map(normalize), plugins: [ // Explicitly use the lazy version of CommonJS modules. - ["@babel/transform-modules-commonjs", { importInterop, lazy: true }], + [ + "@babel/transform-modules-commonjs", + { importInterop: importInteropSrc, lazy: true }, + ], ], }, convertESM && { @@ -215,6 +215,24 @@ module.exports = function (api) { assumptions: sourceAssumptions, plugins: [transformNamedBabelTypesImportToDestructuring], }, + convertESM && { + test: sources.map(normalize), + plugins: [ + [ + "@babel/transform-modules-commonjs", + { importInterop: importInteropSrc }, + ], + ], + }, + { + test: sources.map(source => normalize(source.replace("/src", "/test"))), + plugins: [ + [ + "@babel/transform-modules-commonjs", + { importInterop: importInteropTest }, + ], + ], + }, { test: unambiguousSources.map(normalize), sourceType: "unambiguous", @@ -244,7 +262,7 @@ const monorepoPackages = ["codemods", "eslint", "packages"] .reduce((a, b) => a.concat(b)) .map(name => name.replace(/^babel-/, "@babel/")); -function importInterop(source) { +function importInteropSrc(source) { if ( // These internal files are "real CJS" (whose default export is // on module.exports) and not compiled ESM. @@ -266,6 +284,22 @@ function importInterop(source) { return "node"; } +function importInteropTest(source) { + // This file will soon have an esm entrypoint + if (source === "@babel/helper-plugin-test-runner") { + return "none"; + } + if ( + // non-test files + !source.startsWith(".") || + // lib files + /(?:\.\.\/)+(?:babel-[a-z-]+\/)?lib/.test(source) + ) { + return "node"; + } + return "babel"; +} + // env vars from the cli are always strings, so !!ENV_VAR returns true for "false" function bool(value) { return value && value !== "false" && value !== "0"; diff --git a/eslint/babel-eslint-plugin-development-internal/test/rules/dry-error-messages.js b/eslint/babel-eslint-plugin-development-internal/test/rules/dry-error-messages.js index 555e1e4afbab..ebf21288950e 100644 --- a/eslint/babel-eslint-plugin-development-internal/test/rules/dry-error-messages.js +++ b/eslint/babel-eslint-plugin-development-internal/test/rules/dry-error-messages.js @@ -12,7 +12,7 @@ const MODULE_PARENT_DIR = path.resolve(dirname, "test/errorsModule.js"); const ruleTester = new RuleTester(); -ruleTester.run("dry-error-messages", rule, { +ruleTester.run("dry-error-messages", rule.default, { valid: [ // Ignores malformed `this.raise` invocations. { diff --git a/eslint/babel-eslint-plugin-development-internal/test/rules/report-error-message-formtat.js b/eslint/babel-eslint-plugin-development-internal/test/rules/report-error-message-formtat.js index 6ef3b7c427c8..f69824599882 100644 --- a/eslint/babel-eslint-plugin-development-internal/test/rules/report-error-message-formtat.js +++ b/eslint/babel-eslint-plugin-development-internal/test/rules/report-error-message-formtat.js @@ -3,7 +3,7 @@ import rule from "../../lib/rules/report-error-message-format.js"; const ruleTester = new RuleTester(); -ruleTester.run("report-error-message-format", rule, { +ruleTester.run("report-error-message-format", rule.default, { valid: [ "makeErrorTemplates({});", 'makeErrorTemplates({ ThisIsAnError: "This is an error." });', diff --git a/eslint/babel-eslint-plugin-development/test/rules/no-deprecated-clone.js b/eslint/babel-eslint-plugin-development/test/rules/no-deprecated-clone.js index 1d0f6507cd3b..ec2a39cedd55 100644 --- a/eslint/babel-eslint-plugin-development/test/rules/no-deprecated-clone.js +++ b/eslint/babel-eslint-plugin-development/test/rules/no-deprecated-clone.js @@ -9,7 +9,7 @@ const ruleTester = new RuleTester({ parserOptions: { sourceType: "module" }, }); -ruleTester.run("no-deprecated-clone", rule, { +ruleTester.run("no-deprecated-clone", rule.default, { valid: [ `_.clone(obj)`, `_.cloneDeep(obj)`, diff --git a/eslint/babel-eslint-plugin-development/test/rules/no-undefined-identifier.js b/eslint/babel-eslint-plugin-development/test/rules/no-undefined-identifier.js index b1e59fce37ad..8c6c2fe583ce 100644 --- a/eslint/babel-eslint-plugin-development/test/rules/no-undefined-identifier.js +++ b/eslint/babel-eslint-plugin-development/test/rules/no-undefined-identifier.js @@ -8,7 +8,7 @@ const ruleTester = new RuleTester({ parserOptions: { sourceType: "module" }, }); -ruleTester.run("no-undefined-identifier", rule, { +ruleTester.run("no-undefined-identifier", rule.default, { valid: [ `_.identifier("undefined")`, `_.Identifier("undefined")`, diff --git a/eslint/babel-eslint-plugin-development/test/rules/plugin-name.js b/eslint/babel-eslint-plugin-development/test/rules/plugin-name.js index 1424e461c564..c3ae15b496fc 100644 --- a/eslint/babel-eslint-plugin-development/test/rules/plugin-name.js +++ b/eslint/babel-eslint-plugin-development/test/rules/plugin-name.js @@ -6,7 +6,7 @@ const missingNameError = "This Babel plugin doesn't have a 'name' property."; const ruleTester = new RuleTester(); -ruleTester.run("plugin-name", rule, { +ruleTester.run("plugin-name", rule.default, { valid: [ `export default function () { return { name: "test-plugin" } }`, `import { declare } from "@babel/helper-plugin-utils"; declare(() => { return { name: "test-plugin" } })`, diff --git a/eslint/babel-eslint-plugin/test/rules/new-cap.js b/eslint/babel-eslint-plugin/test/rules/new-cap.js index f68db7352f19..7d81d3ee60ae 100644 --- a/eslint/babel-eslint-plugin/test/rules/new-cap.js +++ b/eslint/babel-eslint-plugin/test/rules/new-cap.js @@ -2,7 +2,7 @@ import rule from "../../lib/rules/new-cap.js"; import RuleTester from "../../../babel-eslint-shared-fixtures/utils/RuleTester.js"; const ruleTester = new RuleTester(); -ruleTester.run("@babel/new-cap", rule, { +ruleTester.run("@babel/new-cap", rule.default, { valid: [ { code: "@MyDecorator(123) class MyClass{}", diff --git a/eslint/babel-eslint-plugin/test/rules/no-invalid-this.js b/eslint/babel-eslint-plugin/test/rules/no-invalid-this.js index bbeadb4a0247..0fcd7ed57170 100644 --- a/eslint/babel-eslint-plugin/test/rules/no-invalid-this.js +++ b/eslint/babel-eslint-plugin/test/rules/no-invalid-this.js @@ -165,7 +165,7 @@ const patterns = [ ]; const ruleTester = new RuleTester(); -ruleTester.run("@babel/no-invalid-this", rule, { +ruleTester.run("@babel/no-invalid-this", rule.default, { valid: extractPatterns(patterns, "valid"), invalid: extractPatterns(patterns, "invalid"), }); diff --git a/eslint/babel-eslint-plugin/test/rules/no-unused-expressions.js b/eslint/babel-eslint-plugin/test/rules/no-unused-expressions.js index 85b1149165f3..08a9b07250f8 100644 --- a/eslint/babel-eslint-plugin/test/rules/no-unused-expressions.js +++ b/eslint/babel-eslint-plugin/test/rules/no-unused-expressions.js @@ -2,7 +2,7 @@ import rule from "../../lib/rules/no-unused-expressions.js"; import RuleTester from "../../../babel-eslint-shared-fixtures/utils/RuleTester.js"; const ruleTester = new RuleTester(); -ruleTester.run("@babel/no-unused-expressions", rule, { +ruleTester.run("@babel/no-unused-expressions", rule.default, { valid: [ "let a = do { if (foo) { foo.bar; } }", "let a = do { foo; }", diff --git a/eslint/babel-eslint-plugin/test/rules/object-curly-spacing.js b/eslint/babel-eslint-plugin/test/rules/object-curly-spacing.js index 26ceb122cb2f..7cd3289f46d7 100644 --- a/eslint/babel-eslint-plugin/test/rules/object-curly-spacing.js +++ b/eslint/babel-eslint-plugin/test/rules/object-curly-spacing.js @@ -2,7 +2,7 @@ import rule from "../../lib/rules/object-curly-spacing.js"; import RuleTester from "../../../babel-eslint-shared-fixtures/utils/RuleTester.js"; const ruleTester = new RuleTester(); -ruleTester.run("@babel/object-curly-spacing", rule, { +ruleTester.run("@babel/object-curly-spacing", rule.default, { valid: ['export x from "mod";'], invalid: [], }); diff --git a/eslint/babel-eslint-plugin/test/rules/semi.js b/eslint/babel-eslint-plugin/test/rules/semi.js index b6c75b9857df..e1f2afd8410c 100644 --- a/eslint/babel-eslint-plugin/test/rules/semi.js +++ b/eslint/babel-eslint-plugin/test/rules/semi.js @@ -3,7 +3,7 @@ import RuleTester from "../../../babel-eslint-shared-fixtures/utils/RuleTester.j const ruleTester = new RuleTester(); -ruleTester.run("semi", rule, { +ruleTester.run("semi", rule.default, { valid: [ "class Foo { bar = 'example'; }", "class Foo { #bar = 'example'; }", diff --git a/packages/babel-code-frame/test/index.js b/packages/babel-code-frame/test/index.js index 926d0e11591e..9d267d24a977 100644 --- a/packages/babel-code-frame/test/index.js +++ b/packages/babel-code-frame/test/index.js @@ -1,6 +1,8 @@ import chalk from "chalk"; import stripAnsi from "strip-ansi"; -import codeFrame, { codeFrameColumns } from "../lib/index.js"; + +import _codeFrame, { codeFrameColumns } from "../lib/index.js"; +const codeFrame = _codeFrame.default; describe("@babel/code-frame", function () { test("basic usage", function () { diff --git a/packages/babel-core/test/api.js b/packages/babel-core/test/api.js index 4921337f5514..1fea7a1a831e 100644 --- a/packages/babel-core/test/api.js +++ b/packages/babel-core/test/api.js @@ -1,10 +1,12 @@ -import * as babel from "../lib/index.js"; +import babel from "../lib/index.js"; import sourceMap from "source-map"; import path from "path"; -import Plugin from "../lib/config/plugin.js"; import generator from "@babel/generator"; import { fileURLToPath } from "url"; +import _Plugin from "../lib/config/plugin.js"; +const Plugin = _Plugin.default; + import presetEnv from "../../babel-preset-env/lib/index.js"; import pluginSyntaxFlow from "../../babel-plugin-syntax-flow/lib/index.js"; import pluginFlowStripTypes from "../../babel-plugin-transform-flow-strip-types/lib/index.js"; diff --git a/packages/babel-core/test/config-chain.js b/packages/babel-core/test/config-chain.js index f920ddc456ed..e8a7d967062a 100644 --- a/packages/babel-core/test/config-chain.js +++ b/packages/babel-core/test/config-chain.js @@ -2,8 +2,10 @@ import fs from "fs"; import os from "os"; import path from "path"; import { fileURLToPath } from "url"; -import * as babel from "../lib/index.js"; -import getTargets from "@babel/helper-compilation-targets"; +import babel from "../lib/index.js"; + +import _getTargets from "@babel/helper-compilation-targets"; +const getTargets = _getTargets.default; const dirname = path.dirname(fileURLToPath(import.meta.url)); diff --git a/packages/babel-core/test/config-loading.js b/packages/babel-core/test/config-loading.js index 6607c7d794c3..46e1758b0960 100644 --- a/packages/babel-core/test/config-loading.js +++ b/packages/babel-core/test/config-loading.js @@ -1,4 +1,4 @@ -import loadConfigRunner, { +import _loadConfigRunner, { loadPartialConfig, createConfigItem, } from "../lib/config/index.js"; @@ -8,7 +8,7 @@ import { createRequire } from "module"; const require = createRequire(import.meta.url); -const loadConfig = loadConfigRunner.sync; +const loadConfig = _loadConfigRunner.default.sync; describe("@babel/core config loading", () => { const FILEPATH = path.join( diff --git a/packages/babel-core/test/evaluation.js b/packages/babel-core/test/evaluation.js index ffe9b5a3a2de..2785cb61424e 100644 --- a/packages/babel-core/test/evaluation.js +++ b/packages/babel-core/test/evaluation.js @@ -1,6 +1,8 @@ -import traverse from "@babel/traverse"; import { parse } from "@babel/parser"; +import _traverse from "@babel/traverse"; +const traverse = _traverse.default; + describe("evaluation", function () { function addTest(code, type, value, notConfident) { it(type + ": " + code, function () { diff --git a/packages/babel-core/test/path.js b/packages/babel-core/test/path.js index 522f4d1fb620..1ef571ae1464 100644 --- a/packages/babel-core/test/path.js +++ b/packages/babel-core/test/path.js @@ -1,8 +1,10 @@ import { transform } from "../lib/index.js"; -import Plugin from "../lib/config/plugin.js"; import { fileURLToPath } from "url"; import path from "path"; +import _Plugin from "../lib/config/plugin.js"; +const Plugin = _Plugin.default; + const cwd = path.dirname(fileURLToPath(import.meta.url)); describe("traversal path", function () { diff --git a/packages/babel-core/test/plugins.js b/packages/babel-core/test/plugins.js index a7851bde5c3d..e8675f42c5f0 100644 --- a/packages/babel-core/test/plugins.js +++ b/packages/babel-core/test/plugins.js @@ -2,7 +2,7 @@ import runner from "@babel/helper-transform-fixture-test-runner"; import { fileURLToPath } from "url"; import path from "path"; -runner( +runner.default( path.join(path.dirname(fileURLToPath(import.meta.url)), "fixtures/plugins"), "plugins", ); diff --git a/packages/babel-core/test/transformation.js b/packages/babel-core/test/transformation.js index f4eb1ef790a4..fd3c3337eaae 100644 --- a/packages/babel-core/test/transformation.js +++ b/packages/babel-core/test/transformation.js @@ -2,7 +2,7 @@ import runner from "@babel/helper-transform-fixture-test-runner"; import { fileURLToPath } from "url"; import path from "path"; -runner( +runner.default( path.join( path.dirname(fileURLToPath(import.meta.url)), "/fixtures/transformation", diff --git a/packages/babel-generator/test/arrow-functions.js b/packages/babel-generator/test/arrow-functions.js index 9b52379193dd..9914f7a87afd 100644 --- a/packages/babel-generator/test/arrow-functions.js +++ b/packages/babel-generator/test/arrow-functions.js @@ -1,6 +1,8 @@ -import generate from "../lib/index.js"; import { parse } from "@babel/parser"; +import _generate from "../lib/index.js"; +const generate = _generate.default; + describe("parameter parentheses", () => { // Common source text for several snapshot tests const source = ` diff --git a/packages/babel-generator/test/index.js b/packages/babel-generator/test/index.js index 8cc083fb56ca..be3fc424b154 100644 --- a/packages/babel-generator/test/index.js +++ b/packages/babel-generator/test/index.js @@ -1,5 +1,3 @@ -import Printer from "../lib/printer.js"; -import generate, { CodeGenerator } from "../lib/index.js"; import { parse } from "@babel/parser"; import * as t from "@babel/types"; import fs from "fs"; @@ -8,6 +6,11 @@ import fixtures from "@babel/helper-fixtures"; import sourcemap from "source-map"; import { fileURLToPath } from "url"; +import _Printer from "../lib/printer.js"; +import _generate, { CodeGenerator } from "../lib/index.js"; +const Printer = _Printer.default; +const generate = _generate.default; + describe("generation", function () { it("completeness", function () { Object.keys(t.VISITOR_KEYS).forEach(function (type) { @@ -795,7 +798,7 @@ describe("CodeGenerator", function () { }); }); -const suites = fixtures( +const suites = fixtures.default( path.join(path.dirname(fileURLToPath(import.meta.url)), "fixtures"), ); diff --git a/packages/babel-helper-annotate-as-pure/test/index.js b/packages/babel-helper-annotate-as-pure/test/index.js index dc8d45f763fc..e7130287fc9d 100644 --- a/packages/babel-helper-annotate-as-pure/test/index.js +++ b/packages/babel-helper-annotate-as-pure/test/index.js @@ -1,4 +1,5 @@ -import annotateAsPure from "../lib/index.js"; +import _annotateAsPure from "../lib/index.js"; +const annotateAsPure = _annotateAsPure.default; describe("@babel/helper-annotate-as-pure", () => { it("will add leading comment", () => { diff --git a/packages/babel-helper-compilation-targets/test/browserslist-extends/browserslist-extends.spec.js b/packages/babel-helper-compilation-targets/test/browserslist-extends/browserslist-extends.spec.js index 7b695029469f..6f0612f40c8c 100644 --- a/packages/babel-helper-compilation-targets/test/browserslist-extends/browserslist-extends.spec.js +++ b/packages/babel-helper-compilation-targets/test/browserslist-extends/browserslist-extends.spec.js @@ -1,6 +1,8 @@ import { dirname, resolve } from "path"; import { fileURLToPath } from "url"; -import getTargets from "../../lib/index.js"; + +import _getTargets from "../../lib/index.js"; +const getTargets = _getTargets.default; const currentDir = dirname(fileURLToPath(import.meta.url)); diff --git a/packages/babel-helper-compilation-targets/test/custom-browserslist-env/custom-browserslist-env.spec.js b/packages/babel-helper-compilation-targets/test/custom-browserslist-env/custom-browserslist-env.spec.js index 2607732a6cb2..28007b8f8271 100644 --- a/packages/babel-helper-compilation-targets/test/custom-browserslist-env/custom-browserslist-env.spec.js +++ b/packages/babel-helper-compilation-targets/test/custom-browserslist-env/custom-browserslist-env.spec.js @@ -1,7 +1,9 @@ -import getTargets from "../../lib/index.js"; import { fileURLToPath } from "url"; import path from "path"; +import _getTargets from "../../lib/index.js"; +const getTargets = _getTargets.default; + it("allows custom browserslist env", () => { const actual = getTargets( {}, diff --git a/packages/babel-helper-compilation-targets/test/load-browserslist-package-json/load-browserslist-package-json.spec.js b/packages/babel-helper-compilation-targets/test/load-browserslist-package-json/load-browserslist-package-json.spec.js index d650b570f039..41de53ac9763 100644 --- a/packages/babel-helper-compilation-targets/test/load-browserslist-package-json/load-browserslist-package-json.spec.js +++ b/packages/babel-helper-compilation-targets/test/load-browserslist-package-json/load-browserslist-package-json.spec.js @@ -1,7 +1,9 @@ -import getTargets from "../../lib/index.js"; import { fileURLToPath } from "url"; import path from "path"; +import _getTargets from "../../lib/index.js"; +const getTargets = _getTargets.default; + const oldCwd = process.cwd(); beforeAll(() => { diff --git a/packages/babel-helper-compilation-targets/test/load-browserslistrc/load-browserslistrc.spec.js b/packages/babel-helper-compilation-targets/test/load-browserslistrc/load-browserslistrc.spec.js index ebd8eca358b9..78226efdce39 100644 --- a/packages/babel-helper-compilation-targets/test/load-browserslistrc/load-browserslistrc.spec.js +++ b/packages/babel-helper-compilation-targets/test/load-browserslistrc/load-browserslistrc.spec.js @@ -1,7 +1,9 @@ -import getTargets from "../../lib/index.js"; import { fileURLToPath } from "url"; import path from "path"; +import _getTargets from "../../lib/index.js"; +const getTargets = _getTargets.default; + const oldCwd = process.cwd(); beforeAll(() => { diff --git a/packages/babel-helper-compilation-targets/test/targets-parser.spec.js b/packages/babel-helper-compilation-targets/test/targets-parser.spec.js index 60451fb9a844..9b181469d4ef 100644 --- a/packages/babel-helper-compilation-targets/test/targets-parser.spec.js +++ b/packages/babel-helper-compilation-targets/test/targets-parser.spec.js @@ -1,7 +1,9 @@ import browserslist from "browserslist"; import { join, dirname } from "path"; import { fileURLToPath } from "url"; -import getTargets from "../lib/index.js"; + +import _getTargets from "../lib/index.js"; +const getTargets = _getTargets.default; describe("getTargets", () => { it("parses", () => { diff --git a/packages/babel-helper-optimise-call-expression/test/index.js b/packages/babel-helper-optimise-call-expression/test/index.js index a4fe3601725f..cee16fd03092 100644 --- a/packages/babel-helper-optimise-call-expression/test/index.js +++ b/packages/babel-helper-optimise-call-expression/test/index.js @@ -1,7 +1,10 @@ import { parse } from "@babel/parser"; -import generator from "@babel/generator"; import * as t from "@babel/types"; -import optimizeCallExpression from "../lib/index.js"; + +import _generator from "@babel/generator"; +import _optimizeCallExpression from "../lib/index.js"; +const generator = _generator.default; +const optimizeCallExpression = _optimizeCallExpression.default; function transformInput(input, thisIdentifier) { const ast = parse(input); diff --git a/packages/babel-highlight/test/index.js b/packages/babel-highlight/test/index.js index b6a7f4da4de7..7b94fdbf2270 100644 --- a/packages/babel-highlight/test/index.js +++ b/packages/babel-highlight/test/index.js @@ -1,6 +1,8 @@ import chalk from "chalk"; import stripAnsi from "strip-ansi"; -import highlight, { shouldHighlight, getChalk } from "../lib/index.js"; + +import _highlight, { shouldHighlight, getChalk } from "../lib/index.js"; +const highlight = _highlight.default; describe("@babel/highlight", function () { function stubColorSupport(supported) { diff --git a/packages/babel-plugin-proposal-object-rest-spread/test/hasMoreThanOneBinding.test.js b/packages/babel-plugin-proposal-object-rest-spread/test/hasMoreThanOneBinding.test.js index 3801fb8655db..fb727b32e0c3 100644 --- a/packages/babel-plugin-proposal-object-rest-spread/test/hasMoreThanOneBinding.test.js +++ b/packages/babel-plugin-proposal-object-rest-spread/test/hasMoreThanOneBinding.test.js @@ -1,5 +1,8 @@ import { parse } from "@babel/parser"; -import shouldStoreRHSInTemporaryVariable from "../lib/shouldStoreRHSInTemporaryVariable.js"; + +import _shouldStoreRHSInTemporaryVariable from "../lib/shouldStoreRHSInTemporaryVariable.js"; +const shouldStoreRHSInTemporaryVariable = + _shouldStoreRHSInTemporaryVariable.default; function getFistObjectPattern(program) { return parse(program, { sourceType: "module" }).program.body[0] diff --git a/packages/babel-preset-env/test/get-option-specific-excludes.spec.js b/packages/babel-preset-env/test/get-option-specific-excludes.spec.js index 4e5868f9aa24..5b57a8e6ca2b 100644 --- a/packages/babel-preset-env/test/get-option-specific-excludes.spec.js +++ b/packages/babel-preset-env/test/get-option-specific-excludes.spec.js @@ -1,4 +1,5 @@ -import getOptionSpecificExcludesFor from "../lib/get-option-specific-excludes.js"; +import _getOptionSpecificExcludesFor from "../lib/get-option-specific-excludes.js"; +const getOptionSpecificExcludesFor = _getOptionSpecificExcludesFor.default; describe("defaults", () => { describe("getOptionSpecificExcludesFor", () => { diff --git a/packages/babel-preset-env/test/index.spec.js b/packages/babel-preset-env/test/index.spec.js index 9c8c5173630f..1a1b6e8da794 100644 --- a/packages/babel-preset-env/test/index.spec.js +++ b/packages/babel-preset-env/test/index.spec.js @@ -1,11 +1,16 @@ // eslint-disable-next-line import/extensions import compatData from "@babel/compat-data/plugins"; -import * as babelPresetEnv from "../lib/index.js"; -import removeRegeneratorEntryPlugin from "../lib/polyfills/regenerator.js"; -import pluginLegacyBabelPolyfill from "../lib/polyfills/babel-polyfill.js"; -import transformations from "../lib/module-transformations.js"; -import availablePlugins from "../lib/available-plugins.js"; +import babelPresetEnv from "../lib/index.js"; + +import _removeRegeneratorEntryPlugin from "../lib/polyfills/regenerator.js"; +import _pluginLegacyBabelPolyfill from "../lib/polyfills/babel-polyfill.js"; +import _transformations from "../lib/module-transformations.js"; +import _availablePlugins from "../lib/available-plugins.js"; +const removeRegeneratorEntryPlugin = _removeRegeneratorEntryPlugin.default; +const pluginLegacyBabelPolyfill = _pluginLegacyBabelPolyfill.default; +const transformations = _transformations.default; +const availablePlugins = _availablePlugins.default; import _pluginCoreJS2 from "babel-plugin-polyfill-corejs2"; import _pluginCoreJS3 from "babel-plugin-polyfill-corejs3"; diff --git a/packages/babel-preset-env/test/normalize-options.spec.js b/packages/babel-preset-env/test/normalize-options.spec.js index be8efbecb21b..6206a2f72cef 100644 --- a/packages/babel-preset-env/test/normalize-options.spec.js +++ b/packages/babel-preset-env/test/normalize-options.spec.js @@ -1,9 +1,10 @@ -import normalizeOptions, { +import _normalizeOptions, { checkDuplicateIncludeExcludes, validateModulesOption, validateUseBuiltInsOption, normalizePluginName, } from "../lib/normalize-options.js"; +const normalizeOptions = _normalizeOptions.default; describe("normalize-options", () => { describe("normalizeOptions", () => { diff --git a/packages/babel-preset-flow/test/normalize-options.spec.js b/packages/babel-preset-flow/test/normalize-options.spec.js index c5dfa45ba886..39bf9f23842c 100644 --- a/packages/babel-preset-flow/test/normalize-options.spec.js +++ b/packages/babel-preset-flow/test/normalize-options.spec.js @@ -1,4 +1,6 @@ -import normalizeOptions from "../lib/normalize-options.js"; +import _normalizeOptions from "../lib/normalize-options.js"; +const normalizeOptions = _normalizeOptions.default; + describe("normalize options", () => { (process.env.BABEL_8_BREAKING ? describe : describe.skip)("Babel 8", () => { it("should throw on unknown options", () => { diff --git a/packages/babel-preset-react/test/index.js b/packages/babel-preset-react/test/index.js index 5c01708683ee..06cd224090be 100644 --- a/packages/babel-preset-react/test/index.js +++ b/packages/babel-preset-react/test/index.js @@ -1,16 +1,17 @@ -import react from "../lib/index.js"; +import _reactPreset from "../lib/index.js"; +const reactPreset = _reactPreset.default; describe("react preset", () => { it("does throw clear error when no options passed for Babel 6", () => { expect(() => { - react({ version: "6.5.0" }); + reactPreset({ version: "6.5.0" }); }).toThrow(Error, /Requires Babel "\^7.0.0-0"/); }); (process.env.BABEL_8_BREAKING ? it : it.skip)( "throws when unknown option is passed", () => { expect(() => { - react({ assertVersion() {} }, { runtine: true }); + reactPreset({ assertVersion() {} }, { runtine: true }); }).toThrowErrorMatchingInlineSnapshot(` "@babel/preset-react: 'runtine' is not a valid top-level option. - Did you mean 'runtime'?" @@ -21,7 +22,7 @@ describe("react preset", () => { "throws when option is of incorrect type", () => { expect(() => { - react({ assertVersion() {} }, { runtime: true }); + reactPreset({ assertVersion() {} }, { runtime: true }); }).toThrowErrorMatchingInlineSnapshot( `"@babel/preset-react: 'runtime' option must be a string."`, ); diff --git a/packages/babel-preset-react/test/normalize-options.skip-bundled.js b/packages/babel-preset-react/test/normalize-options.skip-bundled.js index 5932ed4b6d73..7ed499820ca7 100644 --- a/packages/babel-preset-react/test/normalize-options.skip-bundled.js +++ b/packages/babel-preset-react/test/normalize-options.skip-bundled.js @@ -1,4 +1,5 @@ -import normalizeOptions from "../lib/normalize-options.js"; +import _normalizeOptions from "../lib/normalize-options.js"; +const normalizeOptions = _normalizeOptions.default; describe("normalize options", () => { (process.env.BABEL_8_BREAKING ? describe : describe.skip)("Babel 8", () => { diff --git a/packages/babel-preset-typescript/test/normalize-options.skip-bundled.js b/packages/babel-preset-typescript/test/normalize-options.skip-bundled.js index 205409af007e..170fae264259 100644 --- a/packages/babel-preset-typescript/test/normalize-options.skip-bundled.js +++ b/packages/babel-preset-typescript/test/normalize-options.skip-bundled.js @@ -1,4 +1,5 @@ -import normalizeOptions from "../lib/normalize-options.js"; +import _normalizeOptions from "../lib/normalize-options.js"; +const normalizeOptions = _normalizeOptions.default; describe("normalize options", () => { (process.env.BABEL_8_BREAKING ? describe : describe.skip)("Babel 8", () => { diff --git a/packages/babel-template/test/index.js b/packages/babel-template/test/index.js index 96e5fcc32da3..a26b9fc00f60 100644 --- a/packages/babel-template/test/index.js +++ b/packages/babel-template/test/index.js @@ -1,7 +1,10 @@ -import generator from "../../babel-generator/lib/index.js"; -import template from "../lib/index.js"; import * as t from "@babel/types"; +import _generator from "../../babel-generator/lib/index.js"; +import _template from "../lib/index.js"; +const generator = _generator.default; +const template = _template.default; + const comments = "// Sum two numbers\nconst add = (a, b) => a + b;"; describe("@babel/template", function () { diff --git a/packages/babel-traverse/test/ancestry.js b/packages/babel-traverse/test/ancestry.js index 2bcf6de8c005..72f1380020e0 100644 --- a/packages/babel-traverse/test/ancestry.js +++ b/packages/babel-traverse/test/ancestry.js @@ -1,6 +1,8 @@ -import traverse from "../lib/index.js"; import { parse } from "@babel/parser"; +import _traverse from "../lib/index.js"; +const traverse = _traverse.default; + describe("path/ancestry", function () { describe("isAncestor", function () { const ast = parse("var a = 1; 'a';"); diff --git a/packages/babel-traverse/test/arrow-transform.js b/packages/babel-traverse/test/arrow-transform.js index ed2b345fb870..b4b100465c08 100644 --- a/packages/babel-traverse/test/arrow-transform.js +++ b/packages/babel-traverse/test/arrow-transform.js @@ -1,8 +1,10 @@ import { NodePath } from "../lib/index.js"; import { parse } from "@babel/parser"; -import generate from "@babel/generator"; import * as t from "@babel/types"; +import _generate from "@babel/generator"; +const generate = _generate.default; + function assertConversion( input, output, diff --git a/packages/babel-traverse/test/conversion.js b/packages/babel-traverse/test/conversion.js index eb07c8d78de3..54bb8d4a00ca 100644 --- a/packages/babel-traverse/test/conversion.js +++ b/packages/babel-traverse/test/conversion.js @@ -1,8 +1,11 @@ -import traverse from "../lib/index.js"; import { parse } from "@babel/parser"; -import generate from "@babel/generator"; import * as t from "@babel/types"; +import _traverse from "../lib/index.js"; +import _generate from "@babel/generator"; +const traverse = _traverse.default; +const generate = _generate.default; + function getPath(code) { const ast = parse(code); let path; diff --git a/packages/babel-traverse/test/evaluation.js b/packages/babel-traverse/test/evaluation.js index 4312c91700b8..ba3e99a7bfed 100644 --- a/packages/babel-traverse/test/evaluation.js +++ b/packages/babel-traverse/test/evaluation.js @@ -1,6 +1,8 @@ -import traverse from "../lib/index.js"; import { parse } from "@babel/parser"; +import _traverse from "../lib/index.js"; +const traverse = _traverse.default; + function getPath(code) { const ast = parse(code); let path; diff --git a/packages/babel-traverse/test/family.js b/packages/babel-traverse/test/family.js index 6bccdb96699f..a4bb2050623d 100644 --- a/packages/babel-traverse/test/family.js +++ b/packages/babel-traverse/test/family.js @@ -1,7 +1,9 @@ -import traverse from "../lib/index.js"; import { parse } from "@babel/parser"; import * as t from "@babel/types"; +import _traverse from "../lib/index.js"; +const traverse = _traverse.default; + describe("path/family", function () { describe("getBindingIdentifiers", function () { const ast = parse("var a = 1, {b} = c, [d] = e; function f() {}"); diff --git a/packages/babel-traverse/test/inference.js b/packages/babel-traverse/test/inference.js index 9ca32381c324..fa2af2045877 100644 --- a/packages/babel-traverse/test/inference.js +++ b/packages/babel-traverse/test/inference.js @@ -1,7 +1,9 @@ -import traverse from "../lib/index.js"; import { parse } from "@babel/parser"; import * as t from "@babel/types"; +import _traverse from "../lib/index.js"; +const traverse = _traverse.default; + function getPath(code) { const ast = parse(code, { plugins: ["flow"] }); let path; diff --git a/packages/babel-traverse/test/introspection.js b/packages/babel-traverse/test/introspection.js index 27da3f41e0a0..ab3647ac53ed 100644 --- a/packages/babel-traverse/test/introspection.js +++ b/packages/babel-traverse/test/introspection.js @@ -1,6 +1,8 @@ -import traverse from "../lib/index.js"; import { parse } from "@babel/parser"; +import _traverse from "../lib/index.js"; +const traverse = _traverse.default; + function getPath(code, options = { sourceType: "script" }) { const ast = parse(code, options); let path; diff --git a/packages/babel-traverse/test/modification.js b/packages/babel-traverse/test/modification.js index fc8201f36037..5dc38ee31e63 100644 --- a/packages/babel-traverse/test/modification.js +++ b/packages/babel-traverse/test/modification.js @@ -1,8 +1,11 @@ -import traverse from "../lib/index.js"; import { parse } from "@babel/parser"; -import generate from "@babel/generator"; import * as t from "@babel/types"; +import _traverse from "../lib/index.js"; +import _generate from "@babel/generator"; +const traverse = _traverse.default; +const generate = _generate.default; + function getPath(code, parserOpts) { const ast = parse(code, parserOpts); let path; diff --git a/packages/babel-traverse/test/removal.js b/packages/babel-traverse/test/removal.js index 02d743bea47f..9f02d17f5ec8 100644 --- a/packages/babel-traverse/test/removal.js +++ b/packages/babel-traverse/test/removal.js @@ -1,6 +1,9 @@ -import traverse from "../lib/index.js"; import { parse } from "@babel/parser"; -import generate from "@babel/generator"; + +import _traverse from "../lib/index.js"; +import _generate from "@babel/generator"; +const traverse = _traverse.default; +const generate = _generate.default; function getPath(code) { const ast = parse(code); diff --git a/packages/babel-traverse/test/replacement.js b/packages/babel-traverse/test/replacement.js index bdf18217ddd3..378cdf27901e 100644 --- a/packages/babel-traverse/test/replacement.js +++ b/packages/babel-traverse/test/replacement.js @@ -1,8 +1,11 @@ -import traverse from "../lib/index.js"; import { parse } from "@babel/parser"; -import generate from "@babel/generator"; import * as t from "@babel/types"; +import _traverse from "../lib/index.js"; +import _generate from "@babel/generator"; +const traverse = _traverse.default; +const generate = _generate.default; + describe("path/replacement", function () { describe("replaceWith", function () { it("replaces declaration in ExportDefaultDeclaration node", function () { diff --git a/packages/babel-traverse/test/scope.js b/packages/babel-traverse/test/scope.js index 7e71b177d9bf..1045afa0a3bc 100644 --- a/packages/babel-traverse/test/scope.js +++ b/packages/babel-traverse/test/scope.js @@ -1,7 +1,9 @@ -import traverse, { NodePath } from "../lib/index.js"; import { parse } from "@babel/parser"; import * as t from "@babel/types"; +import _traverse, { NodePath } from "../lib/index.js"; +const traverse = _traverse.default; + function getPath(code, options): NodePath { const ast = typeof code === "string" ? parse(code, options) : createNode(code); diff --git a/packages/babel-traverse/test/traverse.js b/packages/babel-traverse/test/traverse.js index 9dbcdb23a81b..36ec5c1e10e6 100644 --- a/packages/babel-traverse/test/traverse.js +++ b/packages/babel-traverse/test/traverse.js @@ -1,7 +1,9 @@ -import traverse from "../lib/index.js"; import { parse } from "@babel/parser"; import * as t from "@babel/types"; +import _traverse from "../lib/index.js"; +const traverse = _traverse.default; + describe("traverse", function () { const code = ` var foo = "bar"; diff --git a/packages/babel-types/test/converters.js b/packages/babel-types/test/converters.js index 712ce3cb79e8..751d4867d120 100644 --- a/packages/babel-types/test/converters.js +++ b/packages/babel-types/test/converters.js @@ -1,6 +1,8 @@ import * as t from "../lib/index.js"; import { parse } from "@babel/parser"; -import generate from "@babel/generator"; + +import _generate from "@babel/generator"; +const generate = _generate.default; function parseCode(string) { return parse(string, {