Skip to content

Commit b8ea29e

Browse files
authored
test(react-query): use fake timers for QueryClientProvider.test.tsx (#9074)
1 parent 83f01cd commit b8ea29e

File tree

1 file changed

+18
-22
lines changed

1 file changed

+18
-22
lines changed

packages/react-query/src/__tests__/QueryClientProvider.test.tsx

+18-22
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,17 @@
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'
33
import { QueryCache, QueryClientProvider, useQuery, useQueryClient } from '..'
44
import { createQueryClient, queryKey, sleep } from './utils'
55

66
describe('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

Comments
 (0)