refs #209 Add unit/integration tests for Preferences/Language
This commit is contained in:
parent
883b9d3e48
commit
bad672c275
|
@ -0,0 +1,61 @@
|
|||
import { createLocalVue } from '@vue/test-utils'
|
||||
import Vuex from 'vuex'
|
||||
import { ipcMain } from '~/spec/mock/electron'
|
||||
import Language from '@/store/Preferences/Language'
|
||||
import DefaultLanguage from '~/src/constants/language'
|
||||
|
||||
const state = {
|
||||
language: {
|
||||
language: DefaultLanguage.en.key
|
||||
}
|
||||
}
|
||||
|
||||
const initState = {
|
||||
namespaced: true,
|
||||
state: state,
|
||||
actions: Language.actions,
|
||||
mutations: Language.mutations
|
||||
}
|
||||
|
||||
describe('Preferences/Language', () => {
|
||||
let store
|
||||
let localVue
|
||||
|
||||
beforeEach(() => {
|
||||
localVue = createLocalVue()
|
||||
localVue.use(Vuex)
|
||||
store = new Vuex.Store({
|
||||
modules: {
|
||||
Language: initState
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
describe('loadLanguage', () => {
|
||||
beforeEach(() => {
|
||||
ipcMain.once('get-preferences', (event, _) => {
|
||||
event.sender.send('response-get-preferences', {
|
||||
language: {
|
||||
language: DefaultLanguage.ja.key
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
it('should be updated', async () => {
|
||||
await store.dispatch('Language/loadLanguage')
|
||||
expect(store.state.Language.language.language).toEqual(DefaultLanguage.ja.key)
|
||||
})
|
||||
})
|
||||
|
||||
describe('changeLanguage', () => {
|
||||
beforeEach(() => {
|
||||
ipcMain.once('change-language', (event, key) => {
|
||||
event.sender.send('response-change-language', key)
|
||||
})
|
||||
})
|
||||
it('should be changed', async () => {
|
||||
await store.dispatch('Language/changeLanguage', DefaultLanguage.ja.key)
|
||||
expect(store.state.Language.language.language).toEqual(DefaultLanguage.ja.key)
|
||||
})
|
||||
})
|
||||
})
|
|
@ -0,0 +1,29 @@
|
|||
import Language from '@/store/Preferences/Language'
|
||||
import DefaultLanguage from '~/src/constants/language'
|
||||
|
||||
describe('Preferences/Language', () => {
|
||||
let state
|
||||
beforeEach(() => {
|
||||
state = {
|
||||
language: {
|
||||
language: DefaultLanguage.en.key
|
||||
}
|
||||
}
|
||||
})
|
||||
describe('mutations', () => {
|
||||
describe('updateLanguage', () => {
|
||||
it('should be updated', () => {
|
||||
Language.mutations.updateLanguage(state, {
|
||||
language: DefaultLanguage.ja.key
|
||||
})
|
||||
expect(state.language.language).toEqual(DefaultLanguage.ja.key)
|
||||
})
|
||||
})
|
||||
describe('changeLanguage', () => {
|
||||
it('should be changed', () => {
|
||||
Language.mutations.changeLanguage(state, DefaultLanguage.ja.key)
|
||||
expect(state.language.language).toEqual(DefaultLanguage.ja.key)
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -32,9 +32,12 @@ export default {
|
|||
})
|
||||
},
|
||||
changeLanguage ({ commit }, key) {
|
||||
ipcRenderer.send('change-language', key)
|
||||
ipcRenderer.once('response-change-language', (event, value) => {
|
||||
commit('changeLanguage', value)
|
||||
return new Promise((resolve, reject) => {
|
||||
ipcRenderer.send('change-language', key)
|
||||
ipcRenderer.once('response-change-language', (event, value) => {
|
||||
commit('changeLanguage', value)
|
||||
resolve(value)
|
||||
})
|
||||
})
|
||||
},
|
||||
relaunch () {
|
||||
|
|
Loading…
Reference in New Issue