@@ -10,7 +10,7 @@ import debugShallow from './helpers/debug-shallow';
1010import { configureHostComponentNamesIfNeeded } from './helpers/host-component-names' ;
1111import { validateStringsRenderedWithinText } from './helpers/string-validation' ;
1212import { renderWithAct } from './render-act' ;
13- import { setRenderResult , screen } from './screen' ;
13+ import { setRenderResult } from './screen' ;
1414import { getQueriesForElement } from './within' ;
1515
1616export interface RenderOptions {
@@ -64,11 +64,12 @@ function renderWithStringValidation<T>(
6464 component : React . ReactElement < T > ,
6565 options : Omit < RenderOptions , 'unstable_validateStringsRenderedWithinText' > = { } ,
6666) {
67+ let renderer : ReactTestRenderer ;
6768 const { wrapper : Wrapper , ...testRendererOptions } = options ?? { } ;
6869
69- const handleRender : React . ProfilerProps [ 'onRender' ] = ( _ , phase ) => {
70- if ( phase === 'update' ) {
71- validateStringsRenderedWithinText ( screen . toJSON ( ) ) ;
70+ const handleRender : React . ProfilerOnRenderCallback = ( _ , phase ) => {
71+ if ( renderer && phase === 'update' ) {
72+ validateStringsRenderedWithinText ( renderer . toJSON ( ) ) ;
7273 }
7374 } ;
7475
@@ -78,7 +79,8 @@ function renderWithStringValidation<T>(
7879 </ Profiler >
7980 ) ;
8081
81- const renderer = renderWithAct ( wrap ( component ) , testRendererOptions ) ;
82+ renderer = renderWithAct ( wrap ( component ) , testRendererOptions ) ;
83+
8284 validateStringsRenderedWithinText ( renderer . toJSON ( ) ) ;
8385
8486 return buildRenderResult ( renderer , wrap ) ;
0 commit comments