2 * ============LICENSE_START=======================================================
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
21 package org.onap.so.adapters.requestsdb.client;
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.web.server.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;
40 import java.util.HashMap;
41 import java.util.ArrayList;
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;
50 @RunWith(SpringRunner.class)
51 @SpringBootTest(classes = MSORequestDBApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
52 @ActiveProfiles("test")
53 public class RequestsDbClientTest {
56 private RequestDbClientPortChanger requestsDbClient;
58 private InfraActiveRequests infraActiveRequests;
65 requestsDbClient.setPort(port);
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 infraActiveRequests.setRequestUrl("http://localhost:8080/onap/so/infra/serviceInstantiation/v7/serviceInstances");
92 requestsDbClient.save(infraActiveRequests);
95 private void verifyOperationStatus(OperationStatus request,OperationStatus response){
96 assertThat(request, sameBeanAs(response).ignoring("operateAt").ignoring("finishedAt"));
100 private void verifyInfraActiveRequests(InfraActiveRequests infraActiveRequestsResponse) {
101 assertThat(infraActiveRequestsResponse, sameBeanAs(infraActiveRequests).ignoring("modifyTime").ignoring("log"));
105 public void getCloudOrchestrationFiltersFromInfraActiveTest() {
106 Map<String, String> requestMap = new HashMap<>();
107 requestMap.put("operationalEnvironmentId", infraActiveRequests.getOperationalEnvId());
108 requestMap.put("operationalEnvironmentName", infraActiveRequests.getOperationalEnvName());
109 requestMap.put("resourceType", "operationalEnvironment");
111 List<InfraActiveRequests> iarr = requestsDbClient.getCloudOrchestrationFiltersFromInfraActive(requestMap);
113 assertEquals(1, iarr.size());
114 InfraActiveRequests infraActiveRequestsResponse = iarr.get(0);
115 verifyInfraActiveRequests(infraActiveRequestsResponse);
120 public void checkVnfIdStatusTest() {
121 InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkVnfIdStatus(infraActiveRequests.getOperationalEnvId());
122 verifyInfraActiveRequests(infraActiveRequestsResponse);
123 assertNull(requestsDbClient.checkVnfIdStatus(UUID.randomUUID().toString()));
127 public void checkInstanceNameDuplicateTest() {
128 InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkInstanceNameDuplicate(null,infraActiveRequests.getOperationalEnvName(),infraActiveRequests.getRequestScope());
130 verifyInfraActiveRequests(infraActiveRequestsResponse);
134 public void checkInstanceNameDuplicateViaTest() {
135 Map<String, String> requestMap = new HashMap<>();
136 requestMap.put("operationalEnvironmentId", infraActiveRequests.getOperationalEnvId());
138 InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkInstanceNameDuplicate((HashMap<String, String>)requestMap,null,infraActiveRequests.getRequestScope());
140 verifyInfraActiveRequests(infraActiveRequestsResponse);
144 public void getOrchestrationFiltersFromInfraActiveTest() {
145 Map<String, List<String>> requestMap = new HashMap<>();
146 List<String> values = new ArrayList<>();
147 values.add("EQUALS");
148 values.add(infraActiveRequests.getServiceInstanceId());
149 requestMap.put("serviceInstanceId", values);
151 values = new ArrayList<>();
152 values.add("EQUALS");
153 values.add(infraActiveRequests.getServiceInstanceName());
154 requestMap.put("serviceInstanceName", values);
156 List<InfraActiveRequests> iaar = requestsDbClient.getOrchestrationFiltersFromInfraActive(requestMap);
158 assertEquals(1, iaar.size());
159 InfraActiveRequests infraActiveRequestsResponse = iaar.get(0);
161 verifyInfraActiveRequests(infraActiveRequestsResponse);
162 values = new ArrayList<>();
163 values.add("EQUALS");
164 values.add(UUID.randomUUID().toString());
165 requestMap.put("serviceInstanceName", values);
166 requestsDbClient.getOrchestrationFiltersFromInfraActive(requestMap);
170 public void getInfraActiveRequestbyRequestIdTest(){
171 InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.getInfraActiveRequestbyRequestId(infraActiveRequests.getRequestId());
172 verifyInfraActiveRequests(infraActiveRequestsResponse);
173 infraActiveRequestsResponse = requestsDbClient.getInfraActiveRequestbyRequestId(infraActiveRequests.getRequestId());
175 assertNull(requestsDbClient.getInfraActiveRequestbyRequestId(UUID.randomUUID().toString()));
179 public void getInfraActiveRequestbyRequestIdWhereRequestUrlNullTest(){
180 // requestUrl setup to null and save
181 infraActiveRequests.setRequestUrl(null);
182 requestsDbClient.save(infraActiveRequests);
183 InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.getInfraActiveRequestbyRequestId(infraActiveRequests.getRequestId());
184 verifyInfraActiveRequests(infraActiveRequestsResponse);
186 assertNull(infraActiveRequestsResponse.getRequestUrl());
190 public void getOneByServiceIdAndOperationIdTest(){
191 OperationStatus operationStatus = new OperationStatus();
192 operationStatus.setProgress("IN_PROGRESS");
193 operationStatus.setResult("FAILED");
194 operationStatus.setServiceId(UUID.randomUUID().toString());
195 operationStatus.setOperationContent("operation-content");
196 operationStatus.setOperation("operation");
197 operationStatus.setOperationId(UUID.randomUUID().toString());
198 operationStatus.setReason("reason-test");
199 operationStatus.setUserId(UUID.randomUUID().toString());
200 operationStatus.setServiceName("test-service");
201 requestsDbClient.save(operationStatus);
203 OperationStatus operationStatusResponse = requestsDbClient.getOneByServiceIdAndOperationId(operationStatus.getServiceId(),operationStatus.getOperationId());
205 verifyOperationStatus(operationStatus,operationStatusResponse);
207 assertNull(requestsDbClient.getOneByServiceIdAndOperationId(UUID.randomUUID().toString(),operationStatus.getOperationId()));
212 public void getRequestProcessingDataBySoRequestIdTest(){
213 List<RequestProcessingData> requestProcessingDataList = requestsDbClient
214 .getRequestProcessingDataBySoRequestId("00032ab7-na18-42e5-965d-8ea592502018");
215 assertNotNull(requestProcessingDataList);
216 assertFalse(requestProcessingDataList.isEmpty());
217 assertEquals(2,requestProcessingDataList.size());
221 public void findOneByOperationalEnvIdAndServiceModelVersionIdAndRequestIdTest(){
222 OperationalEnvServiceModelStatus operationalEnvServiceModelStatus =requestsDbClient.findOneByOperationalEnvIdAndServiceModelVersionIdAndRequestId("1234","TEST1234", "00032ab7-3fb3-42e5-965d-8ea592502017");
223 assertNotNull(operationalEnvServiceModelStatus);
224 assertEquals("1234",operationalEnvServiceModelStatus.getOperationalEnvId());
225 assertEquals("TEST1234",operationalEnvServiceModelStatus.getServiceModelVersionId());
227 OperationalEnvServiceModelStatus operationalEnvServiceModelStatus1 =requestsDbClient.findOneByOperationalEnvIdAndServiceModelVersionIdAndRequestId("1234","TEST1235", "00032ab7-3fb3-42e5-965d-8ea592502018");
228 assertNotNull(operationalEnvServiceModelStatus1);
229 assertEquals("00032ab7-3fb3-42e5-965d-8ea592502018",operationalEnvServiceModelStatus1.getRequestId());
230 assertEquals("1234",operationalEnvServiceModelStatus1.getOperationalEnvId());
231 assertEquals("TEST1235",operationalEnvServiceModelStatus1.getServiceModelVersionId());
235 public void getAllByOperationalEnvIdAndRequestId(){
236 List<OperationalEnvServiceModelStatus> operationalEnvServiceModelStatuses =requestsDbClient.getAllByOperationalEnvIdAndRequestId("1234","00032ab7-3fb3-42e5-965d-8ea592502017");
237 assertNotNull(operationalEnvServiceModelStatuses);
238 assertFalse(operationalEnvServiceModelStatuses.isEmpty());
239 assertEquals(2,operationalEnvServiceModelStatuses.size());
243 public void getDistributionStatusByIdTest(){
244 OperationalEnvDistributionStatus operationalEnvDistributionStatus =requestsDbClient.getDistributionStatusById("111");
245 assertNotNull(operationalEnvDistributionStatus);
246 assertEquals("111",operationalEnvDistributionStatus.getDistributionId());
247 assertEquals("ERROR",operationalEnvDistributionStatus.getDistributionIdErrorReason());
248 assertEquals("00032ab7-3fb3-42e5-965d-8ea592502017",operationalEnvDistributionStatus.getRequestId());