UNPKG

gooes

Version:
108 lines (100 loc) 2.4 kB
import Vue from 'vue' import Button from './button' import Icon from './icon' import ButtonGroup from './buttongroup' Vue.component('g-button',Button) Vue.component('g-icon',Icon) Vue.component('g-button-group', ButtonGroup) new Vue({ el:'#app', data:{ loading1:false, loading2:true, loading3:false, } }) import chai from 'chai' import spies from 'chai-spies' chai.use(spies) const expect = chai.expect { const Constructor = Vue.extend(Button) const vm = new Constructor({ propsData:{ icon:'settings' } }) vm.$mount() let useElement = vm.$el.querySelector('use') let href = useElement.getAttribute('xlink:href') expect(href).to.eq('#i-settings') vm.$el.remove() vm.$destroy() } { const Constructor = Vue.extend(Button) const vm = new Constructor({ propsData:{ icon:'settings', isloading:true } }) vm.$mount() let useElement = vm.$el.querySelector('use') let href = useElement.getAttribute('xlink:href') expect(href).to.eq('#i-loading') vm.$el.remove() vm.$destroy() } { const div = document.createElement('div') document.body.appendChild(div) const Constructor = Vue.extend(Button) const vm = new Constructor({ propsData:{ icon:'settings' } }) vm.$mount(div) let svg = vm.$el.querySelector('svg') let {order} = window.getComputedStyle(svg) expect(order).to.eq('1') vm.$el.remove() vm.$destroy() } { const div = document.createElement('div') document.body.appendChild(div) const Constructor = Vue.extend(Button) const vm = new Constructor({ propsData:{ icon:'settings', iconPostion:'right' } }) vm.$mount(div) let svg = vm.$el.querySelector('svg') let {order} = window.getComputedStyle(svg) expect(order).to.eq('2') vm.$el.remove() vm.$destroy() } { const Constructor = Vue.extend(Button) const vm = new Constructor({ propsData:{ icon:'settings' } }) vm.$mount() // vm.$on('click', function(){ // expect(1).to.eq(1) // }) // vm.$el.click() let spy = chai.spy(function(){}) vm.$on('click', spy) vm.$el.click() expect(spy).to.have.been.called() vm.$el.remove() vm.$destroy() }