From cb2ceedf9b5fb2b3d4db36ca33204252ee3c3162 Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Wed, 31 Jul 2024 19:13:02 +0200 Subject: [PATCH] OZG-6170 OZG-6209 add missing test --- .../validation/tech.validation.util.spec.ts | 38 +++++++++++-------- .../lib/validation/tech.validation.util.ts | 2 +- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/alfa-client/libs/tech-shared/src/lib/validation/tech.validation.util.spec.ts b/alfa-client/libs/tech-shared/src/lib/validation/tech.validation.util.spec.ts index 140ac18795..dc9b252a76 100644 --- a/alfa-client/libs/tech-shared/src/lib/validation/tech.validation.util.spec.ts +++ b/alfa-client/libs/tech-shared/src/lib/validation/tech.validation.util.spec.ts @@ -21,23 +21,11 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { - AbstractControl, - FormControl, - FormGroup, - UntypedFormControl, - UntypedFormGroup, -} from '@angular/forms'; -import { createInvalidParam, createIssue } from '../../../test/error'; +import { AbstractControl, FormControl, FormGroup, UntypedFormControl, UntypedFormGroup } from '@angular/forms'; +import { createInvalidParam, createIssue, createProblemDetail } from '../../../test/error'; import { InvalidParam, Issue } from '../tech.model'; -import { - getControlForInvalidParam, - getControlForIssue, - getFieldPath, - getMessageForIssue, - setInvalidParamValidationError, - setIssueValidationError, -} from './tech.validation.util'; +import { ValidationMessageCode } from './tech.validation.messages'; +import { getControlForInvalidParam, getControlForIssue, getFieldPath, getMessageForIssue, getMessageReason, setInvalidParamValidationError, setIssueValidationError } from './tech.validation.util'; describe('ValidationUtils', () => { const baseField1Control: FormControl = new UntypedFormControl(); @@ -270,4 +258,22 @@ describe('ValidationUtils', () => { expect(result).toBe(fieldPath); }); }); + + describe('getMessageReason', () => { + it('should return reason', () => { + const problemDetail = createProblemDetail(); + + const reason: ValidationMessageCode = getMessageReason(problemDetail); + + expect(reason).toEqual(problemDetail.invalidParams[0].reason); + }); + + it('should return null', () => { + const problemDetail = createProblemDetail([{ ...createInvalidParam(), reason: null }]); + + const reason: ValidationMessageCode = getMessageReason(problemDetail); + + expect(reason).toBeNull(); + }); + }); }); diff --git a/alfa-client/libs/tech-shared/src/lib/validation/tech.validation.util.ts b/alfa-client/libs/tech-shared/src/lib/validation/tech.validation.util.ts index 5968495a95..d562a4543b 100644 --- a/alfa-client/libs/tech-shared/src/lib/validation/tech.validation.util.ts +++ b/alfa-client/libs/tech-shared/src/lib/validation/tech.validation.util.ts @@ -76,7 +76,7 @@ export function isValidationFieldFileSizeExceedError(error: ProblemDetail): bool return getMessageReason(error) === ValidationMessageCode.FIELD_FILE_SIZE_EXCEEDED; } -export function getMessageReason(problemDetail: ProblemDetail): string { +export function getMessageReason(problemDetail: ProblemDetail): ValidationMessageCode | null { return problemDetail.invalidParams[0].reason ?? null; } -- GitLab