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;
24 import static org.junit.Assert.assertEquals;
25 import static org.junit.Assert.assertTrue;
26 import java.util.ArrayList;
27 import java.util.HashMap;
28 import java.util.List;
30 import java.util.UUID;
31 import javax.ws.rs.core.MediaType;
32 import org.junit.Before;
33 import org.junit.Test;
34 import org.onap.so.db.request.beans.InfraActiveRequests;
35 import org.onap.so.db.request.data.controller.InstanceNameDuplicateCheckRequest;
36 import org.springframework.beans.factory.annotation.Value;
37 import org.springframework.boot.test.web.client.TestRestTemplate;
38 import org.springframework.boot.web.server.LocalServerPort;
39 import org.springframework.core.ParameterizedTypeReference;
40 import org.springframework.http.HttpEntity;
41 import org.springframework.http.HttpHeaders;
42 import org.springframework.http.HttpMethod;
43 import org.springframework.http.ResponseEntity;
44 import org.springframework.transaction.annotation.Transactional;
45 import org.springframework.web.util.UriComponentsBuilder;
48 public class InfraActiveRequestsRepositoryCustomControllerTest extends RequestsAdapterBase {
53 @Value("${mso.adapters.requestDb.auth}")
54 private String msoAdaptersAuth;
56 private String createURLWithPort(String uri) {
57 return "http://localhost:" + port + uri;
60 private InfraActiveRequests infraActiveRequests;
61 private InfraActiveRequests infraActiveRequestsResponse;
62 private HttpHeaders headers;
63 private TestRestTemplate restTemplate;
65 private void verifyInfraActiveRequests() {
66 assertEquals(infraActiveRequests.getRequestId(), infraActiveRequestsResponse.getRequestId());
67 assertEquals(infraActiveRequests.getServiceInstanceId(), infraActiveRequestsResponse.getServiceInstanceId());
68 assertEquals(infraActiveRequests.getServiceInstanceName(),
69 infraActiveRequestsResponse.getServiceInstanceName());
70 assertEquals(infraActiveRequests.getVnfId(), infraActiveRequestsResponse.getVnfId());
71 assertEquals(infraActiveRequests.getVnfName(), infraActiveRequestsResponse.getVnfName());
72 assertEquals(infraActiveRequests.getVfModuleId(), infraActiveRequestsResponse.getVfModuleId());
73 assertEquals(infraActiveRequests.getVfModuleName(), infraActiveRequestsResponse.getVfModuleName());
74 assertEquals(infraActiveRequests.getVolumeGroupId(), infraActiveRequestsResponse.getVolumeGroupId());
75 assertEquals(infraActiveRequests.getVolumeGroupName(), infraActiveRequestsResponse.getVolumeGroupName());
76 assertEquals(infraActiveRequests.getNetworkId(), infraActiveRequestsResponse.getNetworkId());
77 assertEquals(infraActiveRequests.getNetworkName(), infraActiveRequestsResponse.getNetworkName());
78 assertEquals(infraActiveRequests.getConfigurationId(), infraActiveRequestsResponse.getConfigurationId());
79 assertEquals(infraActiveRequests.getConfigurationName(), infraActiveRequestsResponse.getConfigurationName());
80 assertEquals(infraActiveRequests.getAaiServiceId(), infraActiveRequestsResponse.getAaiServiceId());
81 assertEquals(infraActiveRequests.getTenantId(), infraActiveRequestsResponse.getTenantId());
82 assertEquals(infraActiveRequests.getRequestScope(), infraActiveRequestsResponse.getRequestScope());
83 assertEquals(infraActiveRequests.getRequestorId(), infraActiveRequestsResponse.getRequestorId());
84 assertEquals(infraActiveRequests.getSource(), infraActiveRequestsResponse.getSource());
85 assertEquals(infraActiveRequests.getOperationalEnvId(), infraActiveRequestsResponse.getOperationalEnvId());
86 assertEquals(infraActiveRequests.getOperationalEnvName(), infraActiveRequestsResponse.getOperationalEnvName());
87 assertEquals(infraActiveRequests.getRequestStatus(), infraActiveRequestsResponse.getRequestStatus());
88 assertEquals(infraActiveRequests.getAction(), infraActiveRequestsResponse.getAction());
89 assertEquals(infraActiveRequests.getRequestUrl(), infraActiveRequestsResponse.getRequestUrl());
95 headers = new HttpHeaders();
96 restTemplate = new TestRestTemplate("test", "test");
98 headers.set("Accept", MediaType.APPLICATION_JSON);
99 headers.set("Content-Type", MediaType.APPLICATION_JSON);
100 headers.set("Authorization", msoAdaptersAuth);
102 infraActiveRequests = new InfraActiveRequests();
104 infraActiveRequests.setRequestId(UUID.randomUUID().toString());
105 infraActiveRequests.setOperationalEnvId(UUID.randomUUID().toString());
106 infraActiveRequests.setServiceInstanceId(UUID.randomUUID().toString());
107 infraActiveRequests.setServiceInstanceName("serviceInstanceNameTest");
108 infraActiveRequests.setVnfId(UUID.randomUUID().toString());
109 infraActiveRequests.setVnfName("vnfInstanceNameTest");
110 infraActiveRequests.setVfModuleId(UUID.randomUUID().toString());
111 infraActiveRequests.setVfModuleName("vfModuleInstanceNameTest");
112 infraActiveRequests.setVolumeGroupId(UUID.randomUUID().toString());
113 infraActiveRequests.setVolumeGroupName("volumeGroupInstanceNameTest");
114 infraActiveRequests.setNetworkId(UUID.randomUUID().toString());
115 infraActiveRequests.setNetworkName("networkInstanceNameTest");
116 infraActiveRequests.setConfigurationId(UUID.randomUUID().toString());
117 infraActiveRequests.setConfigurationName("configurationInstanceNameTest");
118 infraActiveRequests.setAicCloudRegion("1");
119 infraActiveRequests.setTenantId(UUID.randomUUID().toString());
120 infraActiveRequests.setRequestScope("operationalEnvironment");
121 infraActiveRequests.setRequestorId(UUID.randomUUID().toString());
122 infraActiveRequests.setSource("sourceTest");
123 infraActiveRequests.setOperationalEnvName(UUID.randomUUID().toString());
124 infraActiveRequests.setRequestStatus("IN_PROGRESS");
125 infraActiveRequests.setAction("create");
127 .setRequestUrl("http://localhost:8080/onap/so/infra/serviceInstantiation/v7/serviceInstances");
129 HttpEntity<String> entity = new HttpEntity(infraActiveRequests, headers);
131 UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(createURLWithPort("/infraActiveRequests"));
132 ResponseEntity<String> response =
133 restTemplate.exchange(builder.toUriString(), HttpMethod.POST, entity, String.class);
135 assertEquals(201, response.getStatusCodeValue());
140 public void getCloudOrchestrationFiltersFromInfraActiveTest() {
142 Map<String, String> requestMap = new HashMap<>();
143 requestMap.put("operationalEnvironmentId", infraActiveRequests.getOperationalEnvId());
144 requestMap.put("operationalEnvironmentName", infraActiveRequests.getOperationalEnvName());
145 requestMap.put("resourceType", "operationalEnvironment");
147 HttpEntity<Map<String, String>> entity = new HttpEntity<>(requestMap, headers);
149 UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(
150 createURLWithPort("/infraActiveRequests") + "/getCloudOrchestrationFiltersFromInfraActive");
152 ResponseEntity<List<InfraActiveRequests>> response = restTemplate.exchange(builder.toUriString(),
153 HttpMethod.POST, entity, new ParameterizedTypeReference<List<InfraActiveRequests>>() {});
155 List<InfraActiveRequests> iarr = response.getBody();
156 assertEquals(200, response.getStatusCodeValue());
158 assertTrue(iarr.size() == 1);
159 infraActiveRequestsResponse = iarr.get(0);
161 verifyInfraActiveRequests();
166 public void getOrchestrationFiltersFromInfraActiveTest() {
168 Map<String, List<String>> requestMap = new HashMap<>();
169 List<String> values = new ArrayList<>();
170 values.add("EQUALS");
171 values.add(infraActiveRequests.getServiceInstanceId());
172 requestMap.put("serviceInstanceId", values);
174 values = new ArrayList<>();
175 values.add("EQUALS");
176 values.add(infraActiveRequests.getServiceInstanceName());
177 requestMap.put("serviceInstanceName", values);
179 HttpEntity<Map<String, List<String>>> entityList = new HttpEntity(requestMap, headers);
180 UriComponentsBuilder builder = UriComponentsBuilder
181 .fromHttpUrl(createURLWithPort("/infraActiveRequests") + "/getOrchestrationFiltersFromInfraActive");
183 ResponseEntity<List<InfraActiveRequests>> response = restTemplate.exchange(builder.toUriString(),
184 HttpMethod.POST, entityList, new ParameterizedTypeReference<List<InfraActiveRequests>>() {});
186 List<InfraActiveRequests> iarr = response.getBody();
188 assertEquals(200, response.getStatusCodeValue());
190 assertTrue(iarr.size() == 1);
191 infraActiveRequestsResponse = iarr.get(0);
193 verifyInfraActiveRequests();
197 public void checkVnfIdStatusTest() {
200 UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(createURLWithPort(
201 "/infraActiveRequests" + "/checkVnfIdStatus/" + infraActiveRequests.getOperationalEnvId()));
202 HttpEntity<String> entity = new HttpEntity(HttpEntity.EMPTY, headers);
204 ResponseEntity<InfraActiveRequests> response =
205 restTemplate.exchange(builder.toUriString(), HttpMethod.GET, entity, InfraActiveRequests.class);
207 infraActiveRequestsResponse = response.getBody();
209 assertEquals(200, response.getStatusCodeValue());
211 verifyInfraActiveRequests();
215 public void checkInstanceNameDuplicateTest() {
217 InstanceNameDuplicateCheckRequest instanceNameDuplicateCheckRequest =
218 new InstanceNameDuplicateCheckRequest((HashMap<String, String>) null,
219 infraActiveRequests.getOperationalEnvName(), infraActiveRequests.getRequestScope());
221 HttpEntity<InstanceNameDuplicateCheckRequest> entityList =
222 new HttpEntity(instanceNameDuplicateCheckRequest, headers);
223 UriComponentsBuilder builder = UriComponentsBuilder
224 .fromHttpUrl(createURLWithPort("/infraActiveRequests") + "/checkInstanceNameDuplicate");
226 ResponseEntity<InfraActiveRequests> response = restTemplate.exchange(builder.toUriString(), HttpMethod.POST,
227 entityList, new ParameterizedTypeReference<InfraActiveRequests>() {});
229 infraActiveRequestsResponse = response.getBody();
231 assertEquals(200, response.getStatusCodeValue());
233 verifyInfraActiveRequests();
237 public void checkInstanceNameDuplicateViaTest() {
239 Map<String, String> requestMap = new HashMap<>();
240 requestMap.put("operationalEnvironmentId", infraActiveRequests.getOperationalEnvId());
242 InstanceNameDuplicateCheckRequest instanceNameDuplicateCheckRequest = new InstanceNameDuplicateCheckRequest(
243 (HashMap<String, String>) requestMap, null, infraActiveRequests.getRequestScope());
245 HttpEntity<InstanceNameDuplicateCheckRequest> entityList =
246 new HttpEntity(instanceNameDuplicateCheckRequest, headers);
247 UriComponentsBuilder builder = UriComponentsBuilder
248 .fromHttpUrl(createURLWithPort("/infraActiveRequests") + "/checkInstanceNameDuplicate");
250 ResponseEntity<InfraActiveRequests> response = restTemplate.exchange(builder.toUriString(), HttpMethod.POST,
251 entityList, new ParameterizedTypeReference<InfraActiveRequests>() {});
253 infraActiveRequestsResponse = response.getBody();
255 assertEquals(200, response.getStatusCodeValue());
257 verifyInfraActiveRequests();
261 public void checkInstanceNameDuplicateTestNotFound() {
263 String instanceNameDuplicateCheckRequest =
264 "{\r\n\t \"instanceName\":\"TestNotFoundInstanceName\",\r\n\t \"requestScope\":\"testasdfasdfasdf\"\r\n}";
266 HttpEntity<InstanceNameDuplicateCheckRequest> entityList =
267 new HttpEntity(instanceNameDuplicateCheckRequest, headers);
268 UriComponentsBuilder builder = UriComponentsBuilder
269 .fromHttpUrl(createURLWithPort("/infraActiveRequests") + "/checkInstanceNameDuplicate");
271 ResponseEntity<InfraActiveRequests> response = restTemplate.exchange(builder.toUriString(), HttpMethod.POST,
272 entityList, new ParameterizedTypeReference<InfraActiveRequests>() {});
274 assertEquals(200, response.getStatusCodeValue());
275 assertEquals(null, response.getBody());
279 public void checkInstanceNameDuplicateViaTestNotFound() {
281 Map<String, String> requestMap = new HashMap<>();
282 requestMap.put("operationalEnvironmentId", "NotFoundOperationalEnvId");
284 InstanceNameDuplicateCheckRequest instanceNameDuplicateCheckRequest = new InstanceNameDuplicateCheckRequest(
285 (HashMap<String, String>) requestMap, null, infraActiveRequests.getRequestScope());
287 HttpEntity<InstanceNameDuplicateCheckRequest> entityList =
288 new HttpEntity(instanceNameDuplicateCheckRequest, headers);
289 UriComponentsBuilder builder = UriComponentsBuilder
290 .fromHttpUrl(createURLWithPort("/infraActiveRequests") + "/checkInstanceNameDuplicate");
292 ResponseEntity<InfraActiveRequests> response = restTemplate.exchange(builder.toUriString(), HttpMethod.POST,
293 entityList, new ParameterizedTypeReference<InfraActiveRequests>() {});
295 infraActiveRequestsResponse = response.getBody();
297 assertEquals(200, response.getStatusCodeValue());
298 assertEquals(null, response.getBody());