From 173c2c328101c008b010af72d788e1a51ac76335 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=A4fer?= Date: Sun, 10 Mar 2019 12:20:46 +0100 Subject: [PATCH] Test+implement modal wrapper for DisableModal --- components/Modal.spec.js | 47 +++++++++++++++++++++++++--------------- components/Modal.vue | 20 ++++++++--------- layouts/default.vue | 6 ++--- locales/de.json | 3 +++ locales/en.json | 3 +++ 5 files changed, 48 insertions(+), 31 deletions(-) diff --git a/components/Modal.spec.js b/components/Modal.spec.js index 367304ba4..90532de2a 100644 --- a/components/Modal.spec.js +++ b/components/Modal.spec.js @@ -1,4 +1,4 @@ -import { mount, createLocalVue } from '@vue/test-utils' +import { shallowMount, mount, createLocalVue } from '@vue/test-utils' import Modal from './Modal.vue' import Vue from 'vue' import Vuex from 'vuex' @@ -12,23 +12,13 @@ localVue.use(Styleguide) describe('Modal.vue', () => { let Wrapper + let wrapper let store let state let mocks - beforeEach(() => { - mocks = { - $t: () => {} - } - state = { - open: null, - data: {} - } - }) - - describe('mount', () => { - let wrapper - const Wrapper = () => { + const createWrapper = mountMethod => { + return () => { store = new Vuex.Store({ state, getters: { @@ -39,25 +29,46 @@ describe('Modal.vue', () => { 'modal/SET_OPEN': mutations.SET_OPEN } }) - return mount(Modal, { store, mocks, localVue }) + return mountMethod(Modal, { store, mocks, localVue }) } + } + + beforeEach(() => { + mocks = { + $filters: { + truncate: a => a + }, + $toast: { + success: () => {}, + error: () => {} + }, + $t: () => {} + } + state = { + open: null, + data: {} + } + }) + + describe('shallowMount', () => { + const Wrapper = createWrapper(shallowMount) it('renders nothing', () => { wrapper = Wrapper() expect(wrapper.isEmpty()).toBe(true) }) - describe('store opens a report', () => { + describe('store state.open === "disable"', () => { beforeEach(() => { state = { - open: 'report', + open: 'disable', data: {} } wrapper = Wrapper() }) it('renders report modal', () => { - expect(wrapper.contains('#modal-report')).toBe(true) + expect(wrapper.contains('disable-modal-stub')).toBe(true) }) }) }) diff --git a/components/Modal.vue b/components/Modal.vue index 8045212cf..0a1e195f9 100644 --- a/components/Modal.vue +++ b/components/Modal.vue @@ -1,23 +1,23 @@