expectWarnings() — react Function Reference
Architecture documentation for the expectWarnings() function in validateDOMNesting-test.js from the react codebase.
Entity Profile
Dependency Diagram
graph TD 65bb002f_3a8e_75cc_f375_24ceb91080c7["expectWarnings()"] b0b4862c_94d9_ba2d_8fc6_19cd1050c20e["validateDOMNesting-test.js"] 65bb002f_3a8e_75cc_f375_24ceb91080c7 -->|defined in| b0b4862c_94d9_ba2d_8fc6_19cd1050c20e style 65bb002f_3a8e_75cc_f375_24ceb91080c7 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/react-dom/src/__tests__/validateDOMNesting-test.js lines 18–67
function expectWarnings(tags, warnings = []) {
tags = [...tags];
warnings = [...warnings];
document.removeChild(document.documentElement);
document.appendChild(document.createElement('html'));
document.documentElement.innerHTML = '<head></head><body></body>';
let element = null;
const containerTag = tags.shift();
let container;
switch (containerTag) {
case '#document':
container = document;
break;
case 'html':
container = document.documentElement;
break;
case 'body':
container = document.body;
break;
case 'head':
container = document.head;
break;
case 'svg':
container = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
break;
default:
container = document.createElement(containerTag);
break;
}
while (tags.length) {
const Tag = tags.pop();
if (Tag === '#text') {
element = 'text';
} else {
element = <Tag>{element}</Tag>;
}
}
const root = ReactDOMClient.createRoot(container);
ReactDOM.flushSync(() => {
root.render(element);
});
if (warnings.length) {
assertConsoleErrorDev(warnings);
}
root.unmount();
}
Domain
Subdomains
Source
Frequently Asked Questions
What does expectWarnings() do?
expectWarnings() is a function in the react codebase, defined in packages/react-dom/src/__tests__/validateDOMNesting-test.js.
Where is expectWarnings() defined?
expectWarnings() is defined in packages/react-dom/src/__tests__/validateDOMNesting-test.js at line 18.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free