Skip to content

Commit ebd4c2b

Browse files
authored
test(react-query): add test case for useSuspenseInfiniteQuery accept skipToken as queryFn (TanStack#8270)
1 parent e802711 commit ebd4c2b

File tree

1 file changed

+43
-0
lines changed

1 file changed

+43
-0
lines changed
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
import { describe, expect, it, vi } from 'vitest'
2+
import * as React from 'react'
3+
import { QueryCache, skipToken, useSuspenseInfiniteQuery } from '..'
4+
import { createQueryClient, queryKey, renderWithClient } from './utils'
5+
6+
describe('useSuspenseInfiniteQuery', () => {
7+
const queryCache = new QueryCache()
8+
const queryClient = createQueryClient({ queryCache })
9+
10+
it('should log an error when skipToken is passed as queryFn', () => {
11+
const consoleErrorSpy = vi
12+
.spyOn(console, 'error')
13+
.mockImplementation(() => {})
14+
const key = queryKey()
15+
16+
function Page() {
17+
useSuspenseInfiniteQuery({
18+
queryKey: key,
19+
initialPageParam: 1,
20+
getNextPageParam: () => 1,
21+
// @ts-expect-error
22+
queryFn: Math.random() >= 0 ? skipToken : () => Promise.resolve(5),
23+
})
24+
25+
return null
26+
}
27+
28+
function App() {
29+
return (
30+
<React.Suspense fallback="Loading...">
31+
<Page />
32+
</React.Suspense>
33+
)
34+
}
35+
36+
renderWithClient(queryClient, <App />)
37+
38+
expect(consoleErrorSpy).toHaveBeenCalledWith(
39+
'skipToken is not allowed for useSuspenseInfiniteQuery',
40+
)
41+
consoleErrorSpy.mockRestore()
42+
})
43+
})

0 commit comments

Comments
 (0)