summaryrefslogtreecommitdiff
path: root/spec/frontend/search_spec.js
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-03-23 09:09:42 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-03-23 09:09:42 +0000
commite4bf776a8829e5186a0f63603c0be627b891d80e (patch)
tree537fe714bd336bfee9f30b101a5072950a04a62a /spec/frontend/search_spec.js
parent1635eacd2a9293cd04d21e82def6e2c14ed01242 (diff)
downloadgitlab-ce-e4bf776a8829e5186a0f63603c0be627b891d80e.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend/search_spec.js')
-rw-r--r--spec/frontend/search_spec.js44
1 files changed, 30 insertions, 14 deletions
diff --git a/spec/frontend/search_spec.js b/spec/frontend/search_spec.js
index af93fa88f72..1573365538c 100644
--- a/spec/frontend/search_spec.js
+++ b/spec/frontend/search_spec.js
@@ -1,8 +1,10 @@
import $ from 'jquery';
import Api from '~/api';
import Search from '~/pages/search/show/search';
+import setHighlightClass from '~/pages/search/show/highlight_blob_search_result';
jest.mock('~/api');
+jest.mock('~/pages/search/show/highlight_blob_search_result');
describe('Search', () => {
const fixturePath = 'search/show.html';
@@ -16,27 +18,41 @@ describe('Search', () => {
preloadFixtures(fixturePath);
- beforeEach(() => {
- loadFixtures(fixturePath);
- new Search(); // eslint-disable-line no-new
+ describe('constructor side effects', () => {
+ afterEach(() => {
+ jest.restoreAllMocks();
+ });
+
+ it('highlights lines with search terms in blob search results', () => {
+ new Search(); // eslint-disable-line no-new
+
+ expect(setHighlightClass).toHaveBeenCalled();
+ });
});
- it('requests groups from backend when filtering', () => {
- jest.spyOn(Api, 'groups').mockImplementation(term => {
- expect(term).toBe(searchTerm);
+ describe('dropdown behavior', () => {
+ beforeEach(() => {
+ loadFixtures(fixturePath);
+ new Search(); // eslint-disable-line no-new
});
- const inputElement = fillDropdownInput('.js-search-group-dropdown');
+ it('requests groups from backend when filtering', () => {
+ jest.spyOn(Api, 'groups').mockImplementation(term => {
+ expect(term).toBe(searchTerm);
+ });
- $(inputElement).trigger('input');
- });
+ const inputElement = fillDropdownInput('.js-search-group-dropdown');
- it('requests projects from backend when filtering', () => {
- jest.spyOn(Api, 'projects').mockImplementation(term => {
- expect(term).toBe(searchTerm);
+ $(inputElement).trigger('input');
});
- const inputElement = fillDropdownInput('.js-search-project-dropdown');
- $(inputElement).trigger('input');
+ it('requests projects from backend when filtering', () => {
+ jest.spyOn(Api, 'projects').mockImplementation(term => {
+ expect(term).toBe(searchTerm);
+ });
+ const inputElement = fillDropdownInput('.js-search-project-dropdown');
+
+ $(inputElement).trigger('input');
+ });
});
});