diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-preserve-escape-character.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-preserve-escape-character.expect.md new file mode 100644 index 0000000000000..6f8a86382d436 --- /dev/null +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-preserve-escape-character.expect.md @@ -0,0 +1,57 @@ + +## Input + +```javascript +/** + * Fixture showing `@babel/generator` bug with jsx attribute strings containing + * escape sequences. Note that this is only a problem when generating jsx + * literals. + * + * When using the jsx transform to correctly lower jsx into + * `React.createElement` calls, the escape sequences are preserved correctly + * (see evaluator output). + */ +function MyApp() { + return ; +} + +export const FIXTURE_ENTRYPOINT = { + fn: MyApp, + params: [], +}; + +``` + +## Code + +```javascript +import { c as _c } from "react/compiler-runtime"; /** + * Fixture showing `@babel/generator` bug with jsx attribute strings containing + * escape sequences. Note that this is only a problem when generating jsx + * literals. + * + * When using the jsx transform to correctly lower jsx into + * `React.createElement` calls, the escape sequences are preserved correctly + * (see evaluator output). + */ +function MyApp() { + const $ = _c(1); + let t0; + if ($[0] === Symbol.for("react.memo_cache_sentinel")) { + t0 = ; + $[0] = t0; + } else { + t0 = $[0]; + } + return t0; +} + +export const FIXTURE_ENTRYPOINT = { + fn: MyApp, + params: [], +}; + +``` + +### Eval output +(kind: ok) \ No newline at end of file diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-preserve-escape-character.js b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-preserve-escape-character.js new file mode 100644 index 0000000000000..5a972a585becc --- /dev/null +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-preserve-escape-character.js @@ -0,0 +1,17 @@ +/** + * Fixture showing `@babel/generator` bug with jsx attribute strings containing + * escape sequences. Note that this is only a problem when generating jsx + * literals. + * + * When using the jsx transform to correctly lower jsx into + * `React.createElement` calls, the escape sequences are preserved correctly + * (see evaluator output). + */ +function MyApp() { + return ; +} + +export const FIXTURE_ENTRYPOINT = { + fn: MyApp, + params: [], +};