From 2a3c70c271b0ee5ff374843d5807ee1487e91fd7 Mon Sep 17 00:00:00 2001 From: Josh Story Date: Tue, 6 Dec 2022 17:54:56 -0800 Subject: [PATCH] fix tests for when float is off --- .../react-dom-bindings/src/server/ReactDOMFloatServer.js | 2 +- .../src/server/ReactDOMServerFormatConfig.js | 7 +++++-- packages/react-dom/src/__tests__/ReactDOMFloat-test.js | 2 +- .../src/__tests__/ReactDOMSingletonComponents-test.js | 4 ++-- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/react-dom-bindings/src/server/ReactDOMFloatServer.js b/packages/react-dom-bindings/src/server/ReactDOMFloatServer.js index 2805b629d4b48..70d0119b84563 100644 --- a/packages/react-dom-bindings/src/server/ReactDOMFloatServer.js +++ b/packages/react-dom-bindings/src/server/ReactDOMFloatServer.js @@ -202,7 +202,7 @@ export function setCurrentlyRenderingBoundaryResourcesTarget( resources.boundaryResources = boundaryResources; } -export const ReactDOMServerDispatcher = { +export const ReactDOMServerFloatDispatcher = { preload, preinit, }; diff --git a/packages/react-dom-bindings/src/server/ReactDOMServerFormatConfig.js b/packages/react-dom-bindings/src/server/ReactDOMServerFormatConfig.js index c66292d801835..6863b9f16c872 100644 --- a/packages/react-dom-bindings/src/server/ReactDOMServerFormatConfig.js +++ b/packages/react-dom-bindings/src/server/ReactDOMServerFormatConfig.js @@ -69,7 +69,7 @@ import { resourcesFromElement, resourcesFromLink, resourcesFromScript, - ReactDOMServerDispatcher, + ReactDOMServerFloatDispatcher, } from './ReactDOMFloatServer'; export { createResources, @@ -89,11 +89,14 @@ import { import ReactDOMSharedInternals from 'shared/ReactDOMSharedInternals'; const ReactDOMCurrentDispatcher = ReactDOMSharedInternals.Dispatcher; +const ReactDOMServerDispatcher = enableFloat + ? ReactDOMServerFloatDispatcher + : {}; + export function prepareToRender(resources: Resources): mixed { prepareToRenderResources(resources); const previousHostDispatcher = ReactDOMCurrentDispatcher.current; - ReactDOMCurrentDispatcher.current = ReactDOMServerDispatcher; return previousHostDispatcher; } diff --git a/packages/react-dom/src/__tests__/ReactDOMFloat-test.js b/packages/react-dom/src/__tests__/ReactDOMFloat-test.js index 6ce5b6617876d..36a288a67a008 100644 --- a/packages/react-dom/src/__tests__/ReactDOMFloat-test.js +++ b/packages/react-dom/src/__tests__/ReactDOMFloat-test.js @@ -608,6 +608,7 @@ describe('ReactDOMFloat', () => { ]); }); + // @gate enableFloat it('dedupes if the external runtime is explicitly loaded using preinit', async () => { const unstable_externalRuntimeSrc = 'src-of-external-runtime'; function App() { @@ -5681,7 +5682,6 @@ describe('ReactDOMFloat', () => { ); }); - // @gate enableFloat it('should not treat title descendants of svg into resources', async () => { await actIntoEmptyDocument(() => { const {pipe} = renderToPipeableStream( diff --git a/packages/react-dom/src/__tests__/ReactDOMSingletonComponents-test.js b/packages/react-dom/src/__tests__/ReactDOMSingletonComponents-test.js index 0899d7d3c7871..026302c18cc27 100644 --- a/packages/react-dom/src/__tests__/ReactDOMSingletonComponents-test.js +++ b/packages/react-dom/src/__tests__/ReactDOMSingletonComponents-test.js @@ -116,7 +116,7 @@ describe('ReactDOM HostSingleton', () => { : children; } - // @gate enableHostSingletons + // @gate enableHostSingletons && enableFloat it('warns if you render the same singleton twice at the same time', async () => { const root = ReactDOMClient.createRoot(document); root.render( @@ -201,7 +201,7 @@ describe('ReactDOM HostSingleton', () => { ); }); - // @gate enableHostSingletons + // @gate enableHostSingletons && enableFloat it('renders into html, head, and body persistently so the node identities never change and extraneous styles are retained', async () => { gate(flags => { if (flags.enableHostSingletons !== true) {