get settings pages mostly running

This commit is contained in:
Moriz Wahl 2023-02-13 21:09:24 +01:00
parent b2be8a301e
commit 7d459fcea5
13 changed files with 41 additions and 30 deletions

View File

@ -1,4 +1,4 @@
import { config, mount, createLocalVue } from '@vue/test-utils'
import { mount, createLocalVue } from '@vue/test-utils'
import BlockedUsers from './blocked-users.vue'
import Styleguide from '@human-connection/styleguide'
import Filters from '~/plugins/vue-filters'
@ -9,7 +9,9 @@ const localVue = createLocalVue()
localVue.use(Styleguide)
localVue.use(Filters)
config.stubs['nuxt-link'] = '<span><slot /></span>'
const stubs = {
'nuxt-link': true,
}
describe('blocked-users.vue', () => {
let wrapper
@ -35,7 +37,7 @@ describe('blocked-users.vue', () => {
describe('mount', () => {
const Wrapper = () => {
return mount(BlockedUsers, { mocks, localVue })
return mount(BlockedUsers, { mocks, localVue, stubs })
}
beforeEach(() => {
@ -43,7 +45,7 @@ describe('blocked-users.vue', () => {
})
it('renders', () => {
expect(wrapper.is('div')).toBe(true)
expect(wrapper.element.tagName).toBe('DIV')
})
describe('given a list of blocked users', () => {

View File

@ -26,7 +26,7 @@ describe('data-download.vue', () => {
})
it('renders', () => {
expect(wrapper.is('.base-card')).toBe(true)
expect(wrapper.classes('base-card')).toBe(true)
})
})
})

View File

@ -36,7 +36,7 @@ describe('delete-account.vue', () => {
})
it('renders', () => {
expect(wrapper.is('.delete-data')).toBe(true)
expect(wrapper.classes('base-card')).toBe(true)
})
})
})

View File

@ -36,7 +36,7 @@ describe('embeds.vue', () => {
})
it('renders', () => {
expect(wrapper.is('.base-card')).toBe(true)
expect(wrapper.classes('base-card')).toBe(true)
})
})
})

View File

@ -87,7 +87,7 @@ describe('index.vue', () => {
})
it('renders', () => {
expect(Wrapper().contains('div')).toBe(true)
expect(Wrapper().element.tagName).toBe('DIV')
})
describe('given form validation errors', () => {

View File

@ -26,7 +26,7 @@ describe('invites.vue', () => {
})
it('renders', () => {
expect(wrapper.is('.base-card')).toBe(true)
expect(wrapper.classes('base-card')).toBe(true)
})
})
})

View File

@ -26,7 +26,7 @@ describe('languages.vue', () => {
})
it('renders', () => {
expect(wrapper.is('.base-card')).toBe(true)
expect(wrapper.classes('base-card')).toBe(true)
})
})
})

View File

@ -1,4 +1,4 @@
import { config, mount, createLocalVue } from '@vue/test-utils'
import { mount, createLocalVue } from '@vue/test-utils'
import MutedUsers from './muted-users.vue'
import Styleguide from '@human-connection/styleguide'
import Filters from '~/plugins/vue-filters'
@ -9,7 +9,9 @@ const localVue = createLocalVue()
localVue.use(Styleguide)
localVue.use(Filters)
config.stubs['nuxt-link'] = '<span><slot /></span>'
const stubs = {
'nuxt-link': true,
}
describe('muted-users.vue', () => {
let wrapper
@ -35,7 +37,7 @@ describe('muted-users.vue', () => {
describe('mount', () => {
const Wrapper = () => {
return mount(MutedUsers, { mocks, localVue })
return mount(MutedUsers, { mocks, localVue, stubs })
}
beforeEach(() => {
@ -43,7 +45,7 @@ describe('muted-users.vue', () => {
})
it('renders', () => {
expect(wrapper.is('div')).toBe(true)
expect(wrapper.element.tagName).toBe('DIV')
})
describe('given a list of muted users', () => {

View File

@ -1,10 +1,12 @@
import { config, mount } from '@vue/test-utils'
import { mount } from '@vue/test-utils'
import EmailSettingsIndexPage from './index.vue'
import Vuex from 'vuex'
const localVue = global.localVue
config.stubs['sweetalert-icon'] = '<span><slot /></span>'
const stubs = {
'sweetalert-icon': true,
}
describe('EmailSettingsIndexPage', () => {
let store
@ -43,12 +45,15 @@ describe('EmailSettingsIndexPage', () => {
store,
mocks,
localVue,
stubs,
})
}
describe('form', () => {
describe('submit', () => {
beforeEach(jest.useFakeTimers)
beforeEach(() => {
jest.useFakeTimers()
})
describe('email unchanged', () => {
beforeEach(() => {

View File

@ -1,11 +1,13 @@
import { config, mount } from '@vue/test-utils'
import { mount } from '@vue/test-utils'
import EmailVerifyPage from './verify.vue'
import Vuex from 'vuex'
const localVue = global.localVue
config.stubs['client-only'] = '<span><slot /></span>'
config.stubs['sweetalert-icon'] = '<span><slot /></span>'
const stubs = {
'sweetalert-icon': true,
'client-only': true,
}
describe('EmailVerifyPage', () => {
let store
@ -108,12 +110,15 @@ describe('EmailVerifyPage', () => {
})
describe('mount', () => {
beforeEach(jest.useFakeTimers)
beforeEach(() => {
jest.useFakeTimers()
})
const Wrapper = () => {
return mount(EmailVerifyPage, {
store,
mocks,
localVue,
stubs,
})
}

View File

@ -26,7 +26,7 @@ describe('my-organizations.vue', () => {
})
it('renders', () => {
expect(wrapper.is('.base-card')).toBe(true)
expect(wrapper.element.tagName).toBe('DIV')
})
})
})

View File

@ -47,22 +47,19 @@ describe('privacy.vue', () => {
})
it('renders', () => {
expect(wrapper.is('.base-card')).toBe(true)
expect(wrapper.classes('base-card')).toBe(true)
})
it('clicking on submit changes shoutsAllowed to false', async () => {
wrapper.find('#allow-shouts').trigger('click')
await wrapper.vm.$nextTick()
wrapper.find('.base-button').trigger('click')
await wrapper.find('#allow-shouts').setChecked(false)
await wrapper.find('.base-button').trigger('click')
expect(wrapper.vm.shoutsAllowed).toBe(false)
})
it('clicking on submit with a server error shows a toast and shoutsAllowed is still true', async () => {
mocks.$apollo.mutate = jest.fn().mockRejectedValue({ message: 'Ouch!' })
wrapper.find('#allow-shouts').trigger('click')
await wrapper.vm.$nextTick()
await wrapper.find('#allow-shouts').setChecked(false)
await wrapper.find('.base-button').trigger('click')
await wrapper.vm.$nextTick()
expect(mocks.$toast.error).toHaveBeenCalledWith('Ouch!')
expect(wrapper.vm.shoutsAllowed).toBe(true)
})

View File

@ -26,7 +26,7 @@ describe('security.vue', () => {
})
it('renders', () => {
expect(wrapper.is('.base-card')).toBe(true)
expect(wrapper.classes('base-card')).toBe(true)
})
})
})