@@ -841,17 +841,20 @@ describe('ReactDOMServerIntegration', () => {
841841 'an element with one text child with special characters' ,
842842 async render => {
843843 const e = await render ( < div > { 'foo\rbar\r\nbaz\nqux\u0000' } </ div > ) ;
844- if ( render === serverRender || render === streamRender ) {
844+ if (
845+ render === serverRender ||
846+ render === streamRender ||
847+ render === clientRenderOnServerString
848+ ) {
845849 expect ( e . childNodes . length ) . toBe ( 1 ) ;
846- // Everything becomes LF when parsed from server HTML.
850+ // Everything becomes LF when parsed from server HTML or hydrated .
847851 // Null character is ignored.
848852 expectNode ( e . childNodes [ 0 ] , TEXT_NODE_TYPE , 'foo\nbar\nbaz\nqux' ) ;
849853 } else {
850854 expect ( e . childNodes . length ) . toBe ( 1 ) ;
851- // Client rendering (or hydration) uses JS value with CR.
855+ // Client rendering uses JS value with CR.
852856 // Null character stays.
853857
854- //TODO: fixme - This is broken
855858 expectNode (
856859 e . childNodes [ 0 ] ,
857860 TEXT_NODE_TYPE ,
@@ -870,21 +873,17 @@ describe('ReactDOMServerIntegration', () => {
870873 { '\r\nbaz\nqux\u0000' }
871874 </ div > ,
872875 ) ;
873- if ( render === serverRender || render === streamRender ) {
876+ if (
877+ render === serverRender ||
878+ render === streamRender ||
879+ render === clientRenderOnServerString
880+ ) {
874881 // We have three nodes because there is a comment between them.
875882 expect ( e . childNodes . length ) . toBe ( 3 ) ;
876- // Everything becomes LF when parsed from server HTML.
883+ // Everything becomes LF when parsed from server HTML or hydrated .
877884 // Null character is ignored.
878885 expectNode ( e . childNodes [ 0 ] , TEXT_NODE_TYPE , 'foo\nbar' ) ;
879886 expectNode ( e . childNodes [ 2 ] , TEXT_NODE_TYPE , '\nbaz\nqux' ) ;
880- } else if ( render === clientRenderOnServerString ) {
881- // We have three nodes because there is a comment between them.
882- expect ( e . childNodes . length ) . toBe ( 3 ) ;
883- // Hydration uses JS value with CR and null character.
884-
885- //TODO: fixme - This is broken
886- expectNode ( e . childNodes [ 0 ] , TEXT_NODE_TYPE , 'foo\rbar' ) ;
887- expectNode ( e . childNodes [ 2 ] , TEXT_NODE_TYPE , '\r\nbaz\nqux\u0000' ) ;
888887 } else {
889888 expect ( e . childNodes . length ) . toBe ( 2 ) ;
890889 // Client rendering uses JS value with CR and null character.
0 commit comments