@samitouri / QOS-React-1 / commits / 09de4b2cfe

chore: use versioned render in treeContext test (#28245)

Ruslan Lesiutin committed Feb 5, 2024 at 17:29 UTC 09de4b2cfe9d3aa4f90b694c243f34bc9bb6b300
1 file changed +63 -130
packages/react-devtools-shared/src/__tests__/treeContext-test.js
+63 -130
@@ -15,12 +15,12 @@ import type {
15 StateContext,
16 } from 'react-devtools-shared/src/devtools/views/Components/TreeContext';
17
18 +import {getVersionedRenderImplementation} from './utils';
19 +
20 describe('TreeListContext', () => {
21 let React;
20 - let ReactDOM;
22 let TestRenderer: ReactTestRenderer;
23 let bridge: FrontendBridge;
23 - let legacyRender;
24 let store: Store;
25 let utils;
26 let withErrorsOrWarningsIgnored;
@@ -36,7 +36,6 @@ describe('TreeListContext', () => {
36 utils = require('./utils');
37 utils.beforeEachProfiling();
38
39 - legacyRender = utils.legacyRender;
39 withErrorsOrWarningsIgnored = utils.withErrorsOrWarningsIgnored;
40
41 bridge = global.bridge;
@@ -44,7 +43,6 @@ describe('TreeListContext', () => {
43 store.collapseNodesByDefault = false;
44
45 React = require('react');
47 - ReactDOM = require('react-dom');
46 TestRenderer = utils.requireTestRenderer();
47
48 BridgeContext =
@@ -54,6 +52,8 @@ describe('TreeListContext', () => {
52 TreeContext = require('react-devtools-shared/src/devtools/views/Components/TreeContext');
53 });
54
55 + const {render, unmount, createContainer} = getVersionedRenderImplementation();
56 +
57 afterEach(() => {
58 // Reset between tests
59 dispatch = ((null: any): DispatcherContext);
@@ -89,9 +89,7 @@ describe('TreeListContext', () => {
89 );
90 const Child = () => null;
91
92 - utils.act(() =>
93 - legacyRender(<Grandparent />, document.createElement('div')),
94 - );
92 + utils.act(() => render(<Grandparent />));
93
94 let renderer;
95 utils.act(() => (renderer = TestRenderer.create(<Contexts />)));
@@ -215,9 +213,7 @@ describe('TreeListContext', () => {
213 );
214 const Child = () => null;
215
218 - utils.act(() =>
219 - legacyRender(<Grandparent />, document.createElement('div')),
220 - );
216 + utils.act(() => render(<Grandparent />));
217
218 let renderer;
219 utils.act(() => (renderer = TestRenderer.create(<Contexts />)));
@@ -301,9 +297,7 @@ describe('TreeListContext', () => {
297 );
298 const Child = () => null;
299
304 - utils.act(() =>
305 - legacyRender(<Grandparent />, document.createElement('div')),
306 - );
300 + utils.act(() => render(<Grandparent />));
301
302 let renderer;
303 utils.act(() => (renderer = TestRenderer.create(<Contexts />)));
@@ -391,16 +385,14 @@ describe('TreeListContext', () => {
385 const Parent = props => props.children || null;
386 const Child = () => null;
387
394 - const container = document.createElement('div');
388 utils.act(() =>
396 - legacyRender(
389 + render(
390 <Grandparent>
391 <Parent>
392 <Child />
393 <Child />
394 </Parent>
395 </Grandparent>,
403 - container,
396 ),
397 );
398
@@ -427,11 +419,10 @@ describe('TreeListContext', () => {
419
420 // Remove the child (which should auto-select the parent)
421 await utils.actAsync(() =>
430 - legacyRender(
422 + render(
423 <Grandparent>
424 <Parent />
425 </Grandparent>,
434 - container,
426 ),
427 );
428 expect(state).toMatchInlineSnapshot(`
@@ -441,7 +432,7 @@ describe('TreeListContext', () => {
432 `);
433
434 // Unmount the root (so that nothing is selected)
444 - await utils.actAsync(() => ReactDOM.unmountComponentAtNode(container));
435 + await utils.actAsync(() => unmount());
436 expect(state).toMatchInlineSnapshot(``);
437 });
438
@@ -459,9 +450,7 @@ describe('TreeListContext', () => {
450 .map((_, index) => <Child key={index} />);
451 const Child = () => null;
452
462 - utils.act(() =>
463 - legacyRender(<Grandparent />, document.createElement('div')),
464 - );
453 + utils.act(() => render(<Grandparent />));
454
455 let renderer;
456 utils.act(() => (renderer = TestRenderer.create(<Contexts />)));
@@ -620,9 +609,7 @@ describe('TreeListContext', () => {
609 .map((_, index) => <Child key={index} />);
610 const Child = () => null;
611
623 - utils.act(() =>
624 - legacyRender(<Grandparent />, document.createElement('div')),
625 - );
612 + utils.act(() => render(<Grandparent />));
613
614 let renderer;
615 utils.act(() => (renderer = TestRenderer.create(<Contexts />)));
@@ -920,14 +907,13 @@ describe('TreeListContext', () => {
907 Qux.displayName = `withHOC(${Qux.name})`;
908
909 utils.act(() =>
923 - legacyRender(
910 + render(
911 <React.Fragment>
912 <Foo />
913 <Bar />
914 <Baz />
915 <Qux />
916 </React.Fragment>,
930 - document.createElement('div'),
917 ),
918 );
919
@@ -992,14 +978,13 @@ describe('TreeListContext', () => {
978 const Baz = () => null;
979
980 utils.act(() =>
995 - legacyRender(
981 + render(
982 <React.Fragment>
983 <Foo />
984 <Baz />
985 <Bar />
986 <Baz />
987 </React.Fragment>,
1002 - document.createElement('div'),
988 ),
989 );
990
@@ -1096,15 +1081,12 @@ describe('TreeListContext', () => {
1081 const Bar = () => null;
1082 const Baz = () => null;
1083
1099 - const container = document.createElement('div');
1100 -
1084 utils.act(() =>
1102 - legacyRender(
1085 + render(
1086 <React.Fragment>
1087 <Foo />
1088 <Bar />
1089 </React.Fragment>,
1107 - container,
1090 ),
1091 );
1092
@@ -1125,13 +1107,12 @@ describe('TreeListContext', () => {
1107 `);
1108
1109 await utils.actAsync(() =>
1128 - legacyRender(
1110 + render(
1111 <React.Fragment>
1112 <Foo />
1113 <Bar />
1114 <Baz />
1115 </React.Fragment>,
1134 - container,
1116 ),
1117 );
1118 utils.act(() => renderer.update(<Contexts />));
@@ -1157,16 +1138,13 @@ describe('TreeListContext', () => {
1138 const Bar = () => null;
1139 const Baz = () => null;
1140
1160 - const container = document.createElement('div');
1161 -
1141 utils.act(() =>
1163 - legacyRender(
1142 + render(
1143 <React.Fragment>
1144 <Foo />
1145 <Bar />
1146 <Baz />
1147 </React.Fragment>,
1169 - container,
1148 ),
1149 );
1150
@@ -1198,12 +1176,11 @@ describe('TreeListContext', () => {
1176 `);
1177
1178 await utils.actAsync(() =>
1201 - legacyRender(
1179 + render(
1180 <React.Fragment>
1181 <Foo />
1182 <Bar />
1183 </React.Fragment>,
1206 - container,
1184 ),
1185 );
1186 utils.act(() => renderer.update(<Contexts />));
@@ -1243,9 +1220,7 @@ describe('TreeListContext', () => {
1220 );
1221 const Child = () => null;
1222
1246 - utils.act(() =>
1247 - legacyRender(<Grandparent />, document.createElement('div')),
1248 - );
1223 + utils.act(() => render(<Grandparent />));
1224
1225 let renderer;
1226 utils.act(() => (renderer = TestRenderer.create(<Contexts />)));
@@ -1284,8 +1259,7 @@ describe('TreeListContext', () => {
1259 new Array(count).fill(true).map((_, index) => <Child key={index} />);
1260 const Child = () => null;
1261
1287 - const container = document.createElement('div');
1288 - utils.act(() => legacyRender(<Grandparent count={2} />, container));
1262 + utils.act(() => render(<Grandparent count={2} />));
1263
1264 let renderer;
1265 utils.act(() => (renderer = TestRenderer.create(<Contexts />)));
@@ -1307,18 +1281,14 @@ describe('TreeListContext', () => {
1281 <Child key="1">
1282 `);
1283
1310 - await utils.actAsync(() =>
1311 - legacyRender(<Grandparent count={1} />, container),
1312 - );
1284 + await utils.actAsync(() => render(<Grandparent count={1} />));
1285 expect(state).toMatchInlineSnapshot(`
1286 [owners]
1287 → ▾ <Parent>
1288 <Child key="0">
1289 `);
1290
1319 - await utils.actAsync(() =>
1320 - legacyRender(<Grandparent count={0} />, container),
1321 - );
1291 + await utils.actAsync(() => render(<Grandparent count={0} />));
1292 expect(state).toMatchInlineSnapshot(`
1293 [owners]
1294 → <Parent>
@@ -1329,13 +1299,11 @@ describe('TreeListContext', () => {
1299 const Parent = props => props.children || null;
1300 const Child = () => null;
1301
1332 - const container = document.createElement('div');
1302 utils.act(() =>
1334 - legacyRender(
1303 + render(
1304 <Parent>
1305 <Child />
1306 </Parent>,
1338 - container,
1307 ),
1308 );
1309
@@ -1355,7 +1323,7 @@ describe('TreeListContext', () => {
1323 → <Child>
1324 `);
1325
1358 - await utils.actAsync(() => legacyRender(<Parent />, container));
1326 + await utils.actAsync(() => render(<Parent />));
1327 expect(state).toMatchInlineSnapshot(`
1328 [root]
1329 → <Parent>
@@ -1369,7 +1337,7 @@ describe('TreeListContext', () => {
1337 → <Parent>
1338 `);
1339
1372 - await utils.actAsync(() => ReactDOM.unmountComponentAtNode(container));
1340 + await utils.actAsync(() => unmount());
1341 expect(state).toMatchInlineSnapshot(``);
1342 });
1343
@@ -1387,8 +1355,7 @@ describe('TreeListContext', () => {
1355 </React.Suspense>
1356 );
1357
1390 - const container = document.createElement('div');
1391 - utils.act(() => legacyRender(<Parent />, container));
1358 + utils.act(() => render(<Parent />));
1359
1360 let renderer;
1361 utils.act(() => (renderer = TestRenderer.create(<Contexts />)));
@@ -1495,13 +1462,12 @@ describe('TreeListContext', () => {
1462
1463 it('should handle when there are no errors/warnings', () => {
1464 utils.act(() =>
1498 - legacyRender(
1465 + render(
1466 <React.Fragment>
1467 <Child />
1468 <Child />
1469 <Child />
1470 </React.Fragment>,
1504 - document.createElement('div'),
1471 ),
1472 );
1473
@@ -1558,7 +1524,7 @@ describe('TreeListContext', () => {
1524 it('should cycle through the next errors/warnings and wrap around', () => {
1525 withErrorsOrWarningsIgnored(['test-only:'], () =>
1526 utils.act(() =>
1561 - legacyRender(
1527 + render(
1528 <React.Fragment>
1529 <Child />
1530 <Child logWarning={true} />
@@ -1566,7 +1532,6 @@ describe('TreeListContext', () => {
1532 <Child logError={true} />
1533 <Child />
1534 </React.Fragment>,
1569 - document.createElement('div'),
1535 ),
1536 ),
1537 );
@@ -1619,7 +1584,7 @@ describe('TreeListContext', () => {
1584 it('should cycle through the previous errors/warnings and wrap around', () => {
1585 withErrorsOrWarningsIgnored(['test-only:'], () =>
1586 utils.act(() =>
1622 - legacyRender(
1587 + render(
1588 <React.Fragment>
1589 <Child />
1590 <Child logWarning={true} />
@@ -1627,7 +1592,6 @@ describe('TreeListContext', () => {
1592 <Child logError={true} />
1593 <Child />
1594 </React.Fragment>,
1630 - document.createElement('div'),
1595 ),
1596 ),
1597 );
@@ -1680,20 +1644,21 @@ describe('TreeListContext', () => {
1644 it('should cycle through the next errors/warnings and wrap around with multiple roots', () => {
1645 withErrorsOrWarningsIgnored(['test-only:'], () => {
1646 utils.act(() => {
1683 - legacyRender(
1647 + render(
1648 <React.Fragment>
1649 <Child />
1650 <Child logWarning={true} />,
1651 </React.Fragment>,
1688 - document.createElement('div'),
1652 );
1690 - legacyRender(
1653 +
1654 + createContainer();
1655 +
1656 + render(
1657 <React.Fragment>
1658 <Child />
1659 <Child logError={true} />
1660 <Child />
1661 </React.Fragment>,
1696 - document.createElement('div'),
1662 );
1663 });
1664 });
@@ -1750,20 +1715,21 @@ describe('TreeListContext', () => {
1715 it('should cycle through the previous errors/warnings and wrap around with multiple roots', () => {
1716 withErrorsOrWarningsIgnored(['test-only:'], () => {
1717 utils.act(() => {
1753 - legacyRender(
1718 + render(
1719 <React.Fragment>
1720 <Child />
1721 <Child logWarning={true} />,
1722 </React.Fragment>,
1758 - document.createElement('div'),
1723 );
1760 - legacyRender(
1724 +
1725 + createContainer();
1726 +
1727 + render(
1728 <React.Fragment>
1729 <Child />
1730 <Child logError={true} />
1731 <Child />
1732 </React.Fragment>,
1766 - document.createElement('div'),
1733 );
1734 });
1735 });
@@ -1820,7 +1786,7 @@ describe('TreeListContext', () => {
1786 it('should select the next or previous element relative to the current selection', () => {
1787 withErrorsOrWarningsIgnored(['test-only:'], () =>
1788 utils.act(() =>
1823 - legacyRender(
1789 + render(
1790 <React.Fragment>
1791 <Child />
1792 <Child logWarning={true} />
@@ -1828,7 +1794,6 @@ describe('TreeListContext', () => {
1794 <Child logError={true} />
1795 <Child />
1796 </React.Fragment>,
1831 - document.createElement('div'),
1797 ),
1798 ),
1799 );
@@ -1882,14 +1847,13 @@ describe('TreeListContext', () => {
1847 it('should update correctly when errors/warnings are cleared for a fiber in the list', () => {
1848 withErrorsOrWarningsIgnored(['test-only:'], () =>
1849 utils.act(() =>
1885 - legacyRender(
1850 + render(
1851 <React.Fragment>
1852 <Child logWarning={true} />
1853 <Child logError={true} />
1854 <Child logError={true} />
1855 <Child logWarning={true} />
1856 </React.Fragment>,
1892 - document.createElement('div'),
1857 ),
1858 ),
1859 );
@@ -1955,12 +1919,11 @@ describe('TreeListContext', () => {
1919 it('should update correctly when errors/warnings are cleared for the currently selected fiber', () => {
1920 withErrorsOrWarningsIgnored(['test-only:'], () =>
1921 utils.act(() =>
1958 - legacyRender(
1922 + render(
1923 <React.Fragment>
1924 <Child logWarning={true} />
1925 <Child logError={true} />
1926 </React.Fragment>,
1963 - document.createElement('div'),
1927 ),
1928 ),
1929 );
@@ -1992,18 +1955,15 @@ describe('TreeListContext', () => {
1955 });
1956
1957 it('should update correctly when new errors/warnings are added', () => {
1995 - const container = document.createElement('div');
1996 -
1958 withErrorsOrWarningsIgnored(['test-only:'], () =>
1959 utils.act(() =>
1999 - legacyRender(
1960 + render(
1961 <React.Fragment>
1962 <Child logWarning={true} />
1963 <Child />
1964 <Child />
1965 <Child logError={true} />
1966 </React.Fragment>,
2006 - container,
1967 ),
1968 ),
1969 );
@@ -2030,14 +1990,13 @@ describe('TreeListContext', () => {
1990
1991 withErrorsOrWarningsIgnored(['test-only:'], () =>
1992 utils.act(() =>
2033 - legacyRender(
1993 + render(
1994 <React.Fragment>
1995 <Child />
1996 <Child logWarning={true} />
1997 <Child />
1998 <Child />
1999 </React.Fragment>,
2040 - container,
2000 ),
2001 ),
2002 );
@@ -2076,12 +2035,11 @@ describe('TreeListContext', () => {
2035 it('should update correctly when all errors/warnings are cleared', () => {
2036 withErrorsOrWarningsIgnored(['test-only:'], () =>
2037 utils.act(() =>
2079 - legacyRender(
2038 + render(
2039 <React.Fragment>
2040 <Child logWarning={true} />
2041 <Child logError={true} />
2042 </React.Fragment>,
2084 - document.createElement('div'),
2043 ),
2044 ),
2045 );
@@ -2120,7 +2078,6 @@ describe('TreeListContext', () => {
2078 });
2079
2080 it('should update correctly when elements are added/removed', () => {
2123 - const container = document.createElement('div');
2081 let errored = false;
2082 function ErrorOnce() {
2083 if (!errored) {
@@ -2131,11 +2088,10 @@ describe('TreeListContext', () => {
2088 }
2089 withErrorsOrWarningsIgnored(['test-only:'], () =>
2090 utils.act(() =>
2134 - legacyRender(
2091 + render(
2092 <React.Fragment>
2093 <ErrorOnce key="error" />
2094 </React.Fragment>,
2138 - container,
2095 ),
2096 ),
2097 );
@@ -2150,12 +2106,11 @@ describe('TreeListContext', () => {
2106
2107 withErrorsOrWarningsIgnored(['test-only:'], () =>
2108 utils.act(() =>
2153 - legacyRender(
2109 + render(
2110 <React.Fragment>
2111 <Child />
2112 <ErrorOnce key="error" />
2113 </React.Fragment>,
2158 - container,
2114 ),
2115 ),
2116 );
@@ -2178,7 +2133,6 @@ describe('TreeListContext', () => {
2133 });
2134
2135 it('should update correctly when elements are re-ordered', () => {
2181 - const container = document.createElement('div');
2136 function ErrorOnce() {
2137 const didErrorRef = React.useRef(false);
2138 if (!didErrorRef.current) {
@@ -2189,14 +2143,13 @@ describe('TreeListContext', () => {
2143 }
2144 withErrorsOrWarningsIgnored(['test-only:'], () =>
2145 utils.act(() =>
2192 - legacyRender(
2146 + render(
2147 <React.Fragment>
2148 <Child key="A" />
2149 <ErrorOnce key="B" />
2150 <Child key="C" />
2151 <ErrorOnce key="D" />
2152 </React.Fragment>,
2199 - container,
2153 ),
2154 ),
2155 );
@@ -2227,14 +2180,13 @@ describe('TreeListContext', () => {
2180 // Re-order the tree and ensure indices are updated.
2181 withErrorsOrWarningsIgnored(['test-only:'], () =>
2182 utils.act(() =>
2230 - legacyRender(
2183 + render(
2184 <React.Fragment>
2185 <ErrorOnce key="B" />
2186 <Child key="A" />
2187 <ErrorOnce key="D" />
2188 <Child key="C" />
2189 </React.Fragment>,
2237 - container,
2190 ),
2191 ),
2192 );
@@ -2261,14 +2213,13 @@ describe('TreeListContext', () => {
2213 // Re-order the tree and ensure indices are updated.
2214 withErrorsOrWarningsIgnored(['test-only:'], () =>
2215 utils.act(() =>
2264 - legacyRender(
2216 + render(
2217 <React.Fragment>
2218 <ErrorOnce key="D" />
2219 <ErrorOnce key="B" />
2220 <Child key="A" />
2221 <Child key="C" />
2222 </React.Fragment>,
2271 - container,
2223 ),
2224 ),
2225 );
@@ -2289,7 +2240,7 @@ describe('TreeListContext', () => {
2240
2241 withErrorsOrWarningsIgnored(['test-only:'], () =>
2242 utils.act(() =>
2292 - legacyRender(
2243 + render(
2244 <React.Fragment>
2245 <Wrapper>
2246 <Child logWarning={true} />
@@ -2300,7 +2251,6 @@ describe('TreeListContext', () => {
2251 </Wrapper>
2252 </Wrapper>
2253 </React.Fragment>,
2303 - document.createElement('div'),
2254 ),
2255 ),
2256 );
@@ -2339,7 +2289,7 @@ describe('TreeListContext', () => {
2289
2290 withErrorsOrWarningsIgnored(['test-only:'], () =>
2291 utils.act(() =>
2342 - legacyRender(
2292 + render(
2293 <React.Fragment>
2294 <Wrapper>
2295 <Child logWarning={true} />
@@ -2350,7 +2300,6 @@ describe('TreeListContext', () => {
2300 </Wrapper>
2301 </Wrapper>
2302 </React.Fragment>,
2353 - document.createElement('div'),
2303 ),
2304 ),
2305 );
@@ -2425,7 +2374,7 @@ describe('TreeListContext', () => {
2374
2375 withErrorsOrWarningsIgnored(['test-only:'], () =>
2376 utils.act(() =>
2428 - legacyRender(
2377 + render(
2378 <React.Fragment>
2379 <Wrapper>
2380 <Child logWarning={true} />
@@ -2436,7 +2385,6 @@ describe('TreeListContext', () => {
2385 </Wrapper>
2386 </Wrapper>
2387 </React.Fragment>,
2439 - document.createElement('div'),
2388 ),
2389 ),
2390 );
@@ -2483,12 +2431,11 @@ describe('TreeListContext', () => {
2431
2432 withErrorsOrWarningsIgnored(['test-only:'], () =>
2433 utils.act(() =>
2486 - legacyRender(
2434 + render(
2435 <React.Suspense fallback={null}>
2436 <Child logWarning={true} />
2437 <NeverResolves />
2438 </React.Suspense>,
2491 - document.createElement('div'),
2439 ),
2440 ),
2441 );
@@ -2515,16 +2462,13 @@ describe('TreeListContext', () => {
2462 }
2463 const LazyComponent = React.lazy(() => fakeImport(Child));
2464
2518 - const container = document.createElement('div');
2519 -
2465 withErrorsOrWarningsIgnored(['test-only:'], () =>
2466 utils.act(() =>
2522 - legacyRender(
2467 + render(
2468 <React.Suspense fallback={null}>
2469 <Child logWarning={true} />
2470 <LazyComponent />
2471 </React.Suspense>,
2527 - container,
2472 ),
2473 ),
2474 );
@@ -2538,12 +2482,11 @@ describe('TreeListContext', () => {
2482 await Promise.resolve();
2483 withErrorsOrWarningsIgnored(['test-only:'], () =>
2484 utils.act(() =>
2541 - legacyRender(
2485 + render(
2486 <React.Suspense fallback={null}>
2487 <Child logWarning={true} />
2488 <LazyComponent />
2489 </React.Suspense>,
2546 - container,
2490 ),
2491 ),
2492 );
@@ -2565,15 +2508,12 @@ describe('TreeListContext', () => {
2508
2509 const Fallback = () => <Child logError={true} />;
2510
2568 - const container = document.createElement('div');
2569 -
2511 withErrorsOrWarningsIgnored(['test-only:'], () =>
2512 utils.act(() =>
2572 - legacyRender(
2513 + render(
2514 <React.Suspense fallback={<Fallback />}>
2515 <LazyComponent />
2516 </React.Suspense>,
2576 - container,
2517 ),
2518 ),
2519 );
@@ -2590,11 +2530,10 @@ describe('TreeListContext', () => {
2530 await Promise.resolve();
2531 withErrorsOrWarningsIgnored(['test-only:'], () =>
2532 utils.act(() =>
2593 - legacyRender(
2533 + render(
2534 <React.Suspense fallback={<Fallback />}>
2535 <LazyComponent />
2536 </React.Suspense>,
2597 - container,
2537 ),
2538 ),
2539 );
@@ -2629,16 +2568,14 @@ describe('TreeListContext', () => {
2568 }
2569 }
2570
2632 - const container = document.createElement('div');
2571 withErrorsOrWarningsIgnored(
2572 ['test-only:', 'React will try to recreate this component tree'],
2573 () => {
2574 utils.act(() =>
2637 - legacyRender(
2575 + render(
2576 <ErrorBoundary>
2577 <BadRender />
2578 </ErrorBoundary>,
2641 - container,
2579 ),
2580 );
2581 },
@@ -2659,7 +2596,7 @@ describe('TreeListContext', () => {
2596 → <ErrorBoundary> ✕
2597 `);
2598
2662 - utils.act(() => ReactDOM.unmountComponentAtNode(container));
2599 + utils.act(() => unmount());
2600 expect(state).toMatchInlineSnapshot(``);
2601
2602 // Should be a noop
@@ -2693,16 +2630,14 @@ describe('TreeListContext', () => {
2630 }
2631 }
2632
2696 - const container = document.createElement('div');
2633 withErrorsOrWarningsIgnored(
2634 ['test-only:', 'React will try to recreate this component tree'],
2635 () => {
2636 utils.act(() =>
2701 - legacyRender(
2637 + render(
2638 <ErrorBoundary>
2639 <LogsWarning />
2640 </ErrorBoundary>,
2705 - container,
2641 ),
2642 );
2643 },
@@ -2723,7 +2658,7 @@ describe('TreeListContext', () => {
2658 → <ErrorBoundary> ✕
2659 `);
2660
2726 - utils.act(() => ReactDOM.unmountComponentAtNode(container));
2661 + utils.act(() => unmount());
2662 expect(state).toMatchInlineSnapshot(``);
2663
2664 // Should be a noop
@@ -2752,16 +2687,14 @@ describe('TreeListContext', () => {
2687 }
2688 }
2689
2755 - const container = document.createElement('div');
2690 withErrorsOrWarningsIgnored(
2691 ['test-only:', 'React will try to recreate this component tree'],
2692 () => {
2693 utils.act(() =>
2760 - legacyRender(
2694 + render(
2695 <ErrorBoundary>
2696 <BadRender />
2697 </ErrorBoundary>,
2764 - container,
2698 ),
2699 );
2700 },