diff --git a/ee/app/assets/javascripts/security_dashboard/components/shared/vulnerability_report/vulnerability_list.vue b/ee/app/assets/javascripts/security_dashboard/components/shared/vulnerability_report/vulnerability_list.vue index 561a6759770bc21412aeefc13774f99501d0bbba..6d1632ed4872cc03174f3804acd1de9498407b1f 100644 --- a/ee/app/assets/javascripts/security_dashboard/components/shared/vulnerability_report/vulnerability_list.vue +++ b/ee/app/assets/javascripts/security_dashboard/components/shared/vulnerability_report/vulnerability_list.vue @@ -212,6 +212,9 @@ export default { const fieldName = convertToSnakeCase(context.sortBy); const direction = context.sortDesc ? 'desc' : 'asc'; + if (!fieldName) { + return; + } this.$emit('sort-changed', `${fieldName}_${direction}`); }, getVulnerabilityState(state = '') { diff --git a/ee/spec/frontend/security_dashboard/components/shared/vulnerability_report/vulnerability_list_spec.js b/ee/spec/frontend/security_dashboard/components/shared/vulnerability_report/vulnerability_list_spec.js index d2192e1525edade31b3cf983899443f4ddf2571e..53509375592fbea476f121c84ba1239f01273369 100644 --- a/ee/spec/frontend/security_dashboard/components/shared/vulnerability_report/vulnerability_list_spec.js +++ b/ee/spec/frontend/security_dashboard/components/shared/vulnerability_report/vulnerability_list_spec.js @@ -534,6 +534,13 @@ describe('Vulnerability list component', () => { }); describe('sort-changed listener', () => { + it('does not emit when sort by data is empty', () => { + createWrapper(); + + findTable().vm.$emit('sort-changed', { sortBy: '', sortDesc: true }); + expect(wrapper.emitted('sort-changed')).toBe(undefined); + }); + it('emits sort by data in expected format', () => { createWrapper();