diff --git a/packages/react-query/src/__tests__/useMutationState.test-d.tsx b/packages/react-query/src/__tests__/useMutationState.test-d.tsx new file mode 100644 index 0000000000..795995aa44 --- /dev/null +++ b/packages/react-query/src/__tests__/useMutationState.test-d.tsx @@ -0,0 +1,23 @@ +import { describe, expectTypeOf, it } from 'vitest' +import { useMutationState } from '../useMutationState' +import type { MutationState, MutationStatus } from '@tanstack/query-core' + +describe('useMutationState', () => { + it('should default to QueryState', () => { + const result = useMutationState({ + filters: { status: 'pending' }, + }) + + expectTypeOf(result).toEqualTypeOf< + Array> + >() + }) + it('should infer with select', () => { + const result = useMutationState({ + filters: { status: 'pending' }, + select: (mutation) => mutation.state.status, + }) + + expectTypeOf(result).toEqualTypeOf>() + }) +}) diff --git a/packages/react-query/src/__tests__/useMutationState.test.tsx b/packages/react-query/src/__tests__/useMutationState.test.tsx index 71f713b42d..cd6bcda438 100644 --- a/packages/react-query/src/__tests__/useMutationState.test.tsx +++ b/packages/react-query/src/__tests__/useMutationState.test.tsx @@ -1,23 +1,9 @@ -import { - afterEach, - beforeEach, - describe, - expect, - expectTypeOf, - it, - vi, -} from 'vitest' +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest' import { fireEvent, render } from '@testing-library/react' import * as React from 'react' import { useIsMutating, useMutationState } from '../useMutationState' import { useMutation } from '../useMutation' -import { - createQueryClient, - doNotExecute, - renderWithClient, - sleep, -} from './utils' -import type { MutationState, MutationStatus } from '@tanstack/query-core' +import { createQueryClient, renderWithClient, sleep } from './utils' describe('useIsMutating', () => { beforeEach(() => { @@ -182,27 +168,6 @@ describe('useIsMutating', () => { }) describe('useMutationState', () => { - describe('types', () => { - it('should default to QueryState', () => { - doNotExecute(() => { - const result = useMutationState({ - filters: { status: 'pending' }, - }) - - expectTypeOf(result).toEqualTypeOf>() - }) - }) - it('should infer with select', () => { - doNotExecute(() => { - const result = useMutationState({ - filters: { status: 'pending' }, - select: (mutation) => mutation.state.status, - }) - - expectTypeOf(result).toEqualTypeOf>() - }) - }) - }) it('should return variables after calling mutate', async () => { const queryClient = createQueryClient() const variables: Array> = [] diff --git a/packages/react-query/src/__tests__/utils.tsx b/packages/react-query/src/__tests__/utils.tsx index 7e25177768..d3536bf98d 100644 --- a/packages/react-query/src/__tests__/utils.tsx +++ b/packages/react-query/src/__tests__/utils.tsx @@ -92,5 +92,3 @@ export function setIsServer(isServer: boolean) { }) } } - -export const doNotExecute = (_func: () => void) => true