diff --git a/webapp/pages/login.spec.js b/webapp/pages/login.spec.js
new file mode 100644
index 000000000..5a64b1280
--- /dev/null
+++ b/webapp/pages/login.spec.js
@@ -0,0 +1,71 @@
+import { config, mount } from '@vue/test-utils'
+import Vuex from 'vuex'
+import login from './login.vue'
+
+const localVue = global.localVue
+
+config.stubs['client-only'] = ''
+config.stubs['nuxt-link'] = ''
+
+describe('Login.vue', () => {
+ let mutations
+ let store
+ let mocks
+ let wrapper
+
+ beforeEach(() => {
+ mutations = {
+ // 'posts/SELECT_ORDER': jest.fn(),
+ }
+ store = new Vuex.Store({
+ getters: {
+ /* 'posts/filter': () => ({}),
+ 'posts/orderOptions': () => () => [
+ {
+ key: 'store.posts.orderBy.oldest.label',
+ label: 'store.posts.orderBy.oldest.label',
+ icon: 'sort-amount-asc',
+ value: 'createdAt_asc',
+ },
+ {
+ key: 'store.posts.orderBy.newest.label',
+ label: 'store.posts.orderBy.newest.label',
+ icon: 'sort-amount-desc',
+ value: 'createdAt_desc',
+ },
+ ],
+ 'posts/selectedOrder': () => () => 'createdAt_desc',
+ 'posts/orderIcon': () => 'sort-amount-desc',
+ 'posts/orderBy': () => 'createdAt_desc',
+ 'auth/user': () => {
+ return { id: 'u23' }
+ }, */
+ },
+ mutations,
+ })
+ mocks = {
+ $t: jest.fn(),
+ $i18n: {
+ locale: () => 'en',
+ },
+ }
+ })
+
+ describe('mount', () => {
+ const Wrapper = () => {
+ return mount(login, {
+ store,
+ mocks,
+ localVue,
+ })
+ }
+
+ beforeEach(() => {
+ wrapper = Wrapper()
+ })
+
+ it('renders', () => {
+ expect(wrapper.findAll('.login-form')).toHaveLength(1)
+ })
+ })
+})