diff options
author | Abhai Singh <Abhai.Singh@amdocs.com> | 2017-11-20 18:27:50 +0530 |
---|---|---|
committer | Vitaly Emporopulo <Vitaliy.Emporopulo@amdocs.com> | 2017-11-20 16:17:18 +0000 |
commit | 66ed5840294585b55bc632944f19b859d389b3d2 (patch) | |
tree | 1e870df0ce3985b3287d053abf620ebee99e18f6 /openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test | |
parent | 746d3c490eaf8c92ca6125be97371720f4c8f7c9 (diff) |
Adding error codes to HEAT Validator
Added error code to SharedResourceGuideLineValidator
Issue-Id :SDC-572
Change-Id: I20c014a1aeb488788bc1faeb05a89ff920258275
Signed-off-by: Abhai Singh <Abhai.Singh@amdocs.com>
Diffstat (limited to 'openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test')
11 files changed, 176 insertions, 26 deletions
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidatorTest.java index 5994c23642..e7c2d37d32 100644 --- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidatorTest.java +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidatorTest.java @@ -13,143 +13,169 @@ import java.util.Map; */ public class SharedResourceGuideLineValidatorTest { + private static final String RESOURCE_PATH = "/org/openecomp/validation/validators/guideLineValidator"; Validator validator = new SharedResourceGuideLineValidator(); @Test public void testBaseHeatExposeNetwork() { Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/positive/"); + RESOURCE_PATH + "/baseHeatDoesNotExposeNetwork/positive/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 0); messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/negative/"); + RESOURCE_PATH + "/baseHeatDoesNotExposeNetwork/negative/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(), - "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [SecurityGroup_expose]"); + "WARNING: [SRG1]: Resource is not defined as output and thus cannot be Shared, Resource ID [SecurityGroup_expose]"); + } + + @Test + public void testParseException(){ + Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, + RESOURCE_PATH + "/baseHeatDoesNotExposeNetwork/parseException/"); + Assert.assertEquals(messages.size(), 1); + Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1); + Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(), + "ERROR: [SRG5]: 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" + + "]"); + } + + @Test + public void testInvalidGetResource(){ + Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, + RESOURCE_PATH + "/" + + "baseHeatDoesNotExposeNetworkInvalidGetResource"); + Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(), + "WARNING: [SRG1]: Resource is not defined as output and thus cannot be Shared, Resource ID [net_expose]"); + } @Test public void testBaseHeatExposeNetworkAndVolume() { Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/"); + RESOURCE_PATH + "/baseHeatDoesNotExposeNetworkAndVolume/positive/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 0); messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/"); + RESOURCE_PATH + "/baseHeatDoesNotExposeNetworkAndVolume/negative/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(), - "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [volume_expose]"); + "WARNING: [SRG1]: Resource is not defined as output and thus cannot be Shared, Resource ID [volume_expose]"); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(), - "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [net_expose]"); + "WARNING: [SRG1]: Resource is not defined as output and thus cannot be Shared, Resource ID [net_expose]"); } @Test public void testBaseHeatExposeServerGroup() { Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeServerGroup/positive/"); + RESOURCE_PATH + "/baseHeatDoesNotExposeServerGroup/positive/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 0); messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeServerGroup/negative/"); + RESOURCE_PATH + "/baseHeatDoesNotExposeServerGroup/negative/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(), - "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [ServerGroup_expose]"); + "WARNING: [SRG1]: Resource is not defined as output and thus cannot be Shared, Resource ID [ServerGroup_expose]"); } @Test public void testBaseHeatExposeSecurityGroup() { Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/"); + RESOURCE_PATH + "/baseHeatDoesNotExposeSecurityGroup/positive/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 0); messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/"); + RESOURCE_PATH + "/baseHeatDoesNotExposeSecurityGroup/negative/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(), - "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [SecurityGroup_expose]"); + "WARNING: [SRG1]: Resource is not defined as output and thus cannot be Shared, Resource ID [SecurityGroup_expose]"); } @Test public void testBaseHeatExposeVolume() { Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeVolume/positive/"); + RESOURCE_PATH + "/baseHeatDoesNotExposeVolume/positive/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 0); messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeVolume/negative/"); + RESOURCE_PATH + "/baseHeatDoesNotExposeVolume/negative/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1); Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(), - "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [volume_expose]"); + "WARNING: [SRG1]: Resource is not defined as output and thus cannot be Shared, Resource ID [volume_expose]"); } @Test public void testHeatVolumeExpose() { Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/heatVolumeExpose/positive/"); + RESOURCE_PATH + "/heatVolumeExpose/positive/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 0); messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/heatVolumeExpose/negative/"); + RESOURCE_PATH + "/heatVolumeExpose/negative/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertEquals(messages.get("firstVol.yaml").getErrorMessageList().size(), 1); Assert.assertEquals(messages.get("firstVol.yaml").getErrorMessageList().get(0).getMessage(), - "WARNING: Volume is not defined as output and thus cannot be attached volume_expose"); + "WARNING: [SRG2]: Volume is not defined as output and thus cannot be attached volume_expose"); } @Test public void testResourceIsExposedByCallingGetResourceNotFromOutput() { Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatExposeResourceUsingGetResource/positive"); + RESOURCE_PATH + "/baseHeatExposeResourceUsingGetResource/positive"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 0); messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/baseHeatExposeResourceUsingGetResource/negative"); + RESOURCE_PATH + "/baseHeatExposeResourceUsingGetResource/negative"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertEquals(messages.get("base_virc.yaml").getErrorMessageList().size(), 1); Assert.assertEquals(messages.get("base_virc.yaml").getErrorMessageList().get(0).getMessage(), - "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [virc_RSG]"); + "WARNING: [SRG1]: Resource is not defined as output and thus cannot be Shared, Resource ID [virc_RSG]"); } @Test public void testMissingBaseHeat() { Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/missingBaseHeat/"); + RESOURCE_PATH + "/missingBaseHeat/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().size(), 1); Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().get(0).getMessage(), - "WARNING: Missing Base HEAT. Pay attention that without Base HEAT, there will be no shared resources"); + "WARNING: [SRG3]: Missing Base HEAT. Pay attention that without Base HEAT, there will be no shared resources"); } @Test public void testMultiBaseHeat() { Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator, - "/org/openecomp/validation/validators/guideLineValidator/multiBaseHeat/"); + RESOURCE_PATH + "/multiBaseHeat/"); Assert.assertNotNull(messages); Assert.assertEquals(messages.size(), 1); Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().size(), 1); Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().get(0).getMessage(), - "WARNING: Multi Base HEAT. Expected only one. Files [second.yaml,first.yaml]."); + "WARNING: [SRG4]: Multi Base HEAT. Expected only one. Files [second.yaml,first.yaml]."); } } diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/MANIFEST.json new file mode 100644 index 0000000000..76ce6de6e6 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/MANIFEST.json @@ -0,0 +1,27 @@ +{ + "name": "validTest", + "description": "Valid Test", + "version": "1610", + "data": [ + { + "file": "first.yaml", + "type": "HEAT", + "isBase": true, + "data": [ + { + "file": "first.env", + "type": "HEAT_ENV" + }, + { + "file": "firstVol.yaml", + "type": "HEAT_VOL" + } + ] + }, + { + "file": "second.yaml", + "type": "HEAT", + "isBase": false + } + ] +}
\ No newline at end of file diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/first.env new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/first.env diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/first.yaml new file mode 100644 index 0000000000..e38e40de9f --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/first.yaml @@ -0,0 +1,14 @@ +heat_template_version: 2013-05-23 + +description: heat expose volume resource + + resources: + net_expose: + type: OS::Neutron::Net + +outputs: + expose_resource_network_output: + description: the pcrf_server + value: { get_resource: net_expose } + + diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/firstVol.yaml new file mode 100644 index 0000000000..9e26dfeeb6 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/firstVol.yaml @@ -0,0 +1 @@ +{}
\ No newline at end of file diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/second.yaml new file mode 100644 index 0000000000..bb06b9d60a --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetwork/parseException/second.yaml @@ -0,0 +1,14 @@ +heat_template_version: 2013-05-23 + +description: heat second + +resources: + network_expose: + type: OS::Neutron::Net + +outputs: + expose_resource_network_output: + description: the pcrf_server + value: { get_resource: network_expose } + + diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/MANIFEST.json new file mode 100644 index 0000000000..76ce6de6e6 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/MANIFEST.json @@ -0,0 +1,27 @@ +{ + "name": "validTest", + "description": "Valid Test", + "version": "1610", + "data": [ + { + "file": "first.yaml", + "type": "HEAT", + "isBase": true, + "data": [ + { + "file": "first.env", + "type": "HEAT_ENV" + }, + { + "file": "firstVol.yaml", + "type": "HEAT_VOL" + } + ] + }, + { + "file": "second.yaml", + "type": "HEAT", + "isBase": false + } + ] +}
\ No newline at end of file diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/first.env new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/first.env diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/first.yaml new file mode 100644 index 0000000000..2ea7847b8b --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/first.yaml @@ -0,0 +1,26 @@ +heat_template_version: 2013-05-23 + +description: heat expose volume resource + +parameters: + pcrf_oam_vol_name_2: + type: string + label: OAM volume name 2 + description: Assigning name to volume + +resources: + net_expose: + type: OS::Neutron::Net + + aaa: + type: OS::Neutron::Net + properties: + name: {get_param: pcrf_oam_vol_name_2} + + +outputs: + expose_resource_network_output: + description: the pcrf_server + value: { get_resource: aaa } + + diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/firstVol.yaml new file mode 100644 index 0000000000..9e26dfeeb6 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/firstVol.yaml @@ -0,0 +1 @@ +{}
\ No newline at end of file diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/second.yaml new file mode 100644 index 0000000000..bb06b9d60a --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/guideLineValidator/baseHeatDoesNotExposeNetworkInvalidGetResource/second.yaml @@ -0,0 +1,14 @@ +heat_template_version: 2013-05-23 + +description: heat second + +resources: + network_expose: + type: OS::Neutron::Net + +outputs: + expose_resource_network_output: + description: the pcrf_server + value: { get_resource: network_expose } + + |