From ca0d97c47cde3152aa5929658242f87619c9a686 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Wed, 23 Mar 2022 16:03:52 +0100 Subject: [PATCH] test printEmailCodeValidTime --- .../src/graphql/resolver/UserResolver.test.ts | 18 ++++++++++++++++++ backend/src/graphql/resolver/UserResolver.ts | 4 ++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/backend/src/graphql/resolver/UserResolver.test.ts b/backend/src/graphql/resolver/UserResolver.test.ts index f873fd694..9d78ecb6e 100644 --- a/backend/src/graphql/resolver/UserResolver.test.ts +++ b/backend/src/graphql/resolver/UserResolver.test.ts @@ -11,6 +11,7 @@ import { LoginEmailOptIn } from '@entity/LoginEmailOptIn' import { User } from '@entity/User' import CONFIG from '@/config' import { sendAccountActivationEmail } from '@/mailer/sendAccountActivationEmail' +import { printEmailCodeValidTime } from './UserResolver' // import { klicktippSignIn } from '@/apis/KlicktippController' @@ -412,3 +413,20 @@ describe('UserResolver', () => { }) }) }) + +describe('printEmailCodeValidTime', () => { + it('works with 10 minutes', () => { + CONFIG.EMAIL_CODE_VALID_TIME = 10 + expect(printEmailCodeValidTime()).toBe('10 minutes') + }) + + it('works with 1440 minutes', () => { + CONFIG.EMAIL_CODE_VALID_TIME = 1440 + expect(printEmailCodeValidTime()).toBe('24 hours') + }) + + it('works with 1410 minutes', () => { + CONFIG.EMAIL_CODE_VALID_TIME = 1410 + expect(printEmailCodeValidTime()).toBe('23 hours and 30 minutes') + }) +}) diff --git a/backend/src/graphql/resolver/UserResolver.ts b/backend/src/graphql/resolver/UserResolver.ts index 9b4fa6fa1..e0aa06a7c 100644 --- a/backend/src/graphql/resolver/UserResolver.ts +++ b/backend/src/graphql/resolver/UserResolver.ts @@ -687,9 +687,9 @@ const emailCodeValidTime = (): { hours?: number; minutes: number } => { return { minutes: CONFIG.EMAIL_CODE_VALID_TIME } } -const printEmailCodeValidTime = (): string => { +export const printEmailCodeValidTime = (): string => { const time = emailCodeValidTime() const result = time.minutes > 0 ? `${time.minutes} minutes` : '' - if (time.hours) return `${time.hours} hours` + result !== '' ? ` and ${result}` : '' + if (time.hours) return `${time.hours} hours` + (result !== '' ? ` and ${result}` : '') return result }