diff --git a/frontend/src/components/Message/Message.vue b/frontend/src/components/Message/Message.vue
index 5f519ee18..769bd99bf 100644
--- a/frontend/src/components/Message/Message.vue
+++ b/frontend/src/components/Message/Message.vue
@@ -33,7 +33,7 @@ export default {
subtitle: { type: String, required: true },
buttonText: { type: String, required: false, default: null },
linkTo: { type: String, required: false, default: null },
- callback: { type: Function, required: false, default: () => {} },
+ callback: { type: Function, required: false, default: null },
code: { type: String, required: false, default: null }, // Wolle: to be removed by adding it directly to the "linkTo"
},
}
diff --git a/frontend/src/pages/ForgotPassword.spec.js b/frontend/src/pages/ForgotPassword.spec.js
index 5fba93693..e9aeed552 100644
--- a/frontend/src/pages/ForgotPassword.spec.js
+++ b/frontend/src/pages/ForgotPassword.spec.js
@@ -117,6 +117,7 @@ describe('ForgotPassword', () => {
})
it('shows error title, subtitle, login button', () => {
+ expect(wrapper.vm.showPageMessage).toBeTruthy()
expect(wrapper.find('.test-message-headline').text()).toBe('site.thx.errorTitle')
expect(wrapper.find('.test-message-subtitle').text()).toBe('error.email-already-sent')
expect(wrapper.find('.test-message-button').text()).toBe('login')
@@ -127,8 +128,10 @@ describe('ForgotPassword', () => {
})
// Wolle
- it.skip('click redirects to "/login"', () => {
- // expect(mockRouterPush).toBeCalledWith('/login')
+ it.skip('click redirects to "/login"', async () => {
+ // wrapper.find('.test-message-button').trigger('click')
+ // await wrapper.vm.$nextTick()
+ expect(mockRouterPush).toBeCalledWith('/login')
})
})
@@ -146,6 +149,7 @@ describe('ForgotPassword', () => {
})
it('shows success title, subtitle, login button', () => {
+ expect(wrapper.vm.showPageMessage).toBeTruthy()
expect(wrapper.find('.test-message-headline').text()).toBe('site.thx.title')
expect(wrapper.find('.test-message-subtitle').text()).toBe('site.thx.email')
expect(wrapper.find('.test-message-button').text()).toBe('login')
diff --git a/frontend/src/pages/Login.spec.js b/frontend/src/pages/Login.spec.js
index 347dc91a9..c31b4d77d 100644
--- a/frontend/src/pages/Login.spec.js
+++ b/frontend/src/pages/Login.spec.js
@@ -240,12 +240,13 @@ describe('Login', () => {
})
it('shows error title, subtitle, login button', () => {
+ expect(wrapper.vm.showPageMessage).toBeTruthy()
expect(wrapper.find('.test-message-headline').text()).toBe('site.thx.errorTitle')
expect(wrapper.find('.test-message-subtitle').text()).toBe('site.thx.activateEmail')
expect(wrapper.find('.test-message-button').text()).toBe('settings.password.reset')
})
- it('button link directs to "/forgot-password', () => {
+ it('button link directs to "/forgot-password"', () => {
expect(wrapper.find('.test-message-button').attributes('href')).toBe('/forgot-password')
})
@@ -270,12 +271,13 @@ describe('Login', () => {
})
it('shows error title, subtitle, login button', () => {
+ expect(wrapper.vm.showPageMessage).toBeTruthy()
expect(wrapper.find('.test-message-headline').text()).toBe('site.thx.errorTitle')
expect(wrapper.find('.test-message-subtitle').text()).toBe('site.thx.unsetPassword')
expect(wrapper.find('.test-message-button').text()).toBe('settings.password.reset')
})
- it('button link directs to "/reset-password/login', () => {
+ it('button link directs to "/reset-password/login"', () => {
expect(wrapper.find('.test-message-button').attributes('href')).toBe(
'/reset-password/login',
)
diff --git a/frontend/src/pages/Register.spec.js b/frontend/src/pages/Register.spec.js
index 1e791f7d4..55ac36cb9 100644
--- a/frontend/src/pages/Register.spec.js
+++ b/frontend/src/pages/Register.spec.js
@@ -221,41 +221,59 @@ describe('Register', () => {
describe('server sends back error', () => {
beforeEach(async () => {
- registerUserMutationMock.mockRejectedValue({ message: 'Ouch!' })
+ registerUserMutationMock.mockRejectedValue({
+ message: 'GraphQL error: User already exists.',
+ })
await wrapper.find('form').trigger('submit')
await flushPromises()
})
- it('shows error message', () => {
- expect(wrapper.find('span.alert-text').exists()).toBeTruthy()
- expect(wrapper.find('span.alert-text').text().length !== 0).toBeTruthy()
- expect(wrapper.find('span.alert-text').text()).toContain('error.error')
- expect(wrapper.find('span.alert-text').text()).toContain('Ouch!')
+ // Wolle: remove?
+ // it('shows error message', () => {
+ // expect(wrapper.find('span.alert-text').exists()).toBeTruthy()
+ // expect(wrapper.find('span.alert-text').text().length !== 0).toBeTruthy()
+ // expect(wrapper.find('span.alert-text').text()).toContain('error.error')
+ // expect(wrapper.find('span.alert-text').text()).toContain('Ouch!')
+ // })
+
+ // it('button to dismisses error message is present', () => {
+ // expect(wrapper.find('button.close').exists()).toBeTruthy()
+ // })
+
+ // it('dismisses error message', async () => {
+ // await wrapper.find('button.close').trigger('click')
+ // await flushPromises()
+ // expect(wrapper.find('span.alert-text').exists()).not.toBeTruthy()
+ // })
+
+ it('shows success title, subtitle, login button', () => {
+ expect(wrapper.vm.showPageMessage).toBeTruthy()
+ expect(wrapper.find('.test-message-headline').text()).toBe('site.thx.errorTitle')
+ expect(wrapper.find('.test-message-subtitle').text()).toBe('error.user-already-exists')
+ expect(wrapper.find('.test-message-button').text()).toBe(
+ 'site.register.message-button-text',
+ )
})
- it('button to dismisses error message is present', () => {
- expect(wrapper.find('button.close').exists()).toBeTruthy()
- })
-
- it('dismisses error message', async () => {
- await wrapper.find('button.close').trigger('click')
- await flushPromises()
- expect(wrapper.find('span.alert-text').exists()).not.toBeTruthy()
+ it('click calls "solveError"', async () => {
+ wrapper.find('.test-message-button').trigger('click')
+ await wrapper.vm.$nextTick()
+ expect(wrapper.vm.showPageMessage).not.toBeTruthy()
})
})
describe('server sends back success', () => {
- beforeEach(() => {
+ beforeEach(async () => {
registerUserMutationMock.mockResolvedValue({
data: {
create: 'success',
},
})
- })
-
- it('routes to "/thx/register"', async () => {
await wrapper.find('form').trigger('submit')
await flushPromises()
+ })
+
+ it('submit sends apollo mutate', () => {
expect(registerUserMutationMock).toBeCalledWith(
expect.objectContaining({
variables: {
@@ -267,7 +285,16 @@ describe('Register', () => {
},
}),
)
- expect(routerPushMock).toHaveBeenCalledWith('/thx/register')
+ })
+
+ it('shows success title, subtitle', () => {
+ expect(wrapper.vm.showPageMessage).toBeTruthy()
+ expect(wrapper.find('.test-message-headline').text()).toBe('site.thx.title')
+ expect(wrapper.find('.test-message-subtitle').text()).toBe('site.thx.register')
+ })
+
+ it('button is not present', () => {
+ expect(wrapper.find('.test-message-button')).toBeTruthy()
})
})
})
diff --git a/frontend/src/pages/Register.vue b/frontend/src/pages/Register.vue
index 5ee513aaf..0a0d080aa 100755
--- a/frontend/src/pages/Register.vue
+++ b/frontend/src/pages/Register.vue
@@ -105,6 +105,7 @@
+