@@ -29,7 +29,7 @@ describe('Server Side Rendering', () => {
29
29
30
30
it ( 'should not trigger fetch' , ( ) => {
31
31
const key = queryKey ( )
32
- const queryFn = vi . fn ( ) . mockReturnValue ( 'data' )
32
+ const queryFn = vi . fn ( ( ) => sleep ( 10 ) . then ( ( ) => 'data' ) )
33
33
34
34
function Page ( ) {
35
35
const query = useQuery ( { queryKey : key , queryFn } )
@@ -51,6 +51,7 @@ describe('Server Side Rendering', () => {
51
51
52
52
expect ( markup ) . toContain ( 'status pending' )
53
53
expect ( queryFn ) . toHaveBeenCalledTimes ( 0 )
54
+
54
55
queryCache . clear ( )
55
56
} )
56
57
@@ -59,26 +60,21 @@ describe('Server Side Rendering', () => {
59
60
60
61
const promise = queryClient . fetchQuery ( {
61
62
queryKey : key ,
62
- queryFn : async ( ) => {
63
- await sleep ( 10 )
64
- return 'data'
65
- } ,
63
+ queryFn : ( ) => sleep ( 10 ) . then ( ( ) => 'data' ) ,
66
64
} )
67
65
await vi . advanceTimersByTimeAsync ( 10 )
68
66
69
67
const data = await promise
70
68
71
69
expect ( data ) . toBe ( 'data' )
72
70
expect ( queryCache . find ( { queryKey : key } ) ?. state . data ) . toBe ( 'data' )
71
+
73
72
queryCache . clear ( )
74
73
} )
75
74
76
75
it ( 'should return existing data from the cache' , async ( ) => {
77
76
const key = queryKey ( )
78
- const queryFn = vi . fn ( async ( ) => {
79
- await sleep ( 10 )
80
- return 'data'
81
- } )
77
+ const queryFn = vi . fn ( ( ) => sleep ( 10 ) . then ( ( ) => 'data' ) )
82
78
83
79
function Page ( ) {
84
80
const query = useQuery ( { queryKey : key , queryFn } )
@@ -103,6 +99,7 @@ describe('Server Side Rendering', () => {
103
99
104
100
expect ( markup ) . toContain ( 'status success' )
105
101
expect ( queryFn ) . toHaveBeenCalledTimes ( 1 )
102
+
106
103
queryCache . clear ( )
107
104
} )
108
105
@@ -113,7 +110,7 @@ describe('Server Side Rendering', () => {
113
110
const [ page , setPage ] = React . useState ( 1 )
114
111
const { data } = useQuery ( {
115
112
queryKey : [ key , page ] ,
116
- queryFn : ( ) => Promise . resolve ( page ) ,
113
+ queryFn : ( ) => sleep ( 10 ) . then ( ( ) => page ) ,
117
114
initialData : 1 ,
118
115
} )
119
116
@@ -134,15 +131,13 @@ describe('Server Side Rendering', () => {
134
131
const keys = queryCache . getAll ( ) . map ( ( query ) => query . queryKey )
135
132
136
133
expect ( keys ) . toEqual ( [ [ key , 1 ] ] )
134
+
137
135
queryCache . clear ( )
138
136
} )
139
137
140
138
it ( 'useInfiniteQuery should return the correct state' , async ( ) => {
141
139
const key = queryKey ( )
142
- const queryFn = vi . fn ( async ( ) => {
143
- await sleep ( 5 )
144
- return 'page 1'
145
- } )
140
+ const queryFn = vi . fn ( ( ) => sleep ( 10 ) . then ( ( ) => 'page 1' ) )
146
141
147
142
function Page ( ) {
148
143
const query = useInfiniteQuery ( {
@@ -165,7 +160,7 @@ describe('Server Side Rendering', () => {
165
160
queryFn,
166
161
initialPageParam : 0 ,
167
162
} )
168
- await vi . advanceTimersByTimeAsync ( 5 )
163
+ await vi . advanceTimersByTimeAsync ( 10 )
169
164
170
165
const markup = renderToString (
171
166
< QueryClientProvider client = { queryClient } >
@@ -175,6 +170,7 @@ describe('Server Side Rendering', () => {
175
170
176
171
expect ( markup ) . toContain ( 'page 1' )
177
172
expect ( queryFn ) . toHaveBeenCalledTimes ( 1 )
173
+
178
174
queryCache . clear ( )
179
175
} )
180
176
} )
0 commit comments