Skip to content
代码片段 群组 项目
提交 82c66019 编辑于 作者: Tomas Bulva's avatar Tomas Bulva 提交者: Eduardo Sanz García
浏览文件

Fix for stable result when triggered repeatedly

Chnagelog: changed
上级 d42b9e58
No related branches found
No related tags found
无相关合并请求
...@@ -20,9 +20,9 @@ export default { ...@@ -20,9 +20,9 @@ export default {
return [parseBoolean(this.urlQuery?.include_archived)]; return [parseBoolean(this.urlQuery?.include_archived)];
}, },
set(value) { set(value) {
const newValue = value?.pop() ?? false; const includeArchived = [...value].pop() ?? false;
this.setQuery({ key: archivedFilterData.filterParam, value: newValue?.toString() }); this.setQuery({ key: archivedFilterData.filterParam, value: includeArchived?.toString() });
this.trackSelectCheckbox(newValue); this.trackSelectCheckbox(includeArchived);
}, },
}, },
}, },
......
...@@ -12,9 +12,14 @@ Vue.use(Vuex); ...@@ -12,9 +12,14 @@ Vue.use(Vuex);
describe('ArchivedFilter', () => { describe('ArchivedFilter', () => {
let wrapper; let wrapper;
const defaultActions = {
setQuery: jest.fn(),
};
const createComponent = (state) => { const createComponent = (state) => {
const store = new Vuex.Store({ const store = new Vuex.Store({
state, state,
actions: defaultActions,
}); });
wrapper = shallowMount(ArchivedFilter, { wrapper = shallowMount(ArchivedFilter, {
...@@ -70,4 +75,20 @@ describe('ArchivedFilter', () => { ...@@ -70,4 +75,20 @@ describe('ArchivedFilter', () => {
expect(findCheckboxFilter().attributes('checked')).toBe(checkboxState); expect(findCheckboxFilter().attributes('checked')).toBe(checkboxState);
}); });
}); });
describe('selectedFilter logic', () => {
beforeEach(() => {
createComponent();
});
it('correctly executes setQuery without mutating the input', () => {
const selectedFilter = [false];
findCheckboxFilter().vm.$emit('input', selectedFilter);
expect(defaultActions.setQuery).toHaveBeenCalledWith(expect.any(Object), {
key: 'include_archived',
value: 'false',
});
expect(selectedFilter).toEqual([false]);
});
});
}); });
0% 加载中 .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册