From ed04775c4af26f795dcd2e35bbbfc891e0cde9e2 Mon Sep 17 00:00:00 2001 From: mojahidi Date: Tue, 21 Nov 2017 18:24:22 +0530 Subject: Added error codes in YamlValidator This task is about updating error messages with error codes for YamlValidator Change-Id: I99d30dbc149d1e13ffc0a37aa722ab77209c56d5 Issue-ID:SDC-572 Signed-off-by: mojahidi --- .../validation/impl/validators/YamlValidator.java | 9 +++-- .../impl/validators/YamlValidatorTest.java | 38 +++++++++++++--------- 2 files changed, 29 insertions(+), 18 deletions(-) (limited to 'openecomp-be') diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/YamlValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/YamlValidator.java index 0fded4f58e..c0468f8b5a 100644 --- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/YamlValidator.java +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/YamlValidator.java @@ -20,6 +20,7 @@ package org.openecomp.sdc.validation.impl.validators; +import org.openecomp.core.validation.ErrorMessageCode; import org.openecomp.sdc.tosca.services.YamlUtil; import org.openecomp.sdc.validation.Validator; import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder; @@ -41,6 +42,8 @@ import java.util.Optional; public class YamlValidator implements Validator { public static final MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage(); private static final Logger logger = (Logger) LoggerFactory.getLogger(YamlValidator.class); + private static final ErrorMessageCode ERROR_CODE_YML_1 = new ErrorMessageCode("YML1"); + private static final ErrorMessageCode ERROR_CODE_YML_2 = new ErrorMessageCode("YML2"); @Override public void validate(GlobalValidationContext globalContext) { @@ -59,7 +62,8 @@ public class YamlValidator implements Validator { Optional rowContent = globalContext.getFileContent(fileName); if (!rowContent.isPresent()) { globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder - .getErrorWithParameters(Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(), + .getErrorWithParameters(ERROR_CODE_YML_1, Messages + .INVALID_YAML_FORMAT_REASON.getErrorMessage(), Messages.EMPTY_YAML_FILE.getErrorMessage()), LoggerTragetServiceName.VALIDATE_YAML_CONTENT, LoggerErrorDescription.INVALID_YAML_FORMAT); @@ -71,7 +75,8 @@ public class YamlValidator implements Validator { } catch (Exception exception) { globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder - .getErrorWithParameters(Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(), + .getErrorWithParameters(ERROR_CODE_YML_2, Messages + .INVALID_YAML_FORMAT_REASON.getErrorMessage(), YamlValidatorUtil.getParserExceptionReason(exception)), LoggerTragetServiceName.VALIDATE_YAML_CONTENT, LoggerErrorDescription.INVALID_YAML_FORMAT); diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/YamlValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/YamlValidatorTest.java index 32e847004c..98a8122ed6 100644 --- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/YamlValidatorTest.java +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/YamlValidatorTest.java @@ -32,6 +32,8 @@ import java.util.Map; public class YamlValidatorTest { + private static final String RESOURCE_PATH = "/org/openecomp/validation/validators/yaml_validator"; + public Map runValidation(String path) { YamlValidator validator = new YamlValidator(); return ValidationTestUtil.testValidator(validator, path); @@ -42,7 +44,7 @@ public class YamlValidatorTest { public void testValidYaml() { Map messages = runValidation( - "/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/validHeat.yaml"); + RESOURCE_PATH + "/valid_yaml/input/validHeat.yaml"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 0); } @@ -51,56 +53,60 @@ public class YamlValidatorTest { public void testInvalidTabYaml() { Map messages = runValidation( - "/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalidYamlTab.yaml"); + RESOURCE_PATH + "/invalid_valid_yaml_structure/input/invalidYamlTab.yaml"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); ValidationTestUtil.validateErrorMessage( messages.get("invalidYamlTab.yaml").getErrorMessageList().get(0).getMessage(), - "ERROR: " + Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(), - "while scanning for the next tokenfound character '\\t(TAB)' that cannot start any token. (Do not use \\t(TAB) for indentation) in 'reader', line 14, column 5: \tadmin_state_up: true ^"); - + "ERROR: " +"[YML2]: "+ Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(), + "while scanning for the next tokenfound character '\\t(TAB)' that cannot start " + + "any token. (Do not use \\t(TAB) for indentation) in 'reader', line 14, " + + "column 5: \tadmin_state_up: true ^"); } - @Test public void testDuplicateKeyInYaml() { Map messages = - runValidation("/org/openecomp/validation/validators/yaml_validator/duplicateKey.yaml"); + runValidation(RESOURCE_PATH + "/duplicateKey.yaml"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertTrue(messages.containsKey("duplicateKey.yaml")); ValidationTestUtil.validateErrorMessage( messages.get("duplicateKey.yaml").getErrorMessageList().get(0).getMessage(), - "ERROR: " + Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(), - "while parsing MappingNode in 'reader', line 6, column 3: Key_1_unique: ^duplicate key: Key_2_not_unique in 'reader', line 31, column 1: ^"); + "ERROR: " +"[YML2]: "+ Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(), + "while parsing MappingNode in 'reader', line 6, column 3: " + + "Key_1_unique: ^duplicate key: Key_2_not_unique in 'reader', line 31, " + + "column 1: ^"); } - @Test public void testInvalidYamlStructure() { Map messages = runValidation( - "/org/openecomp/validation/validators/yaml_validator/invalidYamlStructure.yaml"); + RESOURCE_PATH + "/invalidYamlStructure.yaml"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertTrue(messages.containsKey("invalidYamlStructure.yaml")); ValidationTestUtil.validateErrorMessage( messages.get("invalidYamlStructure.yaml").getErrorMessageList().get(0).getMessage(), - "ERROR: " + Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(), - "while parsing a block mapping in 'reader', line 8, column 7: admin_state_up: true ^expected , but found BlockEntry in 'reader', line 10, column 7: - shared: true ^"); + "ERROR: " +"[YML2]: "+ Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(), + "while parsing a block mapping in 'reader', line 8, column 7: " + + "admin_state_up: true ^expected , but found BlockEntry in 'reader', " + + "line 10, column 7: - shared: true ^"); } @Test public void testEmptyYaml() { Map messages = - runValidation("/org/openecomp/validation/validators/yaml_validator/emptyYaml.yaml"); + runValidation(RESOURCE_PATH + "/emptyYaml.yaml"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertTrue(messages.containsKey("emptyYaml.yaml")); - ValidationTestUtil.validateErrorMessage(messages.get("emptyYaml.yaml").getErrorMessageList().get(0).getMessage(), - "ERROR: " + Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(), + ValidationTestUtil.validateErrorMessage(messages.get("emptyYaml.yaml").getErrorMessageList() + .get(0).getMessage(), + "ERROR: " +"[YML1]: "+ Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(), Messages.EMPTY_YAML_FILE.getErrorMessage()); } -- cgit 1.2.3-korg