import { mountDefault } from '../helpers'; describe('Scoped Slots', () => { it('receives an option object to the selected-option-container slot', () => { const Select = mountDefault( {value: 'one'}, { scopedSlots: { 'selected-option-container': `{{ option.label }}`, }, }); expect(Select.find({ref: 'selectedOptions'}).text()).toEqual('one'); }); describe('Slot: selected-option', () => { it('receives an option object to the selected-option slot', () => { const Select = mountDefault( {value: 'one'}, { scopedSlots: { 'selected-option': `{{ option.label }}`, }, }); expect(Select.find('.vs__selected').text()).toEqual('one'); }); it('opens the dropdown when clicking an option in selected-option slot', () => { const Select = mountDefault( {value: 'one'}, { scopedSlots: { 'selected-option': `{{ option.label }}`, }, }); Select.find('.my-option').trigger('mousedown'); expect(Select.vm.open).toEqual(true); }); }); it('receives an option object to the option slot in the dropdown menu', async () => { const Select = mountDefault( {value: 'one'}, { scopedSlots: { 'option': `{{ option.label }}`, }, }); Select.vm.open = true; await Select.vm.$nextTick(); expect(Select.find({ref: 'dropdownMenu'}).text()).toEqual('onetwothree'); }); });