[SDC-29] Amdocs OnBoard 1707 initial commit.
[sdc.git] / openecomp-be / lib / openecomp-sdc-validation-lib / openecomp-sdc-validation-impl / src / test / java / org / openecomp / sdc / validation / impl / validators / namingconvention / NeutronPortNamingConventionValidatorTest.java
1 package org.openecomp.sdc.validation.impl.validators.namingconvention;
2
3 import org.openecomp.sdc.validation.impl.validators.NamingConventionGuideLineValidator;
4
5 import org.openecomp.core.validation.types.MessageContainer;
6 import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
7 import org.openecomp.sdc.validation.impl.validators.NamingConventionGuideLineValidator;
8 import org.openecomp.sdc.validation.util.ValidationTestUtil;
9 import org.testng.Assert;
10 import org.testng.annotations.Test;
11
12 import java.util.Map;
13
14 /**
15  * Created by TALIO on 2/28/2017.
16  */
17 public class NeutronPortNamingConventionValidatorTest {
18
19   NamingConventionGuideLineValidator baseValidator = new NamingConventionGuideLineValidator();
20   NeutronPortNamingConventionValidator resourceValidator = new
21       NeutronPortNamingConventionValidator();
22
23   @Test
24   public void testHeatPortNetworkNamingConvention() {
25     Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
26         resourceValidator, HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource(),
27         "/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/");
28     Assert.assertNotNull(messages);
29     Assert.assertEquals(messages.size(), 0);
30
31     messages = ValidationTestUtil.testValidator(baseValidator,
32         resourceValidator, HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource(),
33         "/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/");
34     Assert.assertNotNull(messages);
35     Assert.assertEquals(messages.size(), 1);
36     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 3);
37     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
38         "WARNING: Port 'Network' Parameter Name not aligned with Guidelines, Parameter Name [not_valid_network_name], Resource ID [port_resource]. As a result, VF/VFC Profile may miss this information");
39   }
40
41   @Test
42   public void testNeutronFixedIpName() {
43     Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
44         resourceValidator, HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource(),
45         "/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive");
46     Assert.assertNotNull(messages);
47     Assert.assertEquals(messages.size(), 0);
48
49     messages = ValidationTestUtil.testValidator(baseValidator,
50         resourceValidator, HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource(),
51         "/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/");
52     Assert.assertNotNull(messages);
53     Assert.assertEquals(messages.size(), 1);
54     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 4);
55     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
56         "WARNING: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [pcrf_net_v6_ip_a], Resource ID [port_resource_0]. As a result, VF/VFC Profile may miss this information");
57     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
58         "WARNING: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [indx], Resource ID [port_resource_1]. As a result, VF/VFC Profile may miss this information");
59     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(2).getMessage(),
60         "WARNING: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [pcrf_net_ipz], Resource ID [port_resource_2]. As a result, VF/VFC Profile may miss this information");
61     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(3).getMessage(),
62         "WARNING: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [pcrf_net_v0_ip_3], Resource ID [port_resource_2]. As a result, VF/VFC Profile may miss this information");
63   }
64 }