Skip to content

Commit f266491

Browse files
committed
test(react-query/usePrefetchQuery): remove 'vi.waitFor' and add 'advanceTimersByTimeAsync'
1 parent 2bc52bf commit f266491

File tree

1 file changed

+15
-19
lines changed

1 file changed

+15
-19
lines changed

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

Lines changed: 15 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
22
import React from 'react'
3-
import { fireEvent } from '@testing-library/react'
3+
import { act, fireEvent } from '@testing-library/react'
44
import { ErrorBoundary } from 'react-error-boundary'
55
import { queryKey } from '@tanstack/query-test-utils'
66
import {
@@ -72,7 +72,8 @@ describe('usePrefetchQuery', () => {
7272

7373
const rendered = renderWithClient(queryClient, <App />)
7474

75-
await vi.waitFor(() => rendered.getByText('data: prefetchQuery'))
75+
await act(() => vi.advanceTimersByTimeAsync(11))
76+
rendered.getByText('data: prefetchQuery')
7677
expect(queryOpts.queryFn).toHaveBeenCalledTimes(1)
7778
})
7879

@@ -97,9 +98,7 @@ describe('usePrefetchQuery', () => {
9798
const rendered = renderWithClient(queryClient, <App />)
9899

99100
expect(rendered.queryByText('fetching: true')).not.toBeInTheDocument()
100-
await vi.waitFor(() =>
101-
rendered.getByText('data: The usePrefetchQuery hook is smart!'),
102-
)
101+
rendered.getByText('data: The usePrefetchQuery hook is smart!')
103102
expect(queryOpts.queryFn).not.toHaveBeenCalled()
104103
})
105104

@@ -135,7 +134,7 @@ describe('usePrefetchQuery', () => {
135134
queryFn.mockClear()
136135
const rendered = renderWithClient(queryClient, <App />)
137136

138-
await vi.waitFor(() => rendered.getByText('Oops!'))
137+
rendered.getByText('Oops!')
139138
expect(rendered.queryByText('data: Not an error')).not.toBeInTheDocument()
140139
expect(queryOpts.queryFn).not.toHaveBeenCalled()
141140

@@ -166,7 +165,8 @@ describe('usePrefetchQuery', () => {
166165
}
167166

168167
const rendered = renderWithClient(queryClient, <App />)
169-
await vi.waitFor(() => rendered.getByText('data: prefetchedQuery'))
168+
await act(() => vi.advanceTimersByTimeAsync(11))
169+
rendered.getByText('data: prefetchedQuery')
170170
expect(queryOpts.queryFn).toHaveBeenCalledTimes(1)
171171
})
172172

@@ -212,11 +212,10 @@ describe('usePrefetchQuery', () => {
212212

213213
const rendered = renderWithClient(queryClient, <App />)
214214

215-
await vi.waitFor(() => rendered.getByText('Oops!'))
215+
rendered.getByText('Oops!')
216216
fireEvent.click(rendered.getByText('Try again'))
217-
await vi.waitFor(() =>
218-
rendered.getByText('data: This is fine :dog: :fire:'),
219-
)
217+
await act(() => vi.advanceTimersByTimeAsync(11))
218+
rendered.getByText('data: This is fine :dog: :fire:')
220219
expect(queryOpts.queryFn).toHaveBeenCalledTimes(1)
221220
consoleMock.mockRestore()
222221
})
@@ -265,14 +264,11 @@ describe('usePrefetchQuery', () => {
265264
expect(
266265
queryClient.getQueryState(thirdQueryOpts.queryKey)?.fetchStatus,
267266
).toBe('fetching')
268-
await vi.waitFor(() => rendered.getByText('Loading...'))
269-
await vi.waitFor(() => rendered.getByText('data: Prefetch is nice!'))
270-
await vi.waitFor(() =>
271-
rendered.getByText('data: Prefetch is really nice!!'),
272-
)
273-
await vi.waitFor(() =>
274-
rendered.getByText('data: Prefetch does not create waterfalls!!'),
275-
)
267+
rendered.getByText('Loading...')
268+
await act(() => vi.advanceTimersByTimeAsync(11))
269+
rendered.getByText('data: Prefetch is nice!')
270+
rendered.getByText('data: Prefetch is really nice!!')
271+
rendered.getByText('data: Prefetch does not create waterfalls!!')
276272
expect(Fallback).toHaveBeenCalledTimes(1)
277273
expect(firstQueryOpts.queryFn).toHaveBeenCalledTimes(1)
278274
expect(secondQueryOpts.queryFn).toHaveBeenCalledTimes(1)

0 commit comments

Comments
 (0)