Files
NapCatQQ/.pnpm-store/v3/files/32/e3a8fc7d3c59158d800156a8a84f6b0d9fb016f3ad943d47aa53f25d343100e831c227349739988686f916fab19259aaf71cc12e3f26ac3b2f04964329bfed
T
TanTan e311ca3275
Build NapCat Artifacts / Type Check & Test (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

50 lines
1.1 KiB
Plaintext

import { createDraftSafeSelector } from '@reduxjs/toolkit'
interface Todo {
id: number
completed: boolean
}
interface Alert {
id: number
read: boolean
}
interface RootState {
todos: Todo[]
alerts: Alert[]
}
const rootState: RootState = {
todos: [
{ id: 0, completed: false },
{ id: 1, completed: false },
],
alerts: [
{ id: 0, read: false },
{ id: 1, read: false },
],
}
describe(createDraftSafeSelector.withTypes, () => {
const createTypedDraftSafeSelector =
createDraftSafeSelector.withTypes<RootState>()
test('should return createDraftSafeSelector', () => {
expect(createTypedDraftSafeSelector.withTypes).toEqual(expect.any(Function))
expect(createTypedDraftSafeSelector.withTypes().withTypes).toEqual(
expect.any(Function),
)
expect(createTypedDraftSafeSelector).toBe(createDraftSafeSelector)
const selectTodoIds = createTypedDraftSafeSelector(
[(state) => state.todos],
(todos) => todos.map(({ id }) => id),
)
expect(selectTodoIds(rootState)).to.be.an('array').that.is.not.empty
})
})