1 package org.openecomp.sdc.validation.impl.validators.namingconvention;
3 import org.openecomp.core.validation.types.MessageContainer;
4 import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
5 import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
6 import org.openecomp.sdc.validation.util.ValidationTestUtil;
7 import org.testng.Assert;
8 import org.testng.annotations.Test;
13 * Created by TALIO on 2/28/2017.
15 public class ContrailServiceTemplateNamingConventionValidatorTest {
17 HeatResourceValidator baseValidator = new HeatResourceValidator();
18 ContrailServiceTemplateNamingConventionValidator resourceValidator = new
19 ContrailServiceTemplateNamingConventionValidator();
20 private static final String PATH="/org/openecomp/validation/validators/guideLineValidator/heatcontrailservicetemplateimageandflavor/";
23 public void testContrailServiceTemplateImageAndFlavorNamesAlignedWithNamingConventionButDifferentVmType() {
24 Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
25 resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
26 PATH + "imageandflavordifferentvmtype");
27 Assert.assertNotNull(messages);
28 Assert.assertEquals(messages.size(), 1);
30 messages.get(messages.keySet().iterator().next()).getErrorMessageList().size(), 1);
31 Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
32 "WARNING: [NST1]: Service Template naming convention in Image and Flavor properties is not consistent in Resource, Resource ID service_template");
36 public void testContrailServiceTemplateImageAndFlavorNamesNotAlignedWithNamingConvention() {
37 Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
38 resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
39 PATH + "/notaligned");
40 Assert.assertNotNull(messages);
41 Assert.assertEquals(messages.size(), 1);
42 Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
43 Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
44 "WARNING: [NST3]: Service Template 'image_name' Parameter Name not aligned with Guidelines, Parameter Name [st_imaage_name], Resource ID [service_template]. As a result, VF/VFC Profile may miss this information");
45 Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
46 "WARNING: [NST3]: Service Template 'flavor' Parameter Name not aligned with Guidelines, Parameter Name [st_flavaor_name], Resource ID [service_template]. As a result, VF/VFC Profile may miss this information");
50 public void testContrailServiceTemplateImageAndFlavorNamesAlignedWithNamingConvention() {
51 Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
52 resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
54 Assert.assertNotNull(messages);
55 Assert.assertEquals(messages.size(), 0);
59 public void testContrailServiceTemplateMissingParam() {
60 Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
61 resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
62 PATH + "missingparam");
63 Assert.assertNotNull(messages);
64 Assert.assertEquals(messages.size(), 1);
66 messages.get(messages.keySet().iterator().next()).getErrorMessageList().size(), 1);
67 Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
68 "WARNING: [NST2]: Missing get_param in image_name, Resource Id [service_template]");