@@ -20,10 +20,6 @@ jest.mock("../useQueryClient");
2020jest . mock ( "../useBaseQuery" ) ;
2121
2222describe ( "useQuery" , ( ) => {
23- beforeEach ( ( ) => {
24- jest . clearAllMocks ( ) ;
25- } ) ;
26-
2723 test ( "should properly execute query" , ( ) => {
2824 useQuery ( [ "key0" ] , simpleFetcher , { staleTime : 1000 } ) ;
2925
@@ -239,10 +235,47 @@ describe("useQuery", () => {
239235 const getCurrentInstanceSpy = getCurrentInstance as jest . Mock ;
240236 getCurrentInstanceSpy . mockImplementation ( ( ) => ( { suspense : { } } ) ) ;
241237
242- const query = useQuery ( [ "suspense3 " ] , simpleFetcher ) ;
238+ const query = useQuery ( [ "suspense " ] , simpleFetcher ) ;
243239 const result = query . suspense ( ) ;
244240
245241 expect ( result ) . toBeInstanceOf ( Promise ) ;
246242 } ) ;
243+
244+ test ( "should resolve after being enabled" , ( ) => {
245+ const getCurrentInstanceSpy = getCurrentInstance as jest . Mock ;
246+ getCurrentInstanceSpy . mockImplementation ( ( ) => ( { suspense : { } } ) ) ;
247+
248+ let afterTimeout = false ;
249+ const isEnabeld = ref ( false ) ;
250+ const query = useQuery ( [ "suspense" ] , simpleFetcher , {
251+ enabled : isEnabeld ,
252+ } ) ;
253+
254+ setTimeout ( ( ) => {
255+ afterTimeout = true ;
256+ isEnabeld . value = true ;
257+ } , 200 ) ;
258+
259+ return query . suspense ( ) . then ( ( result ) => {
260+ expect ( afterTimeout ) . toBe ( true ) ;
261+ } ) ;
262+ } ) ;
263+
264+ test ( "should resolve immidiately when stale without refetching" , ( ) => {
265+ const getCurrentInstanceSpy = getCurrentInstance as jest . Mock ;
266+ getCurrentInstanceSpy . mockImplementation ( ( ) => ( { suspense : { } } ) ) ;
267+
268+ const fetcherSpy = jest . fn ( ( ) => simpleFetcher ( ) ) ;
269+
270+ // let afterTimeout = false;
271+ const query = useQuery ( [ "suspense" ] , simpleFetcher , {
272+ staleTime : 10000 ,
273+ initialData : "foo" ,
274+ } ) ;
275+
276+ return query . suspense ( ) . then ( ( ) => {
277+ expect ( fetcherSpy ) . toHaveBeenCalledTimes ( 0 ) ;
278+ } ) ;
279+ } ) ;
247280 } ) ;
248281} ) ;
0 commit comments