HeatResource Validator 73/24873/1
authormojahidi <mojahidul.islam@amdocs.com>
Wed, 22 Nov 2017 12:29:58 +0000 (17:59 +0530)
committermojahidi <mojahidul.islam@amdocs.com>
Wed, 22 Nov 2017 12:30:10 +0000 (18:00 +0530)
This task is about  updating  error messages with error codes for HeatResourceValidator

Change-Id: I6c07a1bba62b4ca8ab92c09c7e9768f43a719cee
Issue-ID: SDC-572
Signed-off-by: mojahidi <mojahidul.islam@amdocs.com>
openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/HeatResourceValidator.java
openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/HeatResourceValidatorTest.java [new file with mode: 0644]

index 1fda0ed..10cfe35 100644 (file)
@@ -2,6 +2,7 @@ package org.openecomp.sdc.validation.impl.validators;
 
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.validation.ErrorMessageCode;
 import org.openecomp.core.validation.types.GlobalValidationContext;
 import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
 import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
@@ -32,6 +33,7 @@ import java.util.Set;
 public class HeatResourceValidator extends ResourceBaseValidator {
   public static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
   private static Logger logger = (Logger) LoggerFactory.getLogger(ResourceBaseValidator.class);
+  private static final ErrorMessageCode ERROR_CODE_HTR_1 = new ErrorMessageCode("HTR1");
 
   @Override
   public void init(Map<String, Object> properties) {
@@ -51,6 +53,7 @@ public class HeatResourceValidator extends ResourceBaseValidator {
     }
     Set<String> baseFiles = ManifestUtil.getBaseFiles(manifestContent);
     String baseFileName = CollectionUtils.isEmpty(baseFiles) ? null : baseFiles.iterator().next();
+    globalContext.setMessageCode(ERROR_CODE_HTR_1);
     HeatOrchestrationTemplate baseHot =
         ValidationUtil.checkHeatOrchestrationPreCondition(baseFileName, globalContext);
     Set<String> securityGroupsNamesFromBaseFileOutputs = baseFileName == null ? new HashSet<>()
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/HeatResourceValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/HeatResourceValidatorTest.java
new file mode 100644 (file)
index 0000000..2c3b05e
--- /dev/null
@@ -0,0 +1,28 @@
+package org.openecomp.sdc.validation.impl.validators;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+public class HeatResourceValidatorTest {
+
+  Validator validator=new HeatResourceValidator();
+
+  @Test
+  public void testParseException(){
+    Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+        "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/");
+    Assert.assertEquals(messages.size(), 1);
+    Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+        "ERROR: [HTR1]: Invalid HEAT format problem - [while scanning for the next token\n" +
+            "found character '\\t(TAB)' that cannot start any token. (Do not use \\t(TAB) for indentation)\n" +
+            " in 'reader', line 5, column 1:\n" +
+            "    \t\t\tresources:\n" +
+            "    ^\n" +
+            "]");
+  }
+}