Trim inputs in Property assignment 84/115384/4
authorJoanna Jeremicz <joanna.jeremicz@nokia.com>
Wed, 25 Nov 2020 13:03:01 +0000 (14:03 +0100)
committerJoanna Jeremicz <joanna.jeremicz@nokia.com>
Thu, 26 Nov 2020 08:42:57 +0000 (09:42 +0100)
Remove white spaces around input value
Add unit test

Issue-ID: SDC-3390
Signed-off-by: Joanna Jeremicz <joanna.jeremicz@nokia.com>
Change-Id: I53feef6b6171262ebf0ec53c20c0a4df1bb6d4b2

catalog-ui/src/app/models/properties-inputs/input-fe-model.spec.ts [new file with mode: 0644]
catalog-ui/src/app/models/properties-inputs/property-fe-model.ts

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 (file)
index 0000000..e0851db
--- /dev/null
@@ -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);
+        });
+      });
+  });
+});
index 664d128..06c735d 100644 (file)
@@ -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 {