@@ -10,7 +10,7 @@ import {
10
10
import { act , fireEvent , render , waitFor } from '@testing-library/react'
11
11
import * as React from 'react'
12
12
import { ErrorBoundary } from 'react-error-boundary'
13
- import { useSuspenseQueries , useSuspenseQuery } from '..'
13
+ import { skipToken , useSuspenseQueries , useSuspenseQuery } from '..'
14
14
import { createQueryClient , queryKey , renderWithClient , sleep } from './utils'
15
15
import type { UseSuspenseQueryOptions } from '..'
16
16
@@ -658,4 +658,40 @@ describe('useSuspenseQueries 2', () => {
658
658
expect ( queryClient . getQueryData ( key ) ) . toBe ( undefined )
659
659
} )
660
660
} )
661
+
662
+ it ( 'should log an error when skipToken is passed as queryFn' , ( ) => {
663
+ const consoleErrorSpy = vi
664
+ . spyOn ( console , 'error' )
665
+ . mockImplementation ( ( ) => { } )
666
+ const key = queryKey ( )
667
+
668
+ function Page ( ) {
669
+ useSuspenseQueries ( {
670
+ queries : [
671
+ {
672
+ queryKey : key ,
673
+ // @ts -expect-error
674
+ queryFn : Math . random ( ) >= 0 ? skipToken : ( ) => Promise . resolve ( 5 ) ,
675
+ } ,
676
+ ] ,
677
+ } )
678
+
679
+ return null
680
+ }
681
+
682
+ function App ( ) {
683
+ return (
684
+ < React . Suspense fallback = "Loading..." >
685
+ < Page />
686
+ </ React . Suspense >
687
+ )
688
+ }
689
+
690
+ renderWithClient ( queryClient , < App /> )
691
+
692
+ expect ( consoleErrorSpy ) . toHaveBeenCalledWith (
693
+ 'skipToken is not allowed for useSuspenseQueries' ,
694
+ )
695
+ consoleErrorSpy . mockRestore ( )
696
+ } )
661
697
} )
0 commit comments