diff --git a/test/unit/specs/FormWizard.spec.js b/test/unit/specs/FormWizard.spec.js index ca59114..347d897 100644 --- a/test/unit/specs/FormWizard.spec.js +++ b/test/unit/specs/FormWizard.spec.js @@ -1,10 +1,11 @@ -import Vue from 'vue' import VueFormWizard from './../../../src/index' import {TabContent as WizardTab, WizardStep, FormWizard} from './../../../src/index' -import {mount} from 'vue-test-utils' +import {mount, createLocalVue} from 'vue-test-utils' import sinon from 'sinon' +import Vue from "vue"; -Vue.use(VueFormWizard) +const localVue = createLocalVue() +localVue.use(VueFormWizard) const startIndex = 0 const twoStepWizard = { template: ` @@ -29,12 +30,12 @@ const twoStepWizard = { } describe('FormWizard.vue', () => { it('contains wizard class', () => { - const wizard = mount(twoStepWizard) + const wizard = mount(twoStepWizard, {localVue}) wizard.hasClass('vue-form-wizard') }) - it('renders steps', (done) => { - const wizard = mount(twoStepWizard) - Vue.nextTick(() => { + it('renders steps', () => { + const wizard = mount(twoStepWizard, {localVue}) + Vue.nextTick(()=>{ const steps = wizard.findAll(WizardStep) const firsStep = steps.at(0) expect(steps.length).to.equal(3) @@ -43,53 +44,41 @@ describe('FormWizard.vue', () => { expect(stepTitle.is('span')).to.equal(true) const stepText = stepTitle.text().trim() expect(stepText).to.equal('Personal details') - done() }) - }) - it('renders tabs', (done) => { - const wizard = mount(twoStepWizard) - Vue.nextTick(() => { - const tabs = wizard.findAll(WizardTab) - expect(tabs.length).to.equal(3) - done() - }) - }) - it('displays only one tab', (done) => { - const wizard = mount(twoStepWizard) - Vue.nextTick(() => { - const tabs = wizard.findAll(WizardTab).wrappers - const activeTabs = tabs.filter((tab) => tab.vm.active) - const inactiveTabs = tabs.filter((tab) => !tab.vm.active) - expect(activeTabs.length).to.equal(1) - inactiveTabs.forEach((tab) => { - expect(tab.hasStyle('display', 'none')).to.equal(true) - }) - done() + }) + it('renders tabs', () => { + const wizard = mount(twoStepWizard, {localVue}) + const tabs = wizard.findAll(WizardTab) + expect(tabs.length).to.equal(3) + }) + it('displays only one tab', () => { + const wizard = mount(twoStepWizard, {localVue}) + const tabs = wizard.findAll(WizardTab).wrappers + const activeTabs = tabs.filter((tab) => tab.vm.active) + const inactiveTabs = tabs.filter((tab) => !tab.vm.active) + expect(activeTabs.length).to.equal(1) + + inactiveTabs.forEach((tab) => { + expect(tab.hasStyle('display', 'none')).to.equal(true) }) }) - it('starts at a given index', (done) => { - const wizard = mount(twoStepWizard) - Vue.nextTick(() => { - const tabs = wizard.findAll(WizardTab) - const activeTab = tabs.at(startIndex) - expect(activeTab.vm.active).to.equal(true) - const formWizard = wizard.find(FormWizard) - expect(formWizard.vm.activeTabIndex).to.equal(startIndex) - done() - }) + it('starts at a given index', () => { + const wizard = mount(twoStepWizard, {localVue}) + const tabs = wizard.findAll(WizardTab) + const activeTab = tabs.at(startIndex) + expect(activeTab.vm.active).to.equal(true) + const formWizard = wizard.find(FormWizard) + expect(formWizard.vm.activeTabIndex).to.equal(startIndex) }) - it('next tab is called', (done) => { - const wizard = mount(twoStepWizard) + it('next tab is called', () => { + const wizard = mount(twoStepWizard, {localVue}) const nextTabHandler = sinon.stub() const formWizard = wizard.find(FormWizard) formWizard.setMethods({nextTab: nextTabHandler}) - Vue.nextTick(() => { - const nextButton = wizard.find('.wizard-footer-right span') - nextButton.trigger('click') - expect(nextTabHandler.called).to.equal(true) - done() - }) + const nextButton = wizard.find('.wizard-footer-right span') + nextButton.trigger('click') + expect(nextTabHandler.called).to.equal(true) }) })