Skip to content

Commit 08493f2

Browse files
committed
chore: update type tests to use toMatchObjectType and toExtend
1 parent 9479f95 commit 08493f2

16 files changed

+59
-67
lines changed

packages/toolkit/src/dynamicMiddleware/tests/index.test-d.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
1-
import type { Action, Middleware, UnknownAction } from 'redux'
2-
import type { ThunkDispatch } from 'redux-thunk'
3-
import { configureStore } from '../../configureStore'
4-
import { createDynamicMiddleware } from '../index'
1+
import type {
2+
Action,
3+
Middleware,
4+
ThunkDispatch,
5+
UnknownAction,
6+
} from '@reduxjs/toolkit'
7+
import { configureStore, createDynamicMiddleware } from '@reduxjs/toolkit'
58

69
const untypedInstance = createDynamicMiddleware()
710

packages/toolkit/src/dynamicMiddleware/tests/react.test-d.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
1+
import type {
2+
Action,
3+
Middleware,
4+
ThunkDispatch,
5+
UnknownAction,
6+
} from '@reduxjs/toolkit'
7+
import { createDynamicMiddleware } from '@reduxjs/toolkit/react'
18
import type { Context } from 'react'
29
import type { ReactReduxContextValue } from 'react-redux'
3-
import type { Action, Middleware, UnknownAction } from 'redux'
4-
import type { ThunkDispatch } from 'redux-thunk'
5-
import { createDynamicMiddleware } from '../react'
610

711
interface AppDispatch extends ThunkDispatch<number, undefined, UnknownAction> {
812
(n: 1): 1

packages/toolkit/src/entities/tests/state_selectors.test.ts

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1-
import { createDraftSafeSelectorCreator } from '../../createDraftSafeSelector'
2-
import type { EntityAdapter, EntityState } from '../index'
3-
import { createEntityAdapter } from '../index'
4-
import type { EntitySelectors } from '../models'
1+
import type {
2+
EntityAdapter,
3+
EntitySelectors,
4+
EntityState,
5+
} from '@reduxjs/toolkit'
6+
import {
7+
createDraftSafeSelectorCreator,
8+
createEntityAdapter,
9+
} from '@reduxjs/toolkit'
510
import type { BookModel } from './fixtures/book'
611
import { AClockworkOrange, AnimalFarm, TheGreatGatsby } from './fixtures/book'
7-
import type { Selector } from 'reselect'
8-
import { createSelector, weakMapMemoize } from 'reselect'
9-
import { vi } from 'vitest'
1012

1113
describe('Entity State Selectors', () => {
1214
describe('Composed Selectors', () => {
@@ -103,12 +105,6 @@ describe('Entity State Selectors', () => {
103105
expect(entities).toEqual(state.entities)
104106
})
105107

106-
it('should type single entity from Dictionary as entity type or undefined', () => {
107-
expectType<
108-
Selector<EntityState<BookModel, string>, BookModel | undefined>
109-
>(createSelector(selectors.selectEntities, (entities) => entities[0]))
110-
})
111-
112108
it('should create a selector for selecting the list of models', () => {
113109
const models = selectors.selectAll(state)
114110

@@ -148,7 +144,3 @@ describe('Entity State Selectors', () => {
148144
})
149145
})
150146
})
151-
152-
function expectType<T>(t: T) {
153-
return t
154-
}

packages/toolkit/src/listenerMiddleware/tests/listenerMiddleware.withTypes.test-d.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,11 @@ describe('listenerMiddleware.withTypes<RootState, AppDispatch>()', () => {
115115
})
116116

117117
test('addListener.withTypes', () => {
118-
const addAppListener = addListener.withTypes<RootState, AppDispatch, ExtraArgument>()
118+
const addAppListener = addListener.withTypes<
119+
RootState,
120+
AppDispatch,
121+
ExtraArgument
122+
>()
119123

120124
expectTypeOf(addAppListener).toEqualTypeOf<
121125
TypedAddListener<RootState, AppDispatch, ExtraArgument>
@@ -138,7 +142,11 @@ describe('listenerMiddleware.withTypes<RootState, AppDispatch>()', () => {
138142
})
139143

140144
test('removeListener.withTypes', () => {
141-
const removeAppListener = removeListener.withTypes<RootState, AppDispatch, ExtraArgument>()
145+
const removeAppListener = removeListener.withTypes<
146+
RootState,
147+
AppDispatch,
148+
ExtraArgument
149+
>()
142150

143151
expectTypeOf(removeAppListener).toEqualTypeOf<
144152
TypedRemoveListener<RootState, AppDispatch, ExtraArgument>

packages/toolkit/src/query/tests/buildHooks.test-d.tsx

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
1-
import type {
2-
QueryStateSelector,
3-
UseMutation,
4-
UseQuery,
5-
} from '@internal/query/react/buildHooks'
1+
import type { UseMutation, UseQuery } from '@internal/query/react/buildHooks'
62
import { ANY } from '@internal/tests/utils/helpers'
73
import type { SerializedError } from '@reduxjs/toolkit'
84
import type {
9-
QueryDefinition,
105
SubscriptionOptions,
116
TypedQueryStateSelector,
127
} from '@reduxjs/toolkit/query/react'

packages/toolkit/src/query/tests/buildSelector.test-d.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react'
2-
31
import { configureStore, createSelector } from '@reduxjs/toolkit'
2+
import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react'
43

54
describe('type tests', () => {
65
test('buildSelector type test', () => {

packages/toolkit/src/query/tests/createApi.test-d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -506,7 +506,7 @@ describe('type tests', () => {
506506
).toEqualTypeOf<Post>()
507507
expectTypeOf(api.endpoints.query2.Types.RawResultType).toBeAny()
508508

509-
expectTypeOf(api.endpoints.query3.Types.QueryArg).toEqualTypeOf<void>()
509+
expectTypeOf(api.endpoints.query3.Types.QueryArg).toBeVoid()
510510
expectTypeOf(api.endpoints.query3.Types.ResultType).toEqualTypeOf<
511511
EntityState<Post, Post['id']>
512512
>()

packages/toolkit/src/query/tests/fetchBaseQuery.test.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
import { createSlice } from '@reduxjs/toolkit'
2-
import type { FetchArgs } from '@reduxjs/toolkit/query'
2+
import type { BaseQueryApi, FetchArgs } from '@reduxjs/toolkit/query'
33
import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query'
44
import { headersToObject } from 'headers-polyfill'
55
import { HttpResponse, delay, http } from 'msw'
66
import nodeFetch from 'node-fetch'
77
import queryString from 'query-string'
88
import { vi } from 'vitest'
99
import { setupApiStore } from '../../tests/utils/helpers'
10-
import type { BaseQueryApi } from '../baseQueryTypes'
1110
import { server } from './mocks/server'
1211

1312
const defaultHeaders: Record<string, string> = {
@@ -854,7 +853,6 @@ describe('fetchBaseQuery', () => {
854853
const prepare = vitest.fn()
855854
const baseQuery = fetchBaseQuery({
856855
prepareHeaders(headers, api) {
857-
expectTypeOf(api.extraOptions).toEqualTypeOf<unknown>()
858856
prepare.apply(undefined, arguments as unknown as any[])
859857
},
860858
})

packages/toolkit/src/query/tests/infiniteQueries.test-d.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import type { skipToken, InfiniteData } from '@reduxjs/toolkit/query/react'
1+
import { createSlice } from '@reduxjs/toolkit'
2+
import type { InfiniteData, skipToken } from '@reduxjs/toolkit/query/react'
23
import {
34
createApi,
45
fetchBaseQuery,
56
QueryStatus,
67
} from '@reduxjs/toolkit/query/react'
78
import { setupApiStore } from '../../tests/utils/helpers'
8-
import { createSlice } from '@internal/createSlice'
99

1010
describe('Infinite queries', () => {
1111
test('Basic infinite query behavior', async () => {

packages/toolkit/src/query/tests/retry.test-d.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import {
2-
fetchBaseQuery,
3-
type FetchBaseQueryError,
4-
type FetchBaseQueryMeta,
5-
} from '@internal/query/fetchBaseQuery'
6-
import { retry, type RetryOptions } from '@internal/query/retry'
1+
import type {
2+
FetchBaseQueryError,
3+
FetchBaseQueryMeta,
4+
RetryOptions,
5+
} from '@reduxjs/toolkit/query/react'
6+
import { fetchBaseQuery, retry } from '@reduxjs/toolkit/query/react'
77

88
describe('type tests', () => {
99
test('RetryOptions only accepts one of maxRetries or retryCondition', () => {
@@ -20,7 +20,7 @@ describe('type tests', () => {
2020
}).not.toExtend<RetryOptions>()
2121
})
2222
test('fail can be pretyped to only accept correct error and meta', () => {
23-
expectTypeOf(retry.fail).parameter(0).toEqualTypeOf<unknown>()
23+
expectTypeOf(retry.fail).parameter(0).toBeUnknown()
2424
expectTypeOf(retry.fail).parameter(1).toEqualTypeOf<{} | undefined>()
2525
expectTypeOf(retry.fail).toBeCallableWith('Literally anything', {})
2626

0 commit comments

Comments
 (0)