From 5727e4ea79923550bd39c0b3abc68d950fb076d0 Mon Sep 17 00:00:00 2001 From: Joanna Jeremicz Date: Wed, 25 Nov 2020 14:03:01 +0100 Subject: Trim inputs in Property assignment Remove white spaces around input value Add unit test Issue-ID: SDC-3390 Signed-off-by: Joanna Jeremicz Change-Id: I53feef6b6171262ebf0ec53c20c0a4df1bb6d4b2 --- .../properties-inputs/input-fe-model.spec.ts | 38 ++++++++++++++++++++++ .../models/properties-inputs/property-fe-model.ts | 6 ++-- 2 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 catalog-ui/src/app/models/properties-inputs/input-fe-model.spec.ts (limited to 'catalog-ui/src/app/models') diff --git a/catalog-ui/src/app/models/properties-inputs/input-fe-model.spec.ts b/catalog-ui/src/app/models/properties-inputs/input-fe-model.spec.ts new file mode 100644 index 0000000000..e0851dbf10 --- /dev/null +++ b/catalog-ui/src/app/models/properties-inputs/input-fe-model.spec.ts @@ -0,0 +1,38 @@ +/*- +* ============LICENSE_START======================================================= +* SDC +* ========================================================= +* Copyright (C) 2020 Nokia. All rights reserved. +* ========================================================= +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* ============LICENSE_END===================================== +*/ + +import {InputFEModel} from "./input-fe-model"; + +describe('InputFEModel', () => { + [ + { inputValue: undefined, expectedValue: null }, + { inputValue: null, expectedValue: null }, + { inputValue: ' this is a test ', expectedValue: 'this is a test' } + { inputValue: ' this is another test ', expectedValue: 'this is another test' } + ].forEach(({inputValue, expectedValue}) => { + describe(`input is ${inputValue}`, () => { + it(`should return ${expectedValue}`, () => { + const inputFeModel = new InputFEModel({} as any); + inputFeModel.updateDefaultValueObj(inputValue, true); + expect(inputFeModel.getJSONDefaultValue()).toBe(expectedValue); + }); + }); + }); +}); diff --git a/catalog-ui/src/app/models/properties-inputs/property-fe-model.ts b/catalog-ui/src/app/models/properties-inputs/property-fe-model.ts index 664d128313..06c735db33 100644 --- a/catalog-ui/src/app/models/properties-inputs/property-fe-model.ts +++ b/catalog-ui/src/app/models/properties-inputs/property-fe-model.ts @@ -4,6 +4,8 @@ * ================================================================================ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. * ================================================================================ + * Modifications Copyright (C) 2020 Nokia + * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -273,8 +275,8 @@ export class PropertyFEModel extends PropertyBEModel { return JSON.stringify(valueObj); } - // return string value as is - return valueObj; + // return trimmed string value + return valueObj.trim(); } static parseValueObj(value: string, propertyType: PROPERTY_TYPES, propertyDerivedType: DerivedPropertyType, defaultValue?: string): any { -- cgit 1.2.3-korg