mirror of
https://github.com/grafana/grafana.git
synced 2025-02-12 16:45:43 -06:00
* Refactor: Adds Redux Toolkit package * Refactor: Uses configureStore from Redux Toolkit * Refactor: Migrates applicationReducer * Refactor: Migrates appNotificationsReducer * Refactor: Migrates locationReducer * Refactor: Migrates navModelReducer * Refactor: Migrates teamsReducer and teamReducer * Refactor: Migrates cleanUpAction * Refactor: Migrates alertRulesReducer * Refactor: Cleans up recursiveCleanState * Refactor: Switched to Angular compatible reducers * Refactor: Migrates folderReducer * Refactor: Migrates dashboardReducer * Migrates panelEditorReducer * Refactor: Migrates dataSourcesReducer * Refactor: Migrates usersReducer * Refactor: Migrates organizationReducer * Refactor: Migrates pluginsReducer * Refactor: Migrates ldapReducer and ldapUserReducer * Refactor: Migrates apiKeysReducer * Refactor: Migrates exploreReducer and itemReducer * Refactor: Removes actionCreatorFactory and reducerFactory * Refactor: Moves mocks to test section * Docs: Removes sections about home grown framework * Update contribute/style-guides/redux.md Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com> * Refactor: Cleans up some code * Refactor: Adds state typings * Refactor: Cleans up typings * Refactor: Adds comment about ImmerJs autoFreeze Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
93 lines
2.8 KiB
TypeScript
93 lines
2.8 KiB
TypeScript
import {
|
|
initialTeamsState,
|
|
initialTeamState,
|
|
setSearchMemberQuery,
|
|
setSearchQuery,
|
|
teamGroupsLoaded,
|
|
teamLoaded,
|
|
teamMembersLoaded,
|
|
teamReducer,
|
|
teamsLoaded,
|
|
teamsReducer,
|
|
} from './reducers';
|
|
import { getMockTeam, getMockTeamGroups, getMockTeamMember } from '../__mocks__/teamMocks';
|
|
import { reducerTester } from '../../../../test/core/redux/reducerTester';
|
|
import { TeamsState, TeamState } from '../../../types';
|
|
|
|
describe('teams reducer', () => {
|
|
describe('when teamsLoaded is dispatched', () => {
|
|
it('then state should be correct', () => {
|
|
reducerTester<TeamsState>()
|
|
.givenReducer(teamsReducer, { ...initialTeamsState })
|
|
.whenActionIsDispatched(teamsLoaded([getMockTeam()]))
|
|
.thenStateShouldEqual({
|
|
...initialTeamsState,
|
|
hasFetched: true,
|
|
teams: [getMockTeam()],
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('when setSearchQueryAction is dispatched', () => {
|
|
it('then state should be correct', () => {
|
|
reducerTester<TeamsState>()
|
|
.givenReducer(teamsReducer, { ...initialTeamsState })
|
|
.whenActionIsDispatched(setSearchQuery('test'))
|
|
.thenStateShouldEqual({
|
|
...initialTeamsState,
|
|
searchQuery: 'test',
|
|
});
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('team reducer', () => {
|
|
describe('when loadTeamsAction is dispatched', () => {
|
|
it('then state should be correct', () => {
|
|
reducerTester<TeamState>()
|
|
.givenReducer(teamReducer, { ...initialTeamState })
|
|
.whenActionIsDispatched(teamLoaded(getMockTeam()))
|
|
.thenStateShouldEqual({
|
|
...initialTeamState,
|
|
team: getMockTeam(),
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('when loadTeamMembersAction is dispatched', () => {
|
|
it('then state should be correct', () => {
|
|
reducerTester<TeamState>()
|
|
.givenReducer(teamReducer, { ...initialTeamState })
|
|
.whenActionIsDispatched(teamMembersLoaded([getMockTeamMember()]))
|
|
.thenStateShouldEqual({
|
|
...initialTeamState,
|
|
members: [getMockTeamMember()],
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('when setSearchMemberQueryAction is dispatched', () => {
|
|
it('then state should be correct', () => {
|
|
reducerTester<TeamState>()
|
|
.givenReducer(teamReducer, { ...initialTeamState })
|
|
.whenActionIsDispatched(setSearchMemberQuery('member'))
|
|
.thenStateShouldEqual({
|
|
...initialTeamState,
|
|
searchMemberQuery: 'member',
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('when loadTeamGroupsAction is dispatched', () => {
|
|
it('then state should be correct', () => {
|
|
reducerTester<TeamState>()
|
|
.givenReducer(teamReducer, { ...initialTeamState })
|
|
.whenActionIsDispatched(teamGroupsLoaded(getMockTeamGroups(1)))
|
|
.thenStateShouldEqual({
|
|
...initialTeamState,
|
|
groups: getMockTeamGroups(1),
|
|
});
|
|
});
|
|
});
|
|
});
|