@@ -401,30 +401,33 @@ describe('useQuery', () => {
401401
402402 it ( 'should set isFetchedAfterMount to true after a query has been fetched' , async ( ) => {
403403 const key = queryKey ( )
404- const states : UseQueryResult < string > [ ] = [ ]
405404
406405 await queryClient . prefetchQuery ( key , ( ) => 'prefetched' )
407406
408407 function Page ( ) {
409- const state = useQuery ( key , ( ) => 'data' )
410- states . push ( state )
411- return null
408+ const result = useQuery ( key , ( ) => 'new data' )
409+
410+ return (
411+ < >
412+ < div > data: { result . data } </ div >
413+ < div > isFetched: { result . isFetched ? 'true' : 'false' } </ div >
414+ < div >
415+ isFetchedAfterMount: { result . isFetchedAfterMount ? 'true' : 'false' }
416+ </ div >
417+ </ >
418+ )
412419 }
413420
414- renderWithClient ( queryClient , < Page /> )
421+ const rendered = renderWithClient ( queryClient , < Page /> )
415422
416- await sleep ( 10 )
417- expect ( states . length ) . toBe ( 2 )
423+ rendered . getByText ( 'data: prefetched' )
424+ rendered . getByText ( 'isFetched: true' )
425+ rendered . getByText ( 'isFetchedAfterMount: false' )
418426
419- expect ( states [ 0 ] ) . toMatchObject ( {
420- data : 'prefetched' ,
421- isFetched : true ,
422- isFetchedAfterMount : false ,
423- } )
424- expect ( states [ 1 ] ) . toMatchObject ( {
425- data : 'data' ,
426- isFetched : true ,
427- isFetchedAfterMount : true ,
427+ await waitFor ( ( ) => {
428+ rendered . getByText ( 'data: new data' )
429+ rendered . getByText ( 'isFetched: true' )
430+ rendered . getByText ( 'isFetchedAfterMount: true' )
428431 } )
429432 } )
430433
0 commit comments