[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 / ForbiddenResourceGuideLineValidatorTest.java
1 package org.openecomp.sdc.validation.impl.validators;
2
3 import org.openecomp.sdc.validation.Validator;
4 import org.openecomp.core.validation.types.MessageContainer;
5 import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
6 import org.openecomp.sdc.validation.util.ValidationTestUtil;
7 import org.testng.Assert;
8 import org.testng.annotations.BeforeClass;
9 import org.testng.annotations.Test;
10
11 import java.io.IOException;
12 import java.util.Map;
13
14 /**
15  * Created by TALIO on 2/16/2017.
16  */
17 public class ForbiddenResourceGuideLineValidatorTest {
18
19   private static String mockConfigFileName =
20       "/org/openecomp/validation/configuration/mock_resource_validator_configuration.json";
21
22   ForbiddenResourceGuideLineValidator forbiddenResourceGuideLineValidator = new
23       ForbiddenResourceGuideLineValidator();
24
25   @BeforeClass
26   public void init() throws IOException {
27     Map<String, Object> resourcesMap = ValidationTestUtil.getResourceMap(mockConfigFileName);
28
29     Map<String, Object> resourceBaseValidatorMap =
30         (Map<String, Object>) resourcesMap.get("forbiddenResourceGuideLineValidator");
31     String implementationClass =
32         (String) resourceBaseValidatorMap.get("implementationClass");
33     Map<String, Object> properties =
34         (Map<String, Object>) resourceBaseValidatorMap.get("properties");
35
36     forbiddenResourceGuideLineValidator.init(properties);
37   }
38
39   @Test
40   public void testFloatingIpResourceType() {
41     Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(forbiddenResourceGuideLineValidator,
42         "/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive");
43     Assert.assertNotNull(messages);
44     Assert.assertEquals(messages.size(), 0);
45
46
47     messages = ValidationTestUtil.testValidator(forbiddenResourceGuideLineValidator,
48         "/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative");
49     Assert.assertNotNull(messages);
50     Assert.assertEquals(messages.size(), 1);
51     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
52     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
53         "WARNING: OS::Neutron::FloatingIP is in use, Resource ID [FSB2]");
54   }
55 }