From 4848c32ea00a9a5be587aec0f24214e56724c683 Mon Sep 17 00:00:00 2001 From: Martin Hobert Date: Fri, 26 Apr 2019 14:54:20 +0200 Subject: refactor(sidebar): Refactored Karma spec files to Jest fix #58830 Added changelog Updated to use jest functions Added mock implementation --- .../sidebar/labels_select/dropdown_header_spec.js | 40 ++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 spec/frontend/vue_shared/components/sidebar/labels_select/dropdown_header_spec.js (limited to 'spec/frontend/vue_shared/components/sidebar/labels_select/dropdown_header_spec.js') diff --git a/spec/frontend/vue_shared/components/sidebar/labels_select/dropdown_header_spec.js b/spec/frontend/vue_shared/components/sidebar/labels_select/dropdown_header_spec.js new file mode 100644 index 00000000000..c36a82e1a35 --- /dev/null +++ b/spec/frontend/vue_shared/components/sidebar/labels_select/dropdown_header_spec.js @@ -0,0 +1,40 @@ +import Vue from 'vue'; + +import dropdownHeaderComponent from '~/vue_shared/components/sidebar/labels_select/dropdown_header.vue'; + +import mountComponent from 'helpers/vue_mount_component_helper'; + +const createComponent = () => { + const Component = Vue.extend(dropdownHeaderComponent); + + return mountComponent(Component); +}; + +describe('DropdownHeaderComponent', () => { + let vm; + + beforeEach(() => { + vm = createComponent(); + }); + + afterEach(() => { + vm.$destroy(); + }); + + describe('template', () => { + it('renders header text element', () => { + const headerEl = vm.$el.querySelector('.dropdown-title span'); + + expect(headerEl.innerText.trim()).toBe('Assign labels'); + }); + + it('renders `Close` button element', () => { + const closeBtnEl = vm.$el.querySelector( + '.dropdown-title button.dropdown-title-button.dropdown-menu-close', + ); + + expect(closeBtnEl).not.toBeNull(); + expect(closeBtnEl.querySelector('.fa-times.dropdown-menu-close-icon')).not.toBeNull(); + }); + }); +}); -- cgit v1.2.1