From 20b47b873e6903caa6d67e37f70558d82d5936ba Mon Sep 17 00:00:00 2001 From: roschaefer Date: Tue, 5 Nov 2019 15:23:31 +0100 Subject: [PATCH] refactor: add new email, display server response --- .../settings/my-email-address/index.spec.js | 15 ++++++++----- .../pages/settings/my-email-address/index.vue | 21 ++++++++----------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/webapp/pages/settings/my-email-address/index.spec.js b/webapp/pages/settings/my-email-address/index.spec.js index 8bf1bb986..6f99f182a 100644 --- a/webapp/pages/settings/my-email-address/index.spec.js +++ b/webapp/pages/settings/my-email-address/index.spec.js @@ -31,7 +31,9 @@ describe('EmailSettingsIndexPage', () => { error: jest.fn(), }, $apollo: { - mutate: jest.fn().mockResolvedValue(), + mutate: jest.fn().mockResolvedValue({ + data: { AddEmailAddress: { email: 'yet-another-email@example.org' } }, + }), }, $router: { push: jest.fn(), @@ -71,12 +73,15 @@ describe('EmailSettingsIndexPage', () => { describe('enter another email', () => { beforeEach(() => { wrapper = Wrapper() - wrapper.find('#email').setValue('yet-another-email@example.org') + wrapper.find('#email').setValue('yet-ANOTHER-email@example.org') wrapper.find('form').trigger('submit') }) - it('calls $apollo.mutate', () => { - expect(mocks.$apollo.mutate).toHaveBeenCalled() + it('delivers email to backend', () => { + const expected = expect.objectContaining({ + variables: { email: 'yet-ANOTHER-email@example.org' }, + }) + expect(mocks.$apollo.mutate).toHaveBeenCalledWith(expected) }) it('no form errors', () => { @@ -87,7 +92,7 @@ describe('EmailSettingsIndexPage', () => { describe('after timeout', () => { beforeEach(jest.runAllTimers) - it('redirects to `my-email-address/enter-nonce`', () => { + it('redirects with response from backend', () => { expect(mocks.$router.push).toHaveBeenCalledWith({ path: 'my-email-address/enter-nonce', query: { email: 'yet-another-email@example.org' }, diff --git a/webapp/pages/settings/my-email-address/index.vue b/webapp/pages/settings/my-email-address/index.vue index 4d38314db..5a84f3795 100644 --- a/webapp/pages/settings/my-email-address/index.vue +++ b/webapp/pages/settings/my-email-address/index.vue @@ -1,5 +1,5 @@