diff options
author | Clement Ho <clemmakesapps@gmail.com> | 2018-02-28 18:40:06 +0000 |
---|---|---|
committer | Clement Ho <clemmakesapps@gmail.com> | 2018-02-28 18:40:06 +0000 |
commit | 9353c5c780c7af6d6ed3d6c501b155f82debc99c (patch) | |
tree | 55d87571798f5ff10ee1431a296f1115251f67e9 /spec/javascripts/labels_select_spec.js | |
parent | c287c01821c4db4830dbdd5263907f08c2ed4cc4 (diff) | |
parent | e2638c3ff2714e5efd4bc54e64555fc564c84af1 (diff) | |
download | gitlab-ce-pipelines_show_refactor.tar.gz |
Merge branch 'master' into 'pipelines_show_refactor'pipelines_show_refactor
# Conflicts:
# config/webpack.config.js
Diffstat (limited to 'spec/javascripts/labels_select_spec.js')
-rw-r--r-- | spec/javascripts/labels_select_spec.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/spec/javascripts/labels_select_spec.js b/spec/javascripts/labels_select_spec.js new file mode 100644 index 00000000000..b8f7b1dc855 --- /dev/null +++ b/spec/javascripts/labels_select_spec.js @@ -0,0 +1,43 @@ +import LabelsSelect from '~/labels_select'; + +const mockUrl = '/foo/bar/url'; + +const mockLabels = [ + { + id: 26, + title: 'Foo Label', + description: 'Foobar', + color: '#BADA55', + text_color: '#FFFFFF', + }, +]; + +describe('LabelsSelect', () => { + describe('getLabelTemplate', () => { + const label = mockLabels[0]; + let $labelEl; + + beforeEach(() => { + $labelEl = $(LabelsSelect.getLabelTemplate({ + labels: mockLabels, + issueUpdateURL: mockUrl, + })); + }); + + it('generated label item template has correct label URL', () => { + expect($labelEl.attr('href')).toBe('/foo/bar?label_name[]=Foo%20Label'); + }); + + it('generated label item template has correct label title', () => { + expect($labelEl.find('span.label').text()).toBe(label.title); + }); + + it('generated label item template has label description as title attribute', () => { + expect($labelEl.find('span.label').attr('title')).toBe(label.description); + }); + + it('generated label item template has correct label styles', () => { + expect($labelEl.find('span.label').attr('style')).toBe(`background-color: ${label.color}; color: ${label.text_color};`); + }); + }); +}); |