Skip to content

Commit

Permalink
Fix Lens and update test to verify behaviour with pinned filters
Browse files Browse the repository at this point in the history
  • Loading branch information
Matt Bargar committed Jan 16, 2020
1 parent df60578 commit e103a70
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 5 deletions.
22 changes: 18 additions & 4 deletions x-pack/legacy/plugins/lens/public/app_plugin/app.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,12 @@ import { EditorFrameInstance } from '../types';
import { Storage } from '../../../../../../src/plugins/kibana_utils/public';
import { Document, SavedObjectStore } from '../persistence';
import { mount } from 'enzyme';
import { esFilters, IFieldType, IIndexPattern } from '../../../../../../src/plugins/data/public';
import {
esFilters,
FilterManager,
IFieldType,
IIndexPattern,
} from '../../../../../../src/plugins/data/public';
import { dataPluginMock } from '../../../../../../src/plugins/data/public/mocks';
const dataStartMock = dataPluginMock.createStartContract();

Expand Down Expand Up @@ -60,6 +65,10 @@ function createMockFilterManager() {
subscriber();
},
getFilters: () => filters,
getGlobalFilters: () => {
// @ts-ignore
return filters.filter(esFilters.isFilterPinned);
},
removeAll: () => {
filters = [];
subscriber();
Expand Down Expand Up @@ -821,7 +830,7 @@ describe('Lens App', () => {
);
});

it('clears all existing filters when the active saved query is cleared', () => {
it('clears all existing unpinned filters when the active saved query is cleared', () => {
const args = makeDefaultArgs();
args.editorFrame = frame;

Expand All @@ -834,8 +843,13 @@ describe('Lens App', () => {

const indexPattern = ({ id: 'index1' } as unknown) as IIndexPattern;
const field = ({ name: 'myfield' } as unknown) as IFieldType;
const pinnedField = ({ name: 'pinnedField' } as unknown) as IFieldType;

args.data.query.filterManager.setFilters([esFilters.buildExistsFilter(field, indexPattern)]);
const unpinned = esFilters.buildExistsFilter(field, indexPattern);
const pinned = esFilters.buildExistsFilter(pinnedField, indexPattern);
FilterManager.setFiltersStore([pinned], esFilters.FilterStateStore.GLOBAL_STATE);

args.data.query.filterManager.setFilters([pinned, unpinned]);
instance.update();

instance.find(TopNavMenu).prop('onClearSavedQuery')!();
Expand All @@ -844,7 +858,7 @@ describe('Lens App', () => {
expect(frame.mount).toHaveBeenLastCalledWith(
expect.any(Element),
expect.objectContaining({
filters: [],
filters: [pinned],
})
);
});
Expand Down
2 changes: 1 addition & 1 deletion x-pack/legacy/plugins/lens/public/app_plugin/app.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -258,7 +258,7 @@ export function App({
setState(s => ({
...s,
savedQuery: undefined,
filters: [],
filters: data.query.filterManager.getGlobalFilters(),
query: {
query: '',
language:
Expand Down

0 comments on commit e103a70

Please sign in to comment.