1- import { describe , expect , test , vi } from 'vitest'
2- import { render , waitFor } from '@testing-library/react'
1+ import { afterEach , beforeEach , describe , expect , test , vi } from 'vitest'
2+ import { render } from '@testing-library/react'
33import { QueryCache , QueryClientProvider , useQuery , useQueryClient } from '..'
44import { createQueryClient , queryKey , sleep } from './utils'
55
66describe ( 'QueryClientProvider' , ( ) => {
7+ beforeEach ( ( ) => {
8+ vi . useFakeTimers ( )
9+ } )
10+
11+ afterEach ( ( ) => {
12+ vi . useRealTimers ( )
13+ } )
14+
715 test ( 'sets a specific cache for all queries to use' , async ( ) => {
816 const key = queryKey ( )
917
@@ -13,10 +21,7 @@ describe('QueryClientProvider', () => {
1321 function Page ( ) {
1422 const { data } = useQuery ( {
1523 queryKey : key ,
16- queryFn : async ( ) => {
17- await sleep ( 10 )
18- return 'test'
19- } ,
24+ queryFn : ( ) => sleep ( 10 ) . then ( ( ) => 'test' ) ,
2025 } )
2126
2227 return (
@@ -32,7 +37,7 @@ describe('QueryClientProvider', () => {
3237 </ QueryClientProvider > ,
3338 )
3439
35- await waitFor ( ( ) => rendered . getByText ( 'test' ) )
40+ await vi . waitFor ( ( ) => rendered . getByText ( 'test' ) )
3641
3742 expect ( queryCache . find ( { queryKey : key } ) ) . toBeDefined ( )
3843 } )
@@ -50,10 +55,7 @@ describe('QueryClientProvider', () => {
5055 function Page1 ( ) {
5156 const { data } = useQuery ( {
5257 queryKey : key1 ,
53- queryFn : async ( ) => {
54- await sleep ( 10 )
55- return 'test1'
56- } ,
58+ queryFn : ( ) => sleep ( 10 ) . then ( ( ) => 'test1' ) ,
5759 } )
5860
5961 return (
@@ -65,10 +67,7 @@ describe('QueryClientProvider', () => {
6567 function Page2 ( ) {
6668 const { data } = useQuery ( {
6769 queryKey : key2 ,
68- queryFn : async ( ) => {
69- await sleep ( 10 )
70- return 'test2'
71- } ,
70+ queryFn : ( ) => sleep ( 10 ) . then ( ( ) => 'test2' ) ,
7271 } )
7372
7473 return (
@@ -89,8 +88,8 @@ describe('QueryClientProvider', () => {
8988 </ > ,
9089 )
9190
92- await waitFor ( ( ) => rendered . getByText ( 'test1' ) )
93- await waitFor ( ( ) => rendered . getByText ( 'test2' ) )
91+ await vi . waitFor ( ( ) => rendered . getByText ( 'test1' ) )
92+ await vi . waitFor ( ( ) => rendered . getByText ( 'test2' ) )
9493
9594 expect ( queryCache1 . find ( { queryKey : key1 } ) ) . toBeDefined ( )
9695 expect ( queryCache1 . find ( { queryKey : key2 } ) ) . not . toBeDefined ( )
@@ -114,10 +113,7 @@ describe('QueryClientProvider', () => {
114113 function Page ( ) {
115114 const { data } = useQuery ( {
116115 queryKey : key ,
117- queryFn : async ( ) => {
118- await sleep ( 10 )
119- return 'test'
120- } ,
116+ queryFn : ( ) => sleep ( 10 ) . then ( ( ) => 'test' ) ,
121117 } )
122118
123119 return (
@@ -133,7 +129,7 @@ describe('QueryClientProvider', () => {
133129 </ QueryClientProvider > ,
134130 )
135131
136- await waitFor ( ( ) => rendered . getByText ( 'test' ) )
132+ await vi . waitFor ( ( ) => rendered . getByText ( 'test' ) )
137133
138134 expect ( queryCache . find ( { queryKey : key } ) ) . toBeDefined ( )
139135 expect ( queryCache . find ( { queryKey : key } ) ?. options . gcTime ) . toBe ( Infinity )
0 commit comments