Merge "Fix improper Licesnse scans"
[so.git] / adapters / mso-requests-db-adapter / src / test / java / org / onap / so / adapters / requestsdb / client / RequestsDbClientTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 - 2018 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.adapters.requestsdb.client;
22
23 import org.junit.Before;
24 import org.junit.Test;
25 import org.junit.runner.RunWith;
26 import org.onap.so.adapters.requestsdb.application.MSORequestDBApplication;
27 import org.onap.so.db.request.beans.InfraActiveRequests;
28 import org.onap.so.db.request.beans.OperationStatus;
29 import org.onap.so.db.request.beans.OperationalEnvDistributionStatus;
30 import org.onap.so.db.request.beans.OperationalEnvServiceModelStatus;
31 import org.onap.so.db.request.beans.RequestProcessingData;
32 import org.springframework.beans.factory.annotation.Autowired;
33 import org.springframework.boot.context.embedded.LocalServerPort;
34 import org.springframework.boot.test.context.SpringBootTest;
35 import org.springframework.test.context.ActiveProfiles;
36 import org.springframework.test.context.junit4.SpringRunner;
37 import java.util.List;
38 import java.util.UUID;
39 import java.util.Map;
40 import java.util.HashMap;
41 import java.util.ArrayList;
42
43 import static com.shazam.shazamcrest.matcher.Matchers.sameBeanAs;
44 import static org.junit.Assert.assertEquals;
45 import static org.junit.Assert.assertNull;
46 import static org.junit.Assert.assertThat;
47 import static org.junit.Assert.assertNotNull;
48 import static org.junit.Assert.assertFalse;
49
50 @RunWith(SpringRunner.class)
51 @SpringBootTest(classes = MSORequestDBApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
52 @ActiveProfiles("test")
53 public class RequestsDbClientTest {
54
55     @Autowired
56     private RequestDbClientPortChanger requestsDbClient;
57
58     private InfraActiveRequests infraActiveRequests;
59
60     @LocalServerPort
61     private int port;
62
63     @Before
64     public void setup() {
65         requestsDbClient.setPort(port);
66
67         infraActiveRequests = new InfraActiveRequests();
68         infraActiveRequests.setRequestId(UUID.randomUUID().toString());
69         infraActiveRequests.setOperationalEnvId(UUID.randomUUID().toString());
70         infraActiveRequests.setServiceInstanceId(UUID.randomUUID().toString());
71         infraActiveRequests.setServiceInstanceName("serviceInstanceNameTest");
72         infraActiveRequests.setVnfId(UUID.randomUUID().toString());
73         infraActiveRequests.setVnfName("vnfInstanceNameTest");
74         infraActiveRequests.setVfModuleId(UUID.randomUUID().toString());
75         infraActiveRequests.setVfModuleName("vfModuleInstanceNameTest");
76         infraActiveRequests.setVolumeGroupId(UUID.randomUUID().toString());
77         infraActiveRequests.setVolumeGroupName("volumeGroupInstanceNameTest");
78         infraActiveRequests.setNetworkId(UUID.randomUUID().toString());
79         infraActiveRequests.setNetworkName("networkInstanceNameTest");
80         infraActiveRequests.setConfigurationId(UUID.randomUUID().toString());
81         infraActiveRequests.setConfigurationName("configurationInstanceNameTest");
82         infraActiveRequests.setAicCloudRegion("1");
83         infraActiveRequests.setTenantId(UUID.randomUUID().toString());
84         infraActiveRequests.setRequestScope("operationalEnvironment");
85         infraActiveRequests.setRequestorId(UUID.randomUUID().toString());
86         infraActiveRequests.setSource("sourceTest");
87         infraActiveRequests.setOperationalEnvName(UUID.randomUUID().toString());
88         infraActiveRequests.setRequestStatus("IN_PROGRESS");
89         infraActiveRequests.setAction("create");
90         infraActiveRequests.setRequestAction("someaction");
91         requestsDbClient.save(infraActiveRequests);
92     }
93
94     private void verifyOperationStatus(OperationStatus request,OperationStatus response){
95         assertThat(request, sameBeanAs(response).ignoring("operateAt").ignoring("finishedAt"));
96    }
97
98
99     private void verifyInfraActiveRequests(InfraActiveRequests infraActiveRequestsResponse) {
100         assertThat(infraActiveRequestsResponse, sameBeanAs(infraActiveRequests).ignoring("modifyTime").ignoring("log"));
101     }
102
103     @Test
104     public void getCloudOrchestrationFiltersFromInfraActiveTest() {
105         Map<String, String> requestMap = new HashMap<>();
106         requestMap.put("operationalEnvironmentId", infraActiveRequests.getOperationalEnvId());
107         requestMap.put("operationalEnvironmentName", infraActiveRequests.getOperationalEnvName());
108         requestMap.put("resourceType", "operationalEnvironment");
109
110         List<InfraActiveRequests> iarr = requestsDbClient.getCloudOrchestrationFiltersFromInfraActive(requestMap);
111
112         assertEquals(1, iarr.size());
113         InfraActiveRequests infraActiveRequestsResponse = iarr.get(0);
114         verifyInfraActiveRequests(infraActiveRequestsResponse);
115     }
116
117
118     @Test
119     public void checkVnfIdStatusTest() {
120         InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkVnfIdStatus(infraActiveRequests.getOperationalEnvId());
121         verifyInfraActiveRequests(infraActiveRequestsResponse);
122         assertNull(requestsDbClient.checkVnfIdStatus(UUID.randomUUID().toString()));
123     }
124
125     @Test
126     public void checkInstanceNameDuplicateTest() {
127         InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkInstanceNameDuplicate(null,infraActiveRequests.getOperationalEnvName(),infraActiveRequests.getRequestScope());
128
129         verifyInfraActiveRequests(infraActiveRequestsResponse);
130     }
131
132     @Test
133     public void checkInstanceNameDuplicateViaTest() {
134         Map<String, String> requestMap = new HashMap<>();
135         requestMap.put("operationalEnvironmentId", infraActiveRequests.getOperationalEnvId());
136
137         InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkInstanceNameDuplicate((HashMap<String, String>)requestMap,null,infraActiveRequests.getRequestScope());
138
139         verifyInfraActiveRequests(infraActiveRequestsResponse);
140     }
141
142     @Test
143     public void getOrchestrationFiltersFromInfraActiveTest() {
144         Map<String, List<String>> requestMap = new HashMap<>();
145         List<String> values = new ArrayList<>();
146         values.add("EQUALS");
147         values.add(infraActiveRequests.getServiceInstanceId());
148         requestMap.put("serviceInstanceId", values);
149
150         values = new ArrayList<>();
151         values.add("EQUALS");
152         values.add(infraActiveRequests.getServiceInstanceName());
153         requestMap.put("serviceInstanceName", values);
154
155         List<InfraActiveRequests> iaar = requestsDbClient.getOrchestrationFiltersFromInfraActive(requestMap);
156
157         assertEquals(1, iaar.size());
158         InfraActiveRequests infraActiveRequestsResponse = iaar.get(0);
159
160         verifyInfraActiveRequests(infraActiveRequestsResponse);
161         values = new ArrayList<>();
162         values.add("EQUALS");
163         values.add(UUID.randomUUID().toString());
164         requestMap.put("serviceInstanceName", values);
165         requestsDbClient.getOrchestrationFiltersFromInfraActive(requestMap);
166     }
167
168     @Test
169     public void getInfraActiveRequestbyRequestIdTest(){
170         InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.getInfraActiveRequestbyRequestId(infraActiveRequests.getRequestId());
171         verifyInfraActiveRequests(infraActiveRequestsResponse);       
172         infraActiveRequestsResponse = requestsDbClient.getInfraActiveRequestbyRequestId(infraActiveRequests.getRequestId());
173         
174         assertNull(requestsDbClient.getInfraActiveRequestbyRequestId(UUID.randomUUID().toString()));
175     }
176     
177
178     @Test
179     public void getOneByServiceIdAndOperationIdTest(){
180         OperationStatus operationStatus = new OperationStatus();
181         operationStatus.setProgress("IN_PROGRESS");
182         operationStatus.setResult("FAILED");
183         operationStatus.setServiceId(UUID.randomUUID().toString());
184         operationStatus.setOperationContent("operation-content");
185         operationStatus.setOperation("operation");
186         operationStatus.setOperationId(UUID.randomUUID().toString());
187         operationStatus.setReason("reason-test");
188         operationStatus.setUserId(UUID.randomUUID().toString());
189         operationStatus.setServiceName("test-service");
190         requestsDbClient.save(operationStatus);
191
192         OperationStatus operationStatusResponse = requestsDbClient.getOneByServiceIdAndOperationId(operationStatus.getServiceId(),operationStatus.getOperationId());
193
194         verifyOperationStatus(operationStatus,operationStatusResponse);
195
196         assertNull(requestsDbClient.getOneByServiceIdAndOperationId(UUID.randomUUID().toString(),operationStatus.getOperationId()));
197     }
198
199
200     @Test
201     public void getRequestProcessingDataBySoRequestIdTest(){
202         List<RequestProcessingData> requestProcessingDataList = requestsDbClient
203                 .getRequestProcessingDataBySoRequestId("00032ab7-na18-42e5-965d-8ea592502018");
204         assertNotNull(requestProcessingDataList);
205         assertFalse(requestProcessingDataList.isEmpty());
206         assertEquals(2,requestProcessingDataList.size());
207     }
208
209     @Test
210     public void findOneByOperationalEnvIdAndServiceModelVersionIdTest(){
211         OperationalEnvServiceModelStatus operationalEnvServiceModelStatus =requestsDbClient.findOneByOperationalEnvIdAndServiceModelVersionId("1234","TEST1234");
212         assertNotNull(operationalEnvServiceModelStatus);
213         assertEquals("1234",operationalEnvServiceModelStatus.getOperationalEnvId());
214         assertEquals("TEST1234",operationalEnvServiceModelStatus.getServiceModelVersionId());
215     }
216
217     @Test
218     public void getAllByOperationalEnvIdAndRequestId(){
219         List<OperationalEnvServiceModelStatus> operationalEnvServiceModelStatuses =requestsDbClient.getAllByOperationalEnvIdAndRequestId("1234","00032ab7-3fb3-42e5-965d-8ea592502017");
220         assertNotNull(operationalEnvServiceModelStatuses);
221         assertFalse(operationalEnvServiceModelStatuses.isEmpty());
222         assertEquals(2,operationalEnvServiceModelStatuses.size());
223     }
224
225     @Test
226     public void getDistributionStatusByIdTest(){
227         OperationalEnvDistributionStatus operationalEnvDistributionStatus =requestsDbClient.getDistributionStatusById("111");
228         assertNotNull(operationalEnvDistributionStatus);
229         assertEquals("111",operationalEnvDistributionStatus.getDistributionId());
230     }
231 }