summaryrefslogtreecommitdiff
path: root/spec/javascripts/filtered_search/dropdown_user_spec.js.es6
blob: 10a316f31b49a26731b4334e5a30125bb8466c9e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
require('~/filtered_search/dropdown_utils');
require('~/filtered_search/filtered_search_tokenizer');
require('~/filtered_search/filtered_search_dropdown');
require('~/filtered_search/dropdown_user');

(() => {
  describe('Dropdown User', () => {
    describe('getSearchInput', () => {
      let dropdownUser;

      beforeEach(() => {
        spyOn(gl.FilteredSearchDropdown.prototype, 'constructor').and.callFake(() => {});
        spyOn(gl.DropdownUser.prototype, 'getProjectId').and.callFake(() => {});
        spyOn(gl.DropdownUtils, 'getSearchInput').and.callFake(() => {});

        dropdownUser = new gl.DropdownUser();
      });

      it('should not return the double quote found in value', () => {
        spyOn(gl.FilteredSearchTokenizer, 'processTokens').and.returnValue({
          lastToken: {
            value: '"johnny appleseed',
          },
        });

        expect(dropdownUser.getSearchInput()).toBe('johnny appleseed');
      });

      it('should not return the single quote found in value', () => {
        spyOn(gl.FilteredSearchTokenizer, 'processTokens').and.returnValue({
          lastToken: {
            value: '\'larry boy',
          },
        });

        expect(dropdownUser.getSearchInput()).toBe('larry boy');
      });
    });
  });
})();