From d7ae0bc3b887472f76142da76846bf102db1e7c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wolfgang=20Hu=C3=9F?= Date: Mon, 2 May 2022 09:39:31 +0200 Subject: [PATCH] Fix code coverage in Register.vue test --- frontend/src/pages/Register.spec.js | 67 +++++++++++++++++++++-------- 1 file changed, 50 insertions(+), 17 deletions(-) diff --git a/frontend/src/pages/Register.spec.js b/frontend/src/pages/Register.spec.js index 49984c008..ca419069c 100644 --- a/frontend/src/pages/Register.spec.js +++ b/frontend/src/pages/Register.spec.js @@ -221,31 +221,64 @@ describe('Register', () => { }) describe('server sends back error', () => { - beforeEach(async () => { + const createError = async (errorMessage) => { registerUserMutationMock.mockRejectedValue({ - message: 'GraphQL error: User already exists.', + message: errorMessage, }) await wrapper.find('form').trigger('submit') await flushPromises() + } + + describe('server sends back error "User already exists."', () => { + beforeEach(async () => { + await createError('GraphQL error: User already exists.') + }) + + 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('toasts the error message', () => { + expect(toastErrorSpy).toBeCalledWith('error.user-already-exists') + }) + + it('click calls "solveError"', async () => { + wrapper.find('.test-message-button').trigger('click') + await wrapper.vm.$nextTick() + expect(wrapper.vm.showPageMessage).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', - ) - }) + describe('server sends back error "Unknown error"', () => { + beforeEach(async () => { + await createError(' – Unknown error.') + }) - it('toasts the error message', () => { - expect(toastErrorSpy).toBeCalledWith('error.user-already-exists') - }) + 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.unknown-error – Unknown error.', + ) + expect(wrapper.find('.test-message-button').text()).toBe( + 'site.register.message-button-text', + ) + }) - it('click calls "solveError"', async () => { - wrapper.find('.test-message-button').trigger('click') - await wrapper.vm.$nextTick() - expect(wrapper.vm.showPageMessage).not.toBeTruthy() + it('toasts the error message', () => { + expect(toastErrorSpy).toBeCalledWith('error.unknown-error – Unknown error.') + }) + + it('click calls "solveError"', async () => { + wrapper.find('.test-message-button').trigger('click') + await wrapper.vm.$nextTick() + expect(wrapper.vm.showPageMessage).not.toBeTruthy() + }) }) })