diff options
Diffstat (limited to 'spec/javascripts/vue_shared/components/dropdown/dropdown_button_spec.js')
-rw-r--r-- | spec/javascripts/vue_shared/components/dropdown/dropdown_button_spec.js | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/spec/javascripts/vue_shared/components/dropdown/dropdown_button_spec.js b/spec/javascripts/vue_shared/components/dropdown/dropdown_button_spec.js index ba897f4660d..2796cd088c6 100644 --- a/spec/javascripts/vue_shared/components/dropdown/dropdown_button_spec.js +++ b/spec/javascripts/vue_shared/components/dropdown/dropdown_button_spec.js @@ -2,15 +2,15 @@ import Vue from 'vue'; import dropdownButtonComponent from '~/vue_shared/components/dropdown/dropdown_button.vue'; -import mountComponent from 'spec/helpers/vue_mount_component_helper'; +import { mountComponentWithSlots } from 'spec/helpers/vue_mount_component_helper'; const defaultLabel = 'Select'; const customLabel = 'Select project'; -const createComponent = config => { +const createComponent = (props, slots = {}) => { const Component = Vue.extend(dropdownButtonComponent); - return mountComponent(Component, config); + return mountComponentWithSlots(Component, { props, slots }); }; describe('DropdownButtonComponent', () => { @@ -65,5 +65,14 @@ describe('DropdownButtonComponent', () => { expect(dropdownIconEl).not.toBeNull(); expect(dropdownIconEl.classList.contains('fa-chevron-down')).toBe(true); }); + + it('renders slot, if default slot exists', () => { + vm = createComponent({}, { + default: ['Lorem Ipsum Dolar'], + }); + + expect(vm.$el).not.toContainElement('.dropdown-toggle-text'); + expect(vm.$el).toHaveText('Lorem Ipsum Dolar'); + }); }); }); |