Files
Josh Hunt 3c6e0e8ef8 Chore: ESlint import order (#44959)
* Add and configure eslint-plugin-import

* Fix the lint:ts npm command

* Autofix + prettier all the files

* Manually fix remaining files

* Move jquery code in jest-setup to external file to safely reorder imports

* Resolve issue caused by circular dependencies within Prometheus

* Update .betterer.results

* Fix missing // @ts-ignore

* ignore iconBundle.ts

* Fix missing // @ts-ignore
2022-04-22 14:33:13 +01:00

78 lines
2.4 KiB
TypeScript

import { reducerTester } from '../../../../../test/core/redux/reducerTester';
import {
folderFilterChanged,
initialLibraryPanelsSearchState,
libraryPanelsSearchReducer,
LibraryPanelsSearchState,
panelFilterChanged,
searchChanged,
sortChanged,
} from './reducer';
describe('libraryPanelsSearchReducer', () => {
describe('when searchChanged is dispatched', () => {
it('then state should be correct', () => {
reducerTester<LibraryPanelsSearchState>()
.givenReducer(libraryPanelsSearchReducer, {
...initialLibraryPanelsSearchState,
})
.whenActionIsDispatched(searchChanged('searching for'))
.thenStateShouldEqual({
...initialLibraryPanelsSearchState,
searchQuery: 'searching for',
});
});
});
describe('when sortChanged is dispatched', () => {
it('then state should be correct', () => {
reducerTester<LibraryPanelsSearchState>()
.givenReducer(libraryPanelsSearchReducer, {
...initialLibraryPanelsSearchState,
})
.whenActionIsDispatched(sortChanged({ label: 'Ascending', value: 'asc' }))
.thenStateShouldEqual({
...initialLibraryPanelsSearchState,
sortDirection: 'asc',
});
});
});
describe('when panelFilterChanged is dispatched', () => {
it('then state should be correct', () => {
const plugins: any = [
{ id: 'graph', name: 'Graph' },
{ id: 'timeseries', name: 'Time Series' },
];
reducerTester<LibraryPanelsSearchState>()
.givenReducer(libraryPanelsSearchReducer, {
...initialLibraryPanelsSearchState,
})
.whenActionIsDispatched(panelFilterChanged(plugins))
.thenStateShouldEqual({
...initialLibraryPanelsSearchState,
panelFilter: ['graph', 'timeseries'],
});
});
});
describe('when folderFilterChanged is dispatched', () => {
it('then state should be correct', () => {
const folders: any = [
{ id: 0, name: 'General' },
{ id: 1, name: 'Folder' },
];
reducerTester<LibraryPanelsSearchState>()
.givenReducer(libraryPanelsSearchReducer, {
...initialLibraryPanelsSearchState,
})
.whenActionIsDispatched(folderFilterChanged(folders))
.thenStateShouldEqual({
...initialLibraryPanelsSearchState,
folderFilter: ['0', '1'],
});
});
});
});