1*98059c92SSukanya Pandeyimport { mount } from '@vue/test-utils'; 2*98059c92SSukanya Pandeyimport Vue from 'vue'; 3*98059c92SSukanya Pandeyimport AppHeader from '@/components/AppHeader'; 4*98059c92SSukanya Pandeyimport $store from '@/store'; 5*98059c92SSukanya Pandeyimport { BootstrapVue } from 'bootstrap-vue'; 6*98059c92SSukanya Pandey 7*98059c92SSukanya Pandeydescribe('AppHeader.vue', () => { 8*98059c92SSukanya Pandey let wrapper; 9*98059c92SSukanya Pandey let spy; 10*98059c92SSukanya Pandey Vue.use(BootstrapVue); 11*98059c92SSukanya Pandey 12*98059c92SSukanya Pandey wrapper = mount(AppHeader, { 13*98059c92SSukanya Pandey mocks: { 14*98059c92SSukanya Pandey $t: key => key, 15*98059c92SSukanya Pandey $store 16*98059c92SSukanya Pandey } 17*98059c92SSukanya Pandey }); 18*98059c92SSukanya Pandey 19*98059c92SSukanya Pandey beforeEach(() => { 20*98059c92SSukanya Pandey spy = sinon.spy($store.dispatch); 21*98059c92SSukanya Pandey }); 22*98059c92SSukanya Pandey 23*98059c92SSukanya Pandey describe('Component exists', () => { 24*98059c92SSukanya Pandey it('should check if AppHeader exists', async () => { 25*98059c92SSukanya Pandey expect(wrapper.exists()); 26*98059c92SSukanya Pandey }); 27*98059c92SSukanya Pandey }); 28*98059c92SSukanya Pandey 29*98059c92SSukanya Pandey describe('AppHeader methods', () => { 30*98059c92SSukanya Pandey it('should call getHostInfo and dispatch global/getHostStatus', async () => { 31*98059c92SSukanya Pandey wrapper.vm.getHostInfo(); 32*98059c92SSukanya Pandey spy('global/getHostStatus'); 33*98059c92SSukanya Pandey expect(spy).to.have.been.calledWith('global/getHostStatus'); 34*98059c92SSukanya Pandey }); 35*98059c92SSukanya Pandey 36*98059c92SSukanya Pandey it('should call getEvents and dispatch eventLog/getEventLogData', async () => { 37*98059c92SSukanya Pandey wrapper.vm.getEvents(); 38*98059c92SSukanya Pandey spy('eventLog/getEventLogData'); 39*98059c92SSukanya Pandey expect(spy).to.have.been.calledWith('eventLog/getEventLogData'); 40*98059c92SSukanya Pandey }); 41*98059c92SSukanya Pandey 42*98059c92SSukanya Pandey it('should call refresh and emit refresh', async () => { 43*98059c92SSukanya Pandey spy = sinon.spy(wrapper.vm.$emit); 44*98059c92SSukanya Pandey wrapper.vm.refresh(); 45*98059c92SSukanya Pandey spy('refresh'); 46*98059c92SSukanya Pandey expect(spy).to.have.been.calledWith('refresh'); 47*98059c92SSukanya Pandey }); 48*98059c92SSukanya Pandey 49*98059c92SSukanya Pandey it('should call logout and dispatch authentication/logout', async () => { 50*98059c92SSukanya Pandey wrapper.vm.logout(); 51*98059c92SSukanya Pandey spy('authentication/logout'); 52*98059c92SSukanya Pandey expect(spy).to.have.been.calledWith('authentication/logout'); 53*98059c92SSukanya Pandey }); 54*98059c92SSukanya Pandey 55*98059c92SSukanya Pandey it('should call toggleNavigation and dispatch toggle:navigation', async () => { 56*98059c92SSukanya Pandey spy = sinon.spy(wrapper.vm.$root.$emit); 57*98059c92SSukanya Pandey wrapper.vm.toggleNavigation(); 58*98059c92SSukanya Pandey spy('toggle:navigation'); 59*98059c92SSukanya Pandey expect(spy).to.have.been.calledWith('toggle:navigation'); 60*98059c92SSukanya Pandey }); 61*98059c92SSukanya Pandey }); 62*98059c92SSukanya Pandey}); 63