Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(*): vitest v2 #7735

Merged
merged 6 commits into from
Jul 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@
"@types/node": "^20.12.12",
"@types/react": "npm:types-react@rc",
"@types/react-dom": "npm:types-react-dom@rc",
"@vitest/coverage-istanbul": "^1.6.0",
"@vitest/coverage-istanbul": "^2.0.2",
"cpy-cli": "^5.0.0",
"esbuild-plugin-file-path-extensions": "^2.1.0",
"eslint": "^8.57.0",
Expand All @@ -75,7 +75,7 @@
"typescript51": "npm:typescript@5.1",
"typescript52": "npm:typescript@5.2",
"vite": "^5.2.11",
"vitest": "^1.6.0"
"vitest": "^2.0.2"
},
"pnpm": {
"overrides": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ describe('lazyInit', () => {

test('should init lazily and only once', async () => {
const initCallFn = vi.fn()
const registerDataValue = vi.fn<[number]>()
const registerDataValue = vi.fn<(arg: number) => any>()

let value!: { data: WritableSignal<number> }
const outerSignal = signal(0)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ describe('lazySignalInitializer', () => {

test('should init lazily and only once', async () => {
const initCallFn = vi.fn()
const registerEffectValue = vi.fn<[number]>()
const registerEffectValue = vi.fn<(arg: number) => any>()

let value!: Signal<number>
const outerSignal = signal(0)
Expand Down
6 changes: 4 additions & 2 deletions packages/query-core/src/__tests__/hydration.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,8 @@ describe('dehydration and rehydration', () => {
key: [{ nestedKey: 1 }],
})

const fetchDataAfterHydration = vi.fn<Array<unknown>, unknown>()
const fetchDataAfterHydration =
vi.fn<(...args: Array<unknown>) => unknown>()
await hydrationClient.prefetchQuery({
queryKey: ['string'],
queryFn: fetchDataAfterHydration,
Expand Down Expand Up @@ -280,7 +281,8 @@ describe('dehydration and rehydration', () => {
})?.state.data,
).toBe('string')

const fetchDataAfterHydration = vi.fn<Array<unknown>, unknown>()
const fetchDataAfterHydration =
vi.fn<(...args: Array<unknown>) => unknown>()
await hydrationClient.prefetchQuery({
queryKey: ['string', { key: ['string'], key2: 0 }],
queryFn: fetchDataAfterHydration,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,9 @@ describe('InfiniteQueryObserver', () => {
test('should stop refetching if undefined is returned from getNextPageParam', async () => {
const key = queryKey()
let next: number | undefined = 2
const queryFn = vi.fn<any, any>(({ pageParam }) => String(pageParam))
const queryFn = vi.fn<(...args: Array<any>) => any>(({ pageParam }) =>
String(pageParam),
)
const observer = new InfiniteQueryObserver(queryClient, {
queryKey: key,
queryFn,
Expand All @@ -133,7 +135,9 @@ describe('InfiniteQueryObserver', () => {
test('should stop refetching if null is returned from getNextPageParam', async () => {
const key = queryKey()
let next: number | null = 2
const queryFn = vi.fn<any, any>(({ pageParam }) => String(pageParam))
const queryFn = vi.fn<(...args: Array<any>) => any>(({ pageParam }) =>
String(pageParam),
)
const observer = new InfiniteQueryObserver(queryClient, {
queryKey: key,
queryFn,
Expand Down
26 changes: 15 additions & 11 deletions packages/query-core/src/__tests__/query.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -196,8 +196,9 @@ describe('query', () => {

const queryFn = vi
.fn<
[QueryFunctionContext<ReturnType<typeof queryKey>>],
Promise<'data'>
(
context: QueryFunctionContext<ReturnType<typeof queryKey>>,
) => Promise<'data'>
>()
.mockResolvedValue('data')

Expand Down Expand Up @@ -280,10 +281,12 @@ describe('query', () => {
test('should provide an AbortSignal to the queryFn that provides info about the cancellation state', async () => {
const key = queryKey()

const queryFn = vi.fn<
[QueryFunctionContext<ReturnType<typeof queryKey>>],
Promise<unknown>
>()
const queryFn =
vi.fn<
(
context: QueryFunctionContext<ReturnType<typeof queryKey>>,
) => Promise<unknown>
>()
const onAbort = vi.fn()
const abortListener = vi.fn()
let error
Expand Down Expand Up @@ -330,7 +333,7 @@ describe('query', () => {
test('should not continue if explicitly cancelled', async () => {
const key = queryKey()

const queryFn = vi.fn<Array<unknown>, unknown>()
const queryFn = vi.fn<(...args: Array<unknown>) => unknown>()

queryFn.mockImplementation(async () => {
await sleep(10)
Expand Down Expand Up @@ -362,7 +365,7 @@ describe('query', () => {
test('should not error if reset while pending', async () => {
const key = queryKey()

const queryFn = vi.fn<Array<unknown>, unknown>()
const queryFn = vi.fn<(...args: Array<unknown>) => unknown>()

queryFn.mockImplementation(async () => {
await sleep(10)
Expand All @@ -389,7 +392,7 @@ describe('query', () => {
test('should be able to refetch a cancelled query', async () => {
const key = queryKey()

const queryFn = vi.fn<Array<unknown>, unknown>()
const queryFn = vi.fn<(...args: Array<unknown>) => unknown>()

queryFn.mockImplementation(async () => {
await sleep(50)
Expand Down Expand Up @@ -895,8 +898,9 @@ describe('query', () => {

const queryFn = vi
.fn<
[QueryFunctionContext<ReturnType<typeof queryKey>>],
Promise<unknown>
(
context: QueryFunctionContext<ReturnType<typeof queryKey>>,
) => Promise<unknown>
>()
.mockImplementation(({ signal }) => {
return new Promise((resolve, reject) => {
Expand Down
128 changes: 96 additions & 32 deletions packages/query-core/src/__tests__/queryClient.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -926,7 +926,9 @@ describe('queryClient', () => {
describe('refetchQueries', () => {
test('should not refetch if all observers are disabled', async () => {
const key = queryKey()
const queryFn = vi.fn<Array<unknown>, string>().mockReturnValue('data')
const queryFn = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data')
await queryClient.fetchQuery({ queryKey: key, queryFn })
const observer1 = new QueryObserver(queryClient, {
queryKey: key,
Expand All @@ -940,7 +942,9 @@ describe('queryClient', () => {
})
test('should refetch if at least one observer is enabled', async () => {
const key = queryKey()
const queryFn = vi.fn<Array<unknown>, string>().mockReturnValue('data')
const queryFn = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data')
await queryClient.fetchQuery({ queryKey: key, queryFn })
const observer1 = new QueryObserver(queryClient, {
queryKey: key,
Expand All @@ -962,8 +966,12 @@ describe('queryClient', () => {
test('should refetch all queries when no arguments are given', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer1 = new QueryObserver(queryClient, {
Expand All @@ -990,8 +998,12 @@ describe('queryClient', () => {
test('should be able to refetch all fresh queries', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand All @@ -1009,8 +1021,12 @@ describe('queryClient', () => {
test('should be able to refetch all stale queries', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand All @@ -1029,8 +1045,12 @@ describe('queryClient', () => {
test('should be able to refetch all stale and active queries', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
queryClient.invalidateQueries({ queryKey: key1 })
Expand All @@ -1051,8 +1071,12 @@ describe('queryClient', () => {
test('should be able to refetch all active and inactive queries', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand All @@ -1070,8 +1094,12 @@ describe('queryClient', () => {
test('should be able to refetch all active and inactive queries', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand All @@ -1089,8 +1117,12 @@ describe('queryClient', () => {
test('should be able to refetch only active queries', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand All @@ -1108,8 +1140,12 @@ describe('queryClient', () => {
test('should be able to refetch only inactive queries', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand Down Expand Up @@ -1148,7 +1184,9 @@ describe('queryClient', () => {

test('should resolve Promise immediately if query is paused', async () => {
const key1 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
const onlineMock = mockOnlineManagerIsOnline(false)

Expand All @@ -1162,7 +1200,9 @@ describe('queryClient', () => {
test('should refetch if query we are offline but query networkMode is always', async () => {
const key1 = queryKey()
queryClient.setQueryDefaults(key1, { networkMode: 'always' })
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
const onlineMock = mockOnlineManagerIsOnline(false)

Expand All @@ -1178,8 +1218,12 @@ describe('queryClient', () => {
test('should refetch active queries by default', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand All @@ -1197,8 +1241,12 @@ describe('queryClient', () => {
test('should not refetch inactive queries by default', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand All @@ -1216,8 +1264,12 @@ describe('queryClient', () => {
test('should not refetch active queries when "refetch" is "none"', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand All @@ -1238,8 +1290,12 @@ describe('queryClient', () => {
test('should refetch inactive queries when "refetch" is "inactive"', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand All @@ -1262,8 +1318,12 @@ describe('queryClient', () => {
test('should refetch active and inactive queries when "refetch" is "all"', async () => {
const key1 = queryKey()
const key2 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
await queryClient.fetchQuery({ queryKey: key1, queryFn: queryFn1 })
await queryClient.fetchQuery({ queryKey: key2, queryFn: queryFn2 })
const observer = new QueryObserver(queryClient, {
Expand Down Expand Up @@ -1385,8 +1445,12 @@ describe('queryClient', () => {
const key1 = queryKey()
const key2 = queryKey()
const key3 = queryKey()
const queryFn1 = vi.fn<Array<unknown>, string>().mockReturnValue('data1')
const queryFn2 = vi.fn<Array<unknown>, string>().mockReturnValue('data2')
const queryFn1 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data1')
const queryFn2 = vi
.fn<(...args: Array<unknown>) => string>()
.mockReturnValue('data2')
const observer1 = new QueryObserver(queryClient, {
queryKey: key1,
queryFn: queryFn1,
Expand Down
Loading
Loading