Replaced all tabs with spaces in java and pom.xml
[so.git] / bpmn / so-bpmn-tasks / src / test / java / org / onap / so / client / orchestration / SDNCVnfResourcesTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.onap.so.client.orchestration;
22
23 import static org.mockito.ArgumentMatchers.any;
24 import static org.mockito.ArgumentMatchers.anyBoolean;
25 import static org.mockito.ArgumentMatchers.eq;
26 import static org.mockito.ArgumentMatchers.isA;
27 import static org.mockito.Mockito.doReturn;
28 import static org.mockito.Mockito.doThrow;
29 import static org.mockito.Mockito.times;
30 import static org.mockito.Mockito.verify;
31 import org.junit.Before;
32 import org.junit.Test;
33 import org.junit.runner.RunWith;
34 import org.mockito.InjectMocks;
35 import org.mockito.Mock;
36 import org.mockito.junit.MockitoJUnitRunner;
37 import org.onap.sdnc.northbound.client.model.GenericResourceApiRequestActionEnumeration;
38 import org.onap.sdnc.northbound.client.model.GenericResourceApiVnfOperationInformation;
39 import org.onap.so.bpmn.common.data.TestDataSetup;
40 import org.onap.so.bpmn.servicedecomposition.bbobjects.CloudRegion;
41 import org.onap.so.bpmn.servicedecomposition.bbobjects.Customer;
42 import org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf;
43 import org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance;
44 import org.onap.so.bpmn.servicedecomposition.generalobjects.RequestContext;
45 import org.onap.so.client.exception.BadResponseException;
46 import org.onap.so.client.exception.MapperException;
47 import org.onap.so.client.sdnc.SDNCClient;
48 import org.onap.so.client.sdnc.beans.SDNCSvcAction;
49 import org.onap.so.client.sdnc.beans.SDNCSvcOperation;
50 import org.onap.so.client.sdnc.mapper.VnfTopologyOperationRequestMapper;
51
52 @RunWith(MockitoJUnitRunner.Silent.class)
53 public class SDNCVnfResourcesTest extends TestDataSetup {
54     @InjectMocks
55     private SDNCVnfResources sdncVnfResources;
56
57     @Mock
58     protected VnfTopologyOperationRequestMapper MOCK_vnfTopologyOperationRequestMapper;
59
60     @Mock
61     protected SDNCClient MOCK_sdncClient;
62
63     private GenericVnf genericVnf;
64     private ServiceInstance serviceInstance;
65     private Customer customer;
66     private CloudRegion cloudRegion;
67     private RequestContext requestContext;
68     private GenericResourceApiVnfOperationInformation sdncReq;
69
70     @Before
71     public void before() {
72         serviceInstance = buildServiceInstance();
73         genericVnf = buildGenericVnf();
74         customer = buildCustomer();
75         cloudRegion = buildCloudRegion();
76         requestContext = buildRequestContext();
77         sdncReq = new GenericResourceApiVnfOperationInformation();
78     }
79
80     @Test
81     public void assignVnfTest() {
82         doReturn(sdncReq).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(isA(SDNCSvcOperation.class),
83                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
84                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
85                 anyBoolean());
86         sdncVnfResources.assignVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext, false);
87         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(isA(SDNCSvcOperation.class),
88                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
89                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
90                 anyBoolean());
91     }
92
93     @Test
94     public void activateVnfTest() {
95         doReturn(sdncReq).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(isA(SDNCSvcOperation.class),
96                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
97                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
98                 anyBoolean());
99         sdncVnfResources.activateVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
100         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(isA(SDNCSvcOperation.class),
101                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
102                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
103                 anyBoolean());
104     }
105
106     @Test
107     public void deleteVnfTest() {
108         doReturn(sdncReq).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(isA(SDNCSvcOperation.class),
109                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
110                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
111                 anyBoolean());
112         sdncVnfResources.deleteVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
113         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(isA(SDNCSvcOperation.class),
114                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
115                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
116                 anyBoolean());
117     }
118
119     @Test
120     public void queryVnfTest() throws MapperException, BadResponseException {
121         doReturn("test").when(MOCK_sdncClient).get(isA(String.class));
122         genericVnf.setSelflink("testSelflink");
123         sdncVnfResources.queryVnf(genericVnf);
124         verify(MOCK_sdncClient, times(1)).get(isA(String.class));
125     }
126
127     @Test
128     public void queryVnfWithResourcePrefixTest() throws MapperException, BadResponseException {
129         doReturn("test").when(MOCK_sdncClient).get(isA(String.class));
130         genericVnf.setSelflink("restconf/test:testSelflink");
131         sdncVnfResources.queryVnf(genericVnf);
132         verify(MOCK_sdncClient, times(1)).get(isA(String.class));
133     }
134
135     @Test
136     public void changeModelVnfTest() {
137         doReturn(sdncReq).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(isA(SDNCSvcOperation.class),
138                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
139                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
140                 anyBoolean());
141         sdncVnfResources.changeModelVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
142         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION,
143                 SDNCSvcAction.CHANGE_ASSIGN, GenericResourceApiRequestActionEnumeration.CREATEVNFINSTANCE, genericVnf,
144                 serviceInstance, customer, cloudRegion, requestContext, false);
145     }
146
147     @Test
148     public void deactivateVnfSuccessTest() {
149         doReturn(sdncReq).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(
150                 eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION), eq(SDNCSvcAction.DEACTIVATE),
151                 isA(GenericResourceApiRequestActionEnumeration.class), any(GenericVnf.class),
152                 any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class), any(RequestContext.class),
153                 anyBoolean());
154         sdncVnfResources.deactivateVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
155         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION),
156                 eq(SDNCSvcAction.DEACTIVATE), isA(GenericResourceApiRequestActionEnumeration.class),
157                 any(GenericVnf.class), any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class),
158                 any(RequestContext.class), anyBoolean());
159
160     }
161
162     @Test
163     public void deactivateVnfExceptionTest() {
164         expectedException.expect(Exception.class);
165         doThrow(Exception.class).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(
166                 eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION), eq(SDNCSvcAction.DEACTIVATE),
167                 isA(GenericResourceApiRequestActionEnumeration.class), any(GenericVnf.class),
168                 any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class), any(RequestContext.class),
169                 anyBoolean());
170         sdncVnfResources.deactivateVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
171     }
172
173     @Test
174     public void unassignVnfSuccessTest() throws Exception {
175         doReturn(sdncReq).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(
176                 eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION), eq(SDNCSvcAction.UNASSIGN),
177                 isA(GenericResourceApiRequestActionEnumeration.class), any(GenericVnf.class),
178                 any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class), any(RequestContext.class),
179                 anyBoolean());
180         sdncVnfResources.unassignVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
181         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION),
182                 eq(SDNCSvcAction.UNASSIGN), isA(GenericResourceApiRequestActionEnumeration.class),
183                 any(GenericVnf.class), any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class),
184                 any(RequestContext.class), anyBoolean());
185     }
186
187     @Test
188     public void unassignVnfExceptionTest() throws Exception {
189         expectedException.expect(Exception.class);
190         doThrow(Exception.class).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(
191                 eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION), eq(SDNCSvcAction.UNASSIGN),
192                 isA(GenericResourceApiRequestActionEnumeration.class), any(GenericVnf.class),
193                 any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class), any(RequestContext.class),
194                 anyBoolean());
195         sdncVnfResources.unassignVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
196     }
197 }