Skip to content

Commit 30e6377

Browse files
committed
test({react,preact}-query): move 'queryClient' and 'queryCache' to 'beforeEach' for per-test isolation
1 parent afb5812 commit 30e6377

16 files changed

Lines changed: 114 additions & 61 deletions

packages/preact-query/src/__tests__/QueryResetErrorBoundary.test.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,20 @@ import { ErrorBoundary } from './ErrorBoundary'
1717
import { renderWithClient } from './utils'
1818

1919
describe('QueryErrorResetBoundary', () => {
20+
let queryCache: QueryCache
21+
let queryClient: QueryClient
22+
2023
beforeEach(() => {
2124
vi.useFakeTimers()
25+
queryCache = new QueryCache()
26+
queryClient = new QueryClient({ queryCache })
2227
})
2328

2429
afterEach(() => {
2530
vi.useRealTimers()
31+
queryClient.clear()
2632
})
2733

28-
const queryCache = new QueryCache()
29-
const queryClient = new QueryClient({ queryCache })
30-
3134
describe('useQuery', () => {
3235
it('should retry fetch if the reset error boundary has been reset', async () => {
3336
const consoleMock = vi

packages/preact-query/src/__tests__/fine-grained-persister.test.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,20 @@ import { QueryCache, QueryClient, hashKey, useQuery } from '..'
1010
import { renderWithClient } from './utils'
1111

1212
describe('fine grained persister', () => {
13+
let queryCache: QueryCache
14+
let queryClient: QueryClient
15+
1316
beforeEach(() => {
1417
vi.useFakeTimers()
18+
queryCache = new QueryCache()
19+
queryClient = new QueryClient({ queryCache })
1520
})
1621

1722
afterEach(() => {
1823
vi.useRealTimers()
24+
queryClient.clear()
1925
})
2026

21-
const queryCache = new QueryCache()
22-
const queryClient = new QueryClient({ queryCache })
23-
2427
it('should restore query state from persister and not refetch', async () => {
2528
const key = queryKey()
2629
const hash = hashKey(key)

packages/preact-query/src/__tests__/useInfiniteQuery.test.tsx

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -45,22 +45,25 @@ const fetchItems = async (
4545
}
4646

4747
describe('useInfiniteQuery', () => {
48+
let queryCache: QueryCache
49+
let queryClient: QueryClient
50+
4851
beforeEach(() => {
4952
vi.useFakeTimers()
53+
queryCache = new QueryCache()
54+
queryClient = new QueryClient({
55+
queryCache,
56+
defaultOptions: {
57+
queries: {
58+
experimental_prefetchInRender: true,
59+
},
60+
},
61+
})
5062
})
5163

5264
afterEach(() => {
5365
vi.useRealTimers()
54-
})
55-
56-
const queryCache = new QueryCache()
57-
const queryClient = new QueryClient({
58-
queryCache,
59-
defaultOptions: {
60-
queries: {
61-
experimental_prefetchInRender: true,
62-
},
63-
},
66+
queryClient.clear()
6467
})
6568

6669
it('should return the correct states for a successful query', async () => {

packages/preact-query/src/__tests__/usePrefetchInfiniteQuery.test.tsx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,19 +42,21 @@ const generateInfiniteQueryOptions = (
4242
}
4343

4444
describe('usePrefetchInfiniteQuery', () => {
45+
let queryCache: QueryCache
46+
let queryClient: QueryClient
47+
4548
beforeEach(() => {
4649
vi.useFakeTimers()
50+
queryCache = new QueryCache()
51+
queryClient = new QueryClient({ queryCache })
4752
})
4853

4954
afterEach(() => {
55+
vi.useRealTimers()
5056
queryClient.clear()
5157
Fallback.mockClear()
52-
vi.useRealTimers()
5358
})
5459

55-
const queryCache = new QueryCache()
56-
const queryClient = new QueryClient({ queryCache })
57-
5860
const Fallback = vi.fn().mockImplementation(() => <div>Loading...</div>)
5961

6062
function Suspended<T = unknown>(props: {

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

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,18 @@ const generateQueryFn = (data: string) =>
2525
})
2626

2727
describe('usePrefetchQuery', () => {
28-
const queryCache = new QueryCache()
29-
const queryClient = new QueryClient({ queryCache })
28+
let queryCache: QueryCache
29+
let queryClient: QueryClient
3030

3131
beforeEach(() => {
3232
vi.useFakeTimers()
33+
queryCache = new QueryCache()
34+
queryClient = new QueryClient({ queryCache })
3335
})
3436

3537
afterEach(() => {
3638
vi.useRealTimers()
39+
queryClient.clear()
3740
})
3841

3942
function Suspended<TData = unknown>(props: {

packages/preact-query/src/__tests__/useQueries.test.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,17 +31,20 @@ import { ErrorBoundary } from './ErrorBoundary'
3131
import { renderWithClient } from './utils'
3232

3333
describe('useQueries', () => {
34+
let queryCache: QueryCache
35+
let queryClient: QueryClient
36+
3437
beforeEach(() => {
3538
vi.useFakeTimers()
39+
queryCache = new QueryCache()
40+
queryClient = new QueryClient({ queryCache })
3641
})
3742

3843
afterEach(() => {
3944
vi.useRealTimers()
45+
queryClient.clear()
4046
})
4147

42-
const queryCache = new QueryCache()
43-
const queryClient = new QueryClient({ queryCache })
44-
4548
it('should return the correct states', async () => {
4649
const key1 = queryKey()
4750
const key2 = queryKey()

packages/preact-query/src/__tests__/useSuspenseInfiniteQuery.test.tsx

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { queryKey } from '@tanstack/query-test-utils'
22
import { Suspense } from 'preact/compat'
3-
import { describe, expect, it, vi } from 'vitest'
3+
import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
44

55
import {
66
QueryCache,
@@ -11,8 +11,17 @@ import {
1111
import { renderWithClient } from './utils'
1212

1313
describe('useSuspenseInfiniteQuery', () => {
14-
const queryCache = new QueryCache()
15-
const queryClient = new QueryClient({ queryCache })
14+
let queryCache: QueryCache
15+
let queryClient: QueryClient
16+
17+
beforeEach(() => {
18+
queryCache = new QueryCache()
19+
queryClient = new QueryClient({ queryCache })
20+
})
21+
22+
afterEach(() => {
23+
queryClient.clear()
24+
})
1625

1726
it('should log an error when skipToken is passed as queryFn', () => {
1827
const consoleErrorSpy = vi

packages/preact-query/src/__tests__/useSuspenseQuery.test.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,17 +22,20 @@ import { ErrorBoundary } from './ErrorBoundary'
2222
import { renderWithClient } from './utils'
2323

2424
describe('useSuspenseQuery', () => {
25+
let queryCache: QueryCache
26+
let queryClient: QueryClient
27+
2528
beforeEach(() => {
2629
vi.useFakeTimers()
30+
queryCache = new QueryCache()
31+
queryClient = new QueryClient({ queryCache })
2732
})
2833

2934
afterEach(() => {
3035
vi.useRealTimers()
36+
queryClient.clear()
3137
})
3238

33-
const queryCache = new QueryCache()
34-
const queryClient = new QueryClient({ queryCache })
35-
3639
/**
3740
* Preact Suspense handles the rerenders differently than React.
3841
* This test only checks for 4 renders (vs. React -> 6)

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

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,20 @@ import {
1515
import { renderWithClient } from './utils'
1616

1717
describe('QueryErrorResetBoundary', () => {
18+
let queryCache: QueryCache
19+
let queryClient: QueryClient
20+
1821
beforeEach(() => {
1922
vi.useFakeTimers()
23+
queryCache = new QueryCache()
24+
queryClient = new QueryClient({ queryCache })
2025
})
2126

2227
afterEach(() => {
2328
vi.useRealTimers()
29+
queryClient.clear()
2430
})
2531

26-
const queryCache = new QueryCache()
27-
const queryClient = new QueryClient({ queryCache })
28-
2932
describe('useQuery', () => {
3033
it('should retry fetch if the reset error boundary has been reset', async () => {
3134
const consoleMock = vi

packages/react-query/src/__tests__/fine-grained-persister.test.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,20 @@ import { QueryCache, QueryClient, hashKey, useQuery } from '..'
99
import { renderWithClient } from './utils'
1010

1111
describe('fine grained persister', () => {
12+
let queryCache: QueryCache
13+
let queryClient: QueryClient
14+
1215
beforeEach(() => {
1316
vi.useFakeTimers()
17+
queryCache = new QueryCache()
18+
queryClient = new QueryClient({ queryCache })
1419
})
1520

1621
afterEach(() => {
1722
vi.useRealTimers()
23+
queryClient.clear()
1824
})
1925

20-
const queryCache = new QueryCache()
21-
const queryClient = new QueryClient({ queryCache })
22-
2326
it('should restore query state from persister and not refetch', async () => {
2427
const key = queryKey()
2528
const hash = hashKey(key)

0 commit comments

Comments
 (0)