Skip to content

Commit

Permalink
Reduce platform-specific tests (#16436)
Browse files Browse the repository at this point in the history
  • Loading branch information
liuxingbaoyu committed Apr 19, 2024
1 parent f02a02d commit a8994f8
Show file tree
Hide file tree
Showing 91 changed files with 31 additions and 726 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
{
"throws": "/fake/path/example.js: someMsg",
"os": ["linux", "darwin"]
"throws": "example.js: someMsg"
}
24 changes: 12 additions & 12 deletions packages/babel-helper-transform-fixture-test-runner/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -340,7 +340,9 @@ async function run(task: Test) {
babel.transformAsync(inputCode, getOpts(actual)),
));

const outputCode = normalizeOutput(result.code);
const outputCode = normalizeOutput(result.code, {
normalizePathSeparator: true,
});

checkDuplicateNodes(result.ast);
if (!ignoreOutput) {
Expand Down Expand Up @@ -469,31 +471,29 @@ function normalizeOutput(
code: string,
{ normalizePathSeparator = false, normalizePresetEnvDebug = false } = {},
) {
const projectRoot = path.resolve(
const dir = path.resolve(
path.dirname(fileURLToPath(import.meta.url)),
"../../../",
);
const cwdSymbol = "<CWD>";
const symbol = "<CWD>";
let result = code
.trim()
// (non-win32) /foo/babel/packages -> <CWD>/packages
// (win32) C:\foo\babel\packages -> <CWD>\packages
.replace(new RegExp(escapeRegExp(projectRoot), "g"), cwdSymbol);
.replace(new RegExp(escapeRegExp(dir), "g"), symbol);
if (process.platform === "win32") {
result = result
// C:/foo/babel/packages -> <CWD>/packages
.replace(
new RegExp(escapeRegExp(projectRoot.replace(/\\/g, "/")), "g"),
cwdSymbol,
)
.replace(new RegExp(escapeRegExp(dir.replace(/\\/g, "/")), "g"), symbol)
// C:\\foo\\babel\\packages -> <CWD>\\packages (in js string literal)
.replace(
new RegExp(escapeRegExp(projectRoot.replace(/\\/g, "\\\\")), "g"),
cwdSymbol,
new RegExp(escapeRegExp(dir.replace(/\\/g, "\\\\")), "g"),
symbol,
);
if (normalizePathSeparator) {
result = result.replace(/<CWD>[\w\\/.-]+/g, path =>
path.replace(/\\\\?/g, "/"),
result = result.replace(
new RegExp(`${escapeRegExp(symbol)}[\\w\\\\/.-]+`, "g"),
path => path.replace(/\\\\?/g, "/"),
);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,5 @@
"transform-react-jsx-source",
"transform-react-jsx-self"
],
"os": ["windows"],
"throws": "Duplicate __self prop found. You are most likely using the deprecated transform-react-jsx-self Babel plugin. Both __source and __self are automatically set when using the automatic runtime. Please remove transform-react-jsx-source and transform-react-jsx-self from your Babel config."
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/auto-import-dev/input.js";
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/auto-import-dev/input.js";
import { jsxDEV as _jsxDEV, Fragment as _Fragment } from "react/jsx-dev-runtime";
import { createElement as _createElement } from "react";
var x = /*#__PURE__*/_jsxDEV(_Fragment, {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/classic-runtime-babel-7/input.js";
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/classic-runtime-babel-7/input.js";
var x = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
__self: this,
__source: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/classic-runtime/input.js";
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/classic-runtime/input.js";
var x = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
__self: this,
__source: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
var _reactJsxDevRuntime = require("react/jsx-dev-runtime");
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/fragments/input.js";
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/fragments/input.js";
var x = /*#__PURE__*/_reactJsxDevRuntime.jsxDEV(_reactJsxDevRuntime.Fragment, {
children: /*#__PURE__*/_reactJsxDevRuntime.jsxDEV("div", {}, void 0, false, {
fileName: _jsxFileName,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
var _reactJsxDevRuntime = require("react/jsx-dev-runtime");
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/handle-fragments-with-key/input.js";
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/handle-fragments-with-key/input.js";
var x = /*#__PURE__*/_reactJsxDevRuntime.jsxDEV(React.Fragment, {}, "foo", false, {
fileName: _jsxFileName,
lineNumber: 1,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
var _reactJsxDevRuntime = require("react/jsx-dev-runtime");
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/handle-nonstatic-children/input.js";
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/handle-nonstatic-children/input.js";
var x = /*#__PURE__*/_reactJsxDevRuntime.jsxDEV("div", {
children: [/*#__PURE__*/_reactJsxDevRuntime.jsxDEV("span", {}, "0", false, {
fileName: _jsxFileName,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
var _reactJsxDevRuntime = require("react/jsx-dev-runtime");
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/handle-static-children/input.js";
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/handle-static-children/input.js";
var x = /*#__PURE__*/_reactJsxDevRuntime.jsxDEV("div", {
children: [/*#__PURE__*/_reactJsxDevRuntime.jsxDEV("span", {}, void 0, false, {
fileName: _jsxFileName,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"transform-react-jsx-development",
"transform-react-display-name",
"transform-arrow-functions"
],
"os": ["win32"]
]
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/self-inside-arrow/input.mjs",
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/self-inside-arrow/input.mjs",
_this = this;
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
/*#__PURE__*/_jsxDEV("div", {}, void 0, false, {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,5 @@
"transform-react-jsx-self"
],
"sourceType": "module",
"os": ["windows"],
"throws": "Duplicate __self prop found. You are most likely using the deprecated transform-react-jsx-self Babel plugin. Both __source and __self are automatically set when using the automatic runtime. Please remove transform-react-jsx-source and transform-react-jsx-self from your Babel config."
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
var _reactJsxDevRuntime = require("react/jsx-dev-runtime");
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/within-derived-classes-constructor/input.js";
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/within-derived-classes-constructor/input.js";
class A {}
class B extends A {
constructor() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,5 @@
"transform-react-jsx-development",
["syntax-typescript", { "isTSX": true }]
],
"sourceType": "module",
"os": ["win32"]
"sourceType": "module"
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/within-ts-module-block/input.ts";
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/within-ts-module-block-babel-7/input.ts";
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
export namespace Namespaced {
export const Component = () => /*#__PURE__*/_jsxDEV("div", {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,5 @@
"syntax-typescript",
"syntax-jsx"
],
"sourceType": "module",
"os": ["win32"]
"sourceType": "module"
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/linux/within-ts-module-block-babel-7/input.ts";
var _jsxFileName = "<CWD>/packages/babel-plugin-transform-react-jsx-development/test/fixtures/cross-platform/within-ts-module-block/input.ts";
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
export namespace Namespaced {
export const Component = () => /*#__PURE__*/_jsxDEV("div", {
Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

0 comments on commit a8994f8

Please sign in to comment.