/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @emails react-core * @jest-environment ./scripts/jest/ReactDOMServerIntegrationEnvironment */ 'use strict'; const ReactDOMServerIntegrationUtils = require('./utils/ReactDOMServerIntegrationTestUtils'); let React; let ReactDOMClient; let ReactDOMServer; let ReactTestUtils; function initModules() { React = require('react'); ReactDOMClient = require('react-dom/client'); ReactDOMServer = require('react-dom/server'); ReactTestUtils = require('react-dom/test-utils'); // Make them available to the helpers. return { ReactDOMClient, ReactDOMServer, ReactTestUtils, }; } const {resetModules, itRenders} = ReactDOMServerIntegrationUtils(initModules); describe('ReactDOMServerIntegration', () => { beforeEach(() => { resetModules(); }); // Test pragmas don't support itRenders abstraction if ( __EXPERIMENTAL__ && require('shared/ReactFeatureFlags').enableDebugTracing ) { describe('React.unstable_DebugTracingMode', () => { beforeEach(() => { spyOnDevAndProd(console, 'log'); }); itRenders('with one child', async render => { const e = await render(
text1
, ); const parent = e.parentNode; expect(parent.childNodes[0].tagName).toBe('DIV'); }); itRenders('mode with several children', async render => { const Header = props => { return

header

; }; const Footer = props => { return (

footer

about

); }; const e = await render(
text1
text2