[SDC-29] Amdocs OnBoard 1707 initial commit.
[sdc.git] / openecomp-be / lib / openecomp-sdc-validation-lib / att-sdc-validation-impl / src / test / java / com / att / sdc / validation / impl / validators / AttValetGroupAssignmentResourceValidatorTest.java
1 package com.att.sdc.validation.impl.validators;
2
3 import com.att.sdc.validation.datatypes.AttHeatResourceTypes;
4 import com.att.sdc.validation.datatypes.AttValetGroupTypeValues;
5 import org.openecomp.sdc.validation.Validator;
6 import org.openecomp.core.validation.api.ValidationManager;
7 import org.openecomp.core.validation.factory.ValidationManagerFactory;
8 import org.openecomp.core.validation.types.GlobalValidationContext;
9 import org.openecomp.core.validation.types.MessageContainer;
10 import org.openecomp.sdc.datatypes.error.ErrorLevel;
11 import org.openecomp.sdc.datatypes.error.ErrorMessage;
12 import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
13 import org.openecomp.sdc.validation.util.ValidationTestUtil;
14 import org.testng.Assert;
15 import org.testng.annotations.Test;
16
17 import java.io.IOException;
18 import java.util.List;
19 import java.util.Map;
20
21
22 public class AttValetGroupAssignmentResourceValidatorTest {
23
24   HeatResourceValidator baseValidator = new HeatResourceValidator();
25   AttValetGroupAssignmentResourceValidator resourceValidator = new
26       AttValetGroupAssignmentResourceValidator();
27
28   @Test
29   public void testATTValetGroupType() {
30     Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
31         resourceValidator, AttHeatResourceTypes.ATT_VALET_GROUP_ASSIGNMENT.getType(),
32         "/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive");
33     Assert.assertNotNull(messages);
34     Assert.assertEquals(messages.size(), 0);
35
36     messages = ValidationTestUtil.testValidator(baseValidator,
37         resourceValidator, AttHeatResourceTypes.ATT_VALET_GROUP_ASSIGNMENT.getType(),
38         "/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative");
39     Assert.assertNotNull(messages);
40     Assert.assertEquals(messages.size(), 1);
41     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
42     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
43         "WARNING: Unexpected group_type for ATT::Valet::GroupAssignment, Resource ID [valet_group_assignment_illegal_1]");
44     Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
45         "WARNING: Unexpected group_type for ATT::Valet::GroupAssignment, Resource ID [valet_group_assignment_illegal_2]");
46   }
47
48   @Test
49   public void testValidationWithFullFlowFromValidationFactory() throws IOException {
50     GlobalValidationContext globalContext = ValidationTestUtil.createGlobalContextFromPath(
51         "/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative");
52     ValidationManager validationManager = ValidationManagerFactory.getInstance().createInterface();
53     validationManager.updateGlobalContext(globalContext);
54     Map<String, List<ErrorMessage>> messages = validationManager.validate();
55
56     Assert.assertNotNull(messages);
57     ErrorMessage excpectedMessage = new ErrorMessage(ErrorLevel.WARNING,
58         "WARNING: Unexpected group_type for ATT::Valet::GroupAssignment, Resource ID [valet_group_assignment_illegal_1]");
59     Assert.assertTrue(messages.get("first.yaml").contains(excpectedMessage));
60   }
61 }