Skip to content

Commit 5c05857

Browse files
committed
test: Add smaller test for innerHTML=string to innerHTML=undefined
1 parent 63387c2 commit 5c05857

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

packages/react-dom/src/__tests__/ReactServerRenderingHydration-test.js

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -565,7 +565,7 @@ describe('ReactDOMServerHydration', () => {
565565
expect(domElement.innerHTML).toEqual(markup);
566566
});
567567

568-
it('should warns if innerHTML mismatches with dangerouslySetInnerHTML=undefined on the client', () => {
568+
it('should warn if innerHTML mismatches with dangerouslySetInnerHTML=undefined and children on the client', () => {
569569
const domElement = document.createElement('div');
570570
const markup = ReactDOMServer.renderToStaticMarkup(
571571
<div dangerouslySetInnerHTML={{__html: '<p>server</p>'}} />,
@@ -585,4 +585,20 @@ describe('ReactDOMServerHydration', () => {
585585
'Warning: Text content did not match. Server: "server" Client: "client"',
586586
);
587587
});
588+
589+
it('should warn if innerHTML mismatches with dangerouslySetInnerHTML=undefined on the client', () => {
590+
const domElement = document.createElement('div');
591+
const markup = ReactDOMServer.renderToStaticMarkup(
592+
<div dangerouslySetInnerHTML={{__html: '<p>server</p>'}} />,
593+
);
594+
domElement.innerHTML = markup;
595+
596+
expect(() => {
597+
ReactDOM.hydrate(<div dangerouslySetInnerHTML={undefined} />, domElement);
598+
599+
expect(domElement.innerHTML).not.toEqual(markup);
600+
}).toErrorDev(
601+
'Warning: Did not expect server HTML to contain a <p> in <div>',
602+
);
603+
});
588604
});

0 commit comments

Comments
 (0)