diff options
Diffstat (limited to 'spec/frontend/vue_shared/components/project_selector/project_selector_spec.js')
-rw-r--r-- | spec/frontend/vue_shared/components/project_selector/project_selector_spec.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/spec/frontend/vue_shared/components/project_selector/project_selector_spec.js b/spec/frontend/vue_shared/components/project_selector/project_selector_spec.js index 29bced394dc..6d1ebe85aa0 100644 --- a/spec/frontend/vue_shared/components/project_selector/project_selector_spec.js +++ b/spec/frontend/vue_shared/components/project_selector/project_selector_spec.js @@ -29,6 +29,7 @@ describe('ProjectSelector component', () => { showMinimumSearchQueryMessage: false, showLoadingIndicator: false, showSearchErrorMessage: false, + totalResults: searchResults.length, }, attachToDocument: true, }); @@ -109,4 +110,26 @@ describe('ProjectSelector component', () => { ); }); }); + + describe('the search results legend', () => { + it.each` + count | total | expected + ${0} | ${0} | ${'Showing 0 projects'} + ${1} | ${0} | ${'Showing 1 project'} + ${2} | ${0} | ${'Showing 2 projects'} + ${2} | ${3} | ${'Showing 2 of 3 projects'} + `( + 'is "$expected" given $count results are showing out of $total', + ({ count, total, expected }) => { + wrapper.setProps({ + projectSearchResults: searchResults.slice(0, count), + totalResults: total, + }); + + return wrapper.vm.$nextTick().then(() => { + expect(wrapper.text()).toContain(expected); + }); + }, + ); + }); }); |