test: add unit test for User.vue

This commit is contained in:
xidedix
2018-08-21 17:59:33 +02:00
parent 2a0c28607b
commit 4c2d2235be
+49
View File
@@ -0,0 +1,49 @@
import Vue from 'vue'
import { shallowMount, mount, createLocalVue } from '@vue/test-utils'
import VueRouter from 'vue-router'
const localVue = createLocalVue()
localVue.use(VueRouter)
const router = new VueRouter()
import BootstrapVue from 'bootstrap-vue'
import User from '@/views/Users/User'
localVue.use(BootstrapVue)
describe('User.vue', () => {
it('has a name', () => {
expect(User.name).toMatch('User')
})
it('has a created hook', () => {
expect(typeof User.data).toMatch('function')
})
it('sets the correct default data', () => {
expect(typeof User.data).toMatch('function')
const defaultData = User.data()
expect(defaultData.fields).toEqual([{key: 'key'}, {key: 'value'}])
})
it('is Vue instance', () => {
const wrapper = shallowMount(User, {
localVue,
router
})
expect(wrapper.isVueInstance()).toBe(true)
})
it('is User', () => {
const wrapper = shallowMount(User, {
localVue,
router
})
expect(wrapper.is(User)).toBe(true)
})
it('renders props.caption when passed', () => {
const caption = 'User id:'
const wrapper = mount(User, {
propsData: { caption },
localVue,
router
})
expect(wrapper.find('div.card-header').text()).toMatch(caption)
})
})