1 package org.openecomp.sdc.validation.impl.validators.namingconvention;
3 import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
5 import org.openecomp.core.validation.types.MessageContainer;
6 import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
7 import org.openecomp.sdc.validation.util.ValidationTestUtil;
8 import org.testng.Assert;
9 import org.testng.annotations.Test;
14 * Created by TALIO on 2/28/2017.
16 public class ContrailServiceTemplateNamingConventionValidatorTest {
18 HeatResourceValidator baseValidator = new HeatResourceValidator();
19 ContrailServiceTemplateNamingConventionValidator resourceValidator = new
20 ContrailServiceTemplateNamingConventionValidator();
21 private static final String PATH="/org/openecomp/validation/validators/guideLineValidator/heatcontrailservicetemplateimageandflavor/";
24 public void testContrailServiceTemplateImageAndFlavorNamesAlignedWithNamingConventionButDifferentVmType() {
25 Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
26 resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
27 PATH + "imageandflavordifferentvmtype");
28 Assert.assertNotNull(messages);
29 Assert.assertEquals(messages.size(), 1);
31 messages.get(messages.keySet().iterator().next()).getErrorMessageList().size(), 1);
32 Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
33 "WARNING: [NST1]: Service Template naming convention in Image and Flavor properties is not consistent in Resource, Resource ID service_template");
37 public void testContrailServiceTemplateImageAndFlavorNamesNotAlignedWithNamingConvention() {
38 Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
39 resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
40 PATH + "/notaligned");
41 Assert.assertNotNull(messages);
42 Assert.assertEquals(messages.size(), 1);
43 Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
44 Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
45 "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");
46 Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
47 "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");
51 public void testContrailServiceTemplateImageAndFlavorNamesAlignedWithNamingConvention() {
52 Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
53 resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
55 Assert.assertNotNull(messages);
56 Assert.assertEquals(messages.size(), 0);
60 public void testContrailServiceTemplateMissingParam() {
61 Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
62 resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
63 PATH + "missingparam");
64 Assert.assertNotNull(messages);
65 Assert.assertEquals(messages.size(), 1);
67 messages.get(messages.keySet().iterator().next()).getErrorMessageList().size(), 1);
68 Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
69 "WARNING: [NST2]: Missing get_param in image_name, Resource Id [service_template]");