Build NapCat Artifacts / Windows Loader Test (push) Canceled after 0s
Build NapCat Artifacts / Type Check & Test (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Framework (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Shell (push) Canceled after 0s
50 lines
1.1 KiB
Plaintext
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
|
|
})
|
|
})
|