diff options
Diffstat (limited to 'spec/frontend/branches/components/sort_dropdown_spec.js')
-rw-r--r-- | spec/frontend/branches/components/sort_dropdown_spec.js | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/spec/frontend/branches/components/sort_dropdown_spec.js b/spec/frontend/branches/components/sort_dropdown_spec.js index 64ef30bb8a8..777e54f8e69 100644 --- a/spec/frontend/branches/components/sort_dropdown_spec.js +++ b/spec/frontend/branches/components/sort_dropdown_spec.js @@ -1,6 +1,7 @@ import { GlSearchBoxByClick } from '@gitlab/ui'; import { mount } from '@vue/test-utils'; import { extendedWrapper } from 'helpers/vue_test_utils_helper'; +import setWindowLocation from 'helpers/set_window_location_helper'; import SortDropdown from '~/branches/components/sort_dropdown.vue'; import * as urlUtils from '~/lib/utils/url_utility'; @@ -67,20 +68,33 @@ describe('Branches Sort Dropdown', () => { }); }); + describe('when url contains a search param', () => { + const branchName = 'branch-1'; + + beforeEach(() => { + setWindowLocation(`/root/ci-cd-project-demo/-/branches?search=${branchName}`); + wrapper = createWrapper(); + }); + + it('should set the default the input value to search param', () => { + expect(findSearchBox().props('value')).toBe(branchName); + }); + }); + describe('when submitting a search term', () => { beforeEach(() => { urlUtils.visitUrl = jest.fn(); - wrapper = createWrapper(); }); it('should call visitUrl', () => { + const searchTerm = 'branch-1'; const searchBox = findSearchBox(); - + searchBox.vm.$emit('input', searchTerm); searchBox.vm.$emit('submit'); expect(urlUtils.visitUrl).toHaveBeenCalledWith( - '/root/ci-cd-project-demo/-/branches?state=all&sort=updated_desc', + '/root/ci-cd-project-demo/-/branches?state=all&sort=updated_desc&search=branch-1', ); }); }); |