Skip to content

Commit

Permalink
fix tests for when float is off (#25839)
Browse files Browse the repository at this point in the history
Some tests fail when float is off but when singletons are on. This PR
makes some adjustments

1. 2 singleton tests assert float semantics so will fail.
2. the float dispatcher was being set on the server even when float was
off. while the float calls didn't do anything warnings were still
generated. Instead we provide an empty object for the dispatcher if
float is off. Longer term the dispatcher should move to formatconfig and
just reference the float methods if the flag is on
3. some external fizz runtime tests did not gate against float but
should have
  • Loading branch information
gnoff committed Dec 7, 2022
1 parent 827cbdb commit 5dfc485
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ export function setCurrentlyRenderingBoundaryResourcesTarget(
resources.boundaryResources = boundaryResources;
}

export const ReactDOMServerDispatcher = {
export const ReactDOMServerFloatDispatcher = {
preload,
preinit,
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ import {
resourcesFromElement,
resourcesFromLink,
resourcesFromScript,
ReactDOMServerDispatcher,
ReactDOMServerFloatDispatcher,
} from './ReactDOMFloatServer';
export {
createResources,
Expand All @@ -89,6 +89,10 @@ import {
import ReactDOMSharedInternals from 'shared/ReactDOMSharedInternals';
const ReactDOMCurrentDispatcher = ReactDOMSharedInternals.Dispatcher;

const ReactDOMServerDispatcher = enableFloat
? ReactDOMServerFloatDispatcher
: {};

export function prepareToRender(resources: Resources): mixed {
prepareToRenderResources(resources);

Expand Down
2 changes: 1 addition & 1 deletion packages/react-dom/src/__tests__/ReactDOMFloat-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -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() {
Expand Down Expand Up @@ -5681,7 +5682,6 @@ describe('ReactDOMFloat', () => {
);
});

// @gate enableFloat
it('should not treat title descendants of svg into resources', async () => {
await actIntoEmptyDocument(() => {
const {pipe} = renderToPipeableStream(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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(
Expand Down Expand Up @@ -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) {
Expand Down

0 comments on commit 5dfc485

Please sign in to comment.