Skip to content

Commit f57cd57

Browse files
authored
Merge branch 'main' into test/query-core-onlineManager-replace-advanceTimersByTimeAsync-with-advanceTimersByTime
2 parents db9a7bf + d0bea3f commit f57cd57

File tree

8 files changed

+98
-102
lines changed

8 files changed

+98
-102
lines changed

packages/query-core/src/__tests__/infiniteQueryBehavior.test.tsx

Lines changed: 34 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,11 @@ describe('InfiniteQueryBehavior', () => {
3737
observerResult = result
3838
})
3939

40-
await vi.waitFor(() => {
41-
const query = queryCache.find({ queryKey: key })!
42-
return expect(observerResult).toMatchObject({
43-
isError: true,
44-
error: new Error(`Missing queryFn: '${query.queryHash}'`),
45-
})
40+
await vi.advanceTimersByTimeAsync(0)
41+
const query = queryCache.find({ queryKey: key })!
42+
expect(observerResult).toMatchObject({
43+
isError: true,
44+
error: new Error(`Missing queryFn: '${query.queryHash}'`),
4645
})
4746

4847
unsubscribe()
@@ -75,12 +74,11 @@ describe('InfiniteQueryBehavior', () => {
7574
})
7675

7776
// Wait for the first page to be fetched
78-
await vi.waitFor(() =>
79-
expect(observerResult).toMatchObject({
80-
isFetching: false,
81-
data: { pages: [1], pageParams: [1] },
82-
}),
83-
)
77+
await vi.advanceTimersByTimeAsync(0)
78+
expect(observerResult).toMatchObject({
79+
isFetching: false,
80+
data: { pages: [1], pageParams: [1] },
81+
})
8482

8583
expect(queryFnSpy).toHaveBeenNthCalledWith(1, {
8684
queryKey: key,
@@ -227,14 +225,13 @@ describe('InfiniteQueryBehavior', () => {
227225
query.cancel()
228226

229227
// Wait for the first page to be cancelled
230-
await vi.waitFor(() =>
231-
expect(observerResult).toMatchObject({
232-
isFetching: false,
233-
isError: true,
234-
error: new CancelledError(),
235-
data: undefined,
236-
}),
237-
)
228+
await vi.advanceTimersByTimeAsync(0)
229+
expect(observerResult).toMatchObject({
230+
isFetching: false,
231+
isError: true,
232+
error: new CancelledError(),
233+
data: undefined,
234+
})
238235

239236
expect(queryFnSpy).toHaveBeenCalledTimes(1)
240237

@@ -276,12 +273,11 @@ describe('InfiniteQueryBehavior', () => {
276273
})
277274

278275
// Wait for the first page to be fetched
279-
await vi.waitFor(() =>
280-
expect(observerResult).toMatchObject({
281-
isFetching: false,
282-
data: { pages: [1], pageParams: [1] },
283-
}),
284-
)
276+
await vi.advanceTimersByTimeAsync(0)
277+
expect(observerResult).toMatchObject({
278+
isFetching: false,
279+
data: { pages: [1], pageParams: [1] },
280+
})
285281

286282
queryFnSpy.mockClear()
287283

@@ -426,12 +422,11 @@ describe('InfiniteQueryBehavior', () => {
426422
observerResult = result
427423
})
428424

429-
await vi.waitFor(() =>
430-
expect(observerResult).toMatchObject({
431-
isFetching: false,
432-
data: { pages: ['data'], pageParams: [null] },
433-
}),
434-
)
425+
await vi.advanceTimersByTimeAsync(0)
426+
expect(observerResult).toMatchObject({
427+
isFetching: false,
428+
data: { pages: ['data'], pageParams: [null] },
429+
})
435430

436431
unsubscribe()
437432
})
@@ -454,12 +449,11 @@ describe('InfiniteQueryBehavior', () => {
454449
observerResult = result
455450
})
456451

457-
await vi.waitFor(() =>
458-
expect(observerResult).toMatchObject({
459-
isFetching: false,
460-
data: { pages: [1], pageParams: [1] },
461-
}),
462-
)
452+
await vi.advanceTimersByTimeAsync(0)
453+
expect(observerResult).toMatchObject({
454+
isFetching: false,
455+
data: { pages: [1], pageParams: [1] },
456+
})
463457

464458
await observer.fetchNextPage()
465459

@@ -488,9 +482,8 @@ describe('InfiniteQueryBehavior', () => {
488482

489483
const unsubscribe = observer.subscribe(() => {})
490484

491-
await vi.waitFor(() => {
492-
expect(persisterSpy).toHaveBeenCalledTimes(1)
493-
})
485+
await vi.advanceTimersByTimeAsync(0)
486+
expect(persisterSpy).toHaveBeenCalledTimes(1)
494487

495488
unsubscribe()
496489
})

packages/query-core/src/__tests__/infiniteQueryObserver.test.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ describe('InfiniteQueryObserver', () => {
2020
vi.useRealTimers()
2121
})
2222

23-
test('InfiniteQueryObserver should be able to fetch an infinite query with selector', async () => {
23+
test('should be able to fetch an infinite query with selector', async () => {
2424
const key = queryKey()
2525
const observer = new InfiniteQueryObserver(queryClient, {
2626
queryKey: key,
@@ -43,7 +43,7 @@ describe('InfiniteQueryObserver', () => {
4343
})
4444
})
4545

46-
test('InfiniteQueryObserver should pass the meta option to the queryFn', async () => {
46+
test('should pass the meta option to the queryFn', async () => {
4747
const meta = {
4848
it: 'works',
4949
}
@@ -73,7 +73,7 @@ describe('InfiniteQueryObserver', () => {
7373
expect(queryFn).toBeCalledWith(expect.objectContaining({ meta }))
7474
})
7575

76-
test('getNextPagParam and getPreviousPageParam should receive current pageParams', async () => {
76+
test('should make getNextPageParam and getPreviousPageParam receive current pageParams', async () => {
7777
const key = queryKey()
7878
let single: Array<string> = []
7979
let all: Array<string> = []
@@ -207,7 +207,7 @@ describe('InfiniteQueryObserver', () => {
207207
expect(observer.getCurrentResult().hasNextPage).toBe(false)
208208
})
209209

210-
test('getOptimisticResult should set infinite query behavior and return initial state', () => {
210+
test('should set infinite query behavior via getOptimisticResult and return the initial state', () => {
211211
const key = queryKey()
212212
const observer = new InfiniteQueryObserver(queryClient, {
213213
queryKey: key,

packages/query-core/src/__tests__/mutationCache.test.tsx

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -310,9 +310,8 @@ describe('mutationCache', () => {
310310
1,
311311
)
312312
expect(testCache.getAll()).toHaveLength(1)
313-
await vi.waitFor(() => {
314-
expect(testCache.getAll()).toHaveLength(0)
315-
})
313+
await vi.advanceTimersByTimeAsync(10)
314+
expect(testCache.getAll()).toHaveLength(0)
316315
expect(onSuccess).toHaveBeenCalledTimes(1)
317316
})
318317

@@ -376,9 +375,8 @@ describe('mutationCache', () => {
376375
const unsubscribe = observer.subscribe(() => undefined)
377376
observer.mutate(1)
378377
unsubscribe()
379-
await vi.waitFor(() => {
380-
expect(queryClient.getMutationCache().getAll()).toHaveLength(0)
381-
})
378+
await vi.advanceTimersByTimeAsync(0)
379+
expect(queryClient.getMutationCache().getAll()).toHaveLength(0)
382380
expect(onSuccess).toHaveBeenCalledTimes(1)
383381
})
384382
})

packages/query-core/src/__tests__/mutations.test.tsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -397,8 +397,8 @@ describe('mutations', () => {
397397
const onSuccess = vi.fn()
398398

399399
const mutation = new MutationObserver(queryClient, {
400-
mutationFn: () => {
401-
sleep(100)
400+
mutationFn: async () => {
401+
await sleep(100)
402402
return Promise.resolve('update')
403403
},
404404
onSuccess: () => {
@@ -409,16 +409,17 @@ describe('mutations', () => {
409409
void mutation.mutate()
410410

411411
mutation.setOptions({
412-
mutationFn: () => {
413-
sleep(100)
412+
mutationFn: async () => {
413+
await sleep(100)
414414
return Promise.resolve('update')
415415
},
416416
onSuccess: () => {
417417
onSuccess(2)
418418
},
419419
})
420420

421-
await vi.waitFor(() => expect(onSuccess).toHaveBeenCalledTimes(1))
421+
await vi.advanceTimersByTimeAsync(100)
422+
expect(onSuccess).toHaveBeenCalledTimes(1)
422423

423424
expect(onSuccess).toHaveBeenCalledWith(2)
424425
})

packages/query-core/src/__tests__/queriesObserver.test.tsx

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -254,13 +254,11 @@ describe('queriesObserver', () => {
254254
const unsubscribe2 = observer.subscribe(subscription2Handler)
255255

256256
unsubscribe1()
257-
258-
await vi.waitFor(() => {
259-
// 1 call: pending
260-
expect(subscription1Handler).toBeCalledTimes(1)
261-
// 1 call: success
262-
expect(subscription2Handler).toBeCalledTimes(1)
263-
})
257+
await vi.advanceTimersByTimeAsync(20)
258+
// 1 call: pending
259+
expect(subscription1Handler).toBeCalledTimes(1)
260+
// 1 call: success
261+
expect(subscription2Handler).toBeCalledTimes(1)
264262

265263
// Clean-up
266264
unsubscribe2()

packages/query-core/src/__tests__/queryCache.test.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,8 @@ describe('queryCache', () => {
5858

5959
const unsubScribeObserver = observer.subscribe(vi.fn())
6060

61-
await vi.waitFor(() => expect(events.length).toBe(8))
61+
await vi.advanceTimersByTimeAsync(11)
62+
expect(events.length).toBe(8)
6263

6364
expect(events).toEqual([
6465
'added', // 1. Query added -> loading

0 commit comments

Comments
 (0)