f6988fdcd4fc7768872c03f53af235d2fa06dd23
[so.git] / bpmn / so-bpmn-tasks / src / test / java / org / onap / so / bpmn / infrastructure / validations / CloudRegionOrchestrationValidatorTest.java
1 package org.onap.so.bpmn.infrastructure.validations;
2
3 import static org.junit.Assert.assertEquals;
4 import static org.junit.Assert.assertFalse;
5 import static org.junit.Assert.assertTrue;
6 import static org.mockito.Mockito.doReturn;
7 import static org.mockito.Mockito.mock;
8 import java.util.Optional;
9 import java.util.Set;
10
11 import org.junit.Before;
12 import org.junit.Test;
13 import org.onap.so.bpmn.common.BuildingBlockExecution;
14 import org.onap.so.bpmn.servicedecomposition.bbobjects.CloudRegion;
15 import org.onap.so.bpmn.servicedecomposition.entities.GeneralBuildingBlock;
16
17 public class CloudRegionOrchestrationValidatorTest {
18         
19         private BuildingBlockExecution mockExecution;
20         private CloudRegion cloudRegion;
21         
22         @Before
23         public void setUp() {
24                 cloudRegion = new CloudRegion();
25                 cloudRegion.setCloudOwner("CloudOwner");
26                 cloudRegion.setLcpCloudRegionId("my-region-id");
27                 GeneralBuildingBlock gbb = new GeneralBuildingBlock();
28                 gbb.setCloudRegion(cloudRegion);
29                 mockExecution = mock(BuildingBlockExecution.class);
30                 doReturn(gbb).when(mockExecution).getGeneralBuildingBlock();
31         }
32         
33         @Test
34         public void validateDisabledTest() {
35                 cloudRegion.setOrchestrationDisabled(true);
36                 CloudRegionOrchestrationValidator validation = new CloudRegionOrchestrationValidator();
37                 Optional<String> result = validation.validate(mockExecution);
38                 assertEquals("Error: The request has failed due to orchestration currently disabled for the target cloud region my-region-id for cloud owner CloudOwner",
39                                 result.get());
40         }
41         
42         @Test
43         public void validateNotDisabledTest() {
44                 cloudRegion.setOrchestrationDisabled(false);
45                 CloudRegionOrchestrationValidator validation = new CloudRegionOrchestrationValidator();
46                 Optional<String> result = validation.validate(mockExecution);
47                 assertFalse(result.isPresent());
48         }
49         
50         @Test
51         public void validateDisabledIsNullTest() {
52                 CloudRegionOrchestrationValidator validation = new CloudRegionOrchestrationValidator();
53                 Optional<String> result = validation.validate(mockExecution);
54                 assertFalse(result.isPresent());
55         }
56
57         @Test
58         public void shouldRunForTest() {
59                 CloudRegionOrchestrationValidator validator = new CloudRegionOrchestrationValidator();
60                 assertTrue(validator.shouldRunFor("ActivateNetworkBB"));
61                 assertTrue(validator.shouldRunFor("AssignNetworkBB"));
62                 assertTrue(validator.shouldRunFor("CreateNetworkBB"));
63                 assertTrue(validator.shouldRunFor("DeactivateNetworkBB"));
64                 assertTrue(validator.shouldRunFor("DeleteNetworkBB"));
65                 assertTrue(validator.shouldRunFor("UnassignNetworkBB"));
66                 assertTrue(validator.shouldRunFor("UpdateNetworkBB"));
67                 
68                 assertTrue(validator.shouldRunFor("ActivateVnfBB"));
69                 assertTrue(validator.shouldRunFor("AssignVnfBB"));
70                 assertTrue(validator.shouldRunFor("UnassignVnfBB"));
71                 assertTrue(validator.shouldRunFor("DeactivateVnfBB"));
72
73                 assertTrue(validator.shouldRunFor("ActivateVfModuleBB"));
74                 assertTrue(validator.shouldRunFor("AssignVfModuleBB"));
75                 assertTrue(validator.shouldRunFor("CreateVfModuleBB"));
76                 assertTrue(validator.shouldRunFor("DeactivateVfModuleBB"));
77                 assertTrue(validator.shouldRunFor("DeleteVfModuleBB"));
78                 assertTrue(validator.shouldRunFor("UnassignVfModuleBB"));
79                 
80                 assertTrue(validator.shouldRunFor("ActivateVolumeGroupBB"));
81                 assertTrue(validator.shouldRunFor("AssignVolumeGroupBB"));
82                 assertTrue(validator.shouldRunFor("CreateVolumeGroupBB"));
83                 assertTrue(validator.shouldRunFor("DeactivateVolumeGroupBB"));
84                 assertTrue(validator.shouldRunFor("DeleteVolumeGroupBB"));
85                 assertTrue(validator.shouldRunFor("UnassignVolumeGroupBB"));
86                 
87                 assertTrue(validator.shouldRunFor("ActivateFabricConfigurationBB"));
88                 assertTrue(validator.shouldRunFor("AssignFabricConfigurationBB"));
89                 assertTrue(validator.shouldRunFor("UnassignFabricConfigurationBB"));
90                 assertTrue(validator.shouldRunFor("DeactivateFabricConfigurationBB"));
91                 
92                 assertFalse(validator.shouldRunFor("AssignServiceInstanceBB"));
93                 assertFalse(validator.shouldRunFor("AAICheckVnfInMaintBB"));
94                 assertFalse(validator.shouldRunFor("ChangeModelVfModuleBB"));
95                 assertFalse(validator.shouldRunFor("CreateNetworkCollectionBB"));
96         }
97 }