1 package org.onap.so.adapters.requestsdb;
4 import org.junit.Before;
5 import org.junit.After;
7 import org.junit.runner.RunWith;
8 import org.onap.so.adapters.requestsdb.application.MSORequestDBApplication;
9 import org.onap.so.db.request.beans.InfraActiveRequests;
10 import org.onap.so.db.request.data.controller.InstanceNameDuplicateCheckRequest;
11 import org.springframework.beans.factory.annotation.Value;
12 import org.springframework.boot.context.embedded.LocalServerPort;
13 import org.springframework.boot.test.context.SpringBootTest;
14 import org.springframework.boot.test.web.client.TestRestTemplate;
15 import org.springframework.core.ParameterizedTypeReference;
16 import org.springframework.http.HttpEntity;
17 import org.springframework.http.HttpHeaders;
18 import org.springframework.http.HttpMethod;
19 import org.springframework.http.ResponseEntity;
20 import org.springframework.test.context.ActiveProfiles;
21 import org.springframework.test.context.junit4.SpringRunner;
22 import org.springframework.transaction.annotation.Transactional;
23 import org.springframework.web.util.UriComponentsBuilder;
25 import javax.ws.rs.core.MediaType;
26 import java.util.List;
28 import java.util.HashMap;
29 import java.util.UUID;
30 import java.util.ArrayList;
32 import static org.junit.Assert.assertEquals;
33 import static org.junit.Assert.assertTrue;
35 @RunWith(SpringRunner.class)
36 @SpringBootTest(classes = MSORequestDBApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
37 @ActiveProfiles("test")
39 public class InfraActiveRequestsRepositoryCustomControllerTest {
44 @Value("${mso.adapters.requestDb.auth}")
45 private String msoAdaptersAuth;
47 private String createURLWithPort(String uri) {
48 return "http://localhost:" + port + uri;
51 private InfraActiveRequests infraActiveRequests;
52 private InfraActiveRequests infraActiveRequestsResponse;
53 private HttpHeaders headers;
54 private TestRestTemplate restTemplate;
56 private void verifyInfraActiveRequests() {
57 assertEquals(infraActiveRequests.getRequestId(), infraActiveRequestsResponse.getRequestId());
58 assertEquals(infraActiveRequests.getServiceInstanceId(), infraActiveRequestsResponse.getServiceInstanceId());
59 assertEquals(infraActiveRequests.getServiceInstanceName(), infraActiveRequestsResponse.getServiceInstanceName());
60 assertEquals(infraActiveRequests.getVnfId(), infraActiveRequestsResponse.getVnfId());
61 assertEquals(infraActiveRequests.getVnfName(), infraActiveRequestsResponse.getVnfName());
62 assertEquals(infraActiveRequests.getVfModuleId(), infraActiveRequestsResponse.getVfModuleId());
63 assertEquals(infraActiveRequests.getVfModuleName(), infraActiveRequestsResponse.getVfModuleName());
64 assertEquals(infraActiveRequests.getVolumeGroupId(), infraActiveRequestsResponse.getVolumeGroupId());
65 assertEquals(infraActiveRequests.getVolumeGroupName(), infraActiveRequestsResponse.getVolumeGroupName());
66 assertEquals(infraActiveRequests.getNetworkId(), infraActiveRequestsResponse.getNetworkId());
67 assertEquals(infraActiveRequests.getNetworkName(), infraActiveRequestsResponse.getNetworkName());
68 assertEquals(infraActiveRequests.getConfigurationId(), infraActiveRequestsResponse.getConfigurationId());
69 assertEquals(infraActiveRequests.getConfigurationName(), infraActiveRequestsResponse.getConfigurationName());
70 assertEquals(infraActiveRequests.getAaiServiceId(), infraActiveRequestsResponse.getAaiServiceId());
71 assertEquals(infraActiveRequests.getTenantId(), infraActiveRequestsResponse.getTenantId());
72 assertEquals(infraActiveRequests.getRequestScope(), infraActiveRequestsResponse.getRequestScope());
73 assertEquals(infraActiveRequests.getRequestorId(), infraActiveRequestsResponse.getRequestorId());
74 assertEquals(infraActiveRequests.getSource(), infraActiveRequestsResponse.getSource());
75 assertEquals(infraActiveRequests.getOperationalEnvId(), infraActiveRequestsResponse.getOperationalEnvId());
76 assertEquals(infraActiveRequests.getOperationalEnvName(), infraActiveRequestsResponse.getOperationalEnvName());
77 assertEquals(infraActiveRequests.getRequestStatus(), infraActiveRequestsResponse.getRequestStatus());
78 assertEquals(infraActiveRequests.getAction(), infraActiveRequestsResponse.getAction());
84 headers = new HttpHeaders();
85 restTemplate = new TestRestTemplate("test", "test");
87 headers.set("Accept", MediaType.APPLICATION_JSON);
88 headers.set("Content-Type", MediaType.APPLICATION_JSON);
89 headers.set("Authorization", msoAdaptersAuth);
91 infraActiveRequests = new InfraActiveRequests();
93 infraActiveRequests.setRequestId(UUID.randomUUID().toString());
94 infraActiveRequests.setOperationalEnvId(UUID.randomUUID().toString());
95 infraActiveRequests.setServiceInstanceId(UUID.randomUUID().toString());
96 infraActiveRequests.setServiceInstanceName("serviceInstanceNameTest");
97 infraActiveRequests.setVnfId(UUID.randomUUID().toString());
98 infraActiveRequests.setVnfName("vnfInstanceNameTest");
99 infraActiveRequests.setVfModuleId(UUID.randomUUID().toString());
100 infraActiveRequests.setVfModuleName("vfModuleInstanceNameTest");
101 infraActiveRequests.setVolumeGroupId(UUID.randomUUID().toString());
102 infraActiveRequests.setVolumeGroupName("volumeGroupInstanceNameTest");
103 infraActiveRequests.setNetworkId(UUID.randomUUID().toString());
104 infraActiveRequests.setNetworkName("networkInstanceNameTest");
105 infraActiveRequests.setConfigurationId(UUID.randomUUID().toString());
106 infraActiveRequests.setConfigurationName("configurationInstanceNameTest");
107 infraActiveRequests.setAicCloudRegion("1");
108 infraActiveRequests.setTenantId(UUID.randomUUID().toString());
109 infraActiveRequests.setRequestScope("operationalEnvironment");
110 infraActiveRequests.setRequestorId(UUID.randomUUID().toString());
111 infraActiveRequests.setSource("sourceTest");
112 infraActiveRequests.setOperationalEnvName(UUID.randomUUID().toString());
113 infraActiveRequests.setRequestStatus("IN_PROGRESS");
114 infraActiveRequests.setAction("create");
116 HttpEntity<String> entity = new HttpEntity(infraActiveRequests, headers);
118 UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(createURLWithPort("/infraActiveRequests"));
119 ResponseEntity<String> response = restTemplate.exchange(
120 builder.toUriString(),
121 HttpMethod.POST, entity, String.class);
123 assertEquals(201, response.getStatusCodeValue());
128 public void getCloudOrchestrationFiltersFromInfraActiveTest() {
130 Map<String, String> requestMap = new HashMap<>();
131 requestMap.put("operationalEnvironmentId", infraActiveRequests.getOperationalEnvId());
132 requestMap.put("operationalEnvironmentName", infraActiveRequests.getOperationalEnvName());
133 requestMap.put("resourceType", "operationalEnvironment");
135 HttpEntity<Map<String, String>> entity = new HttpEntity<>(requestMap, headers);
137 UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(createURLWithPort("/infraActiveRequests") + "/getCloudOrchestrationFiltersFromInfraActive");
139 ResponseEntity<List<InfraActiveRequests>> response = restTemplate.exchange(
140 builder.toUriString(),
141 HttpMethod.POST, entity, new ParameterizedTypeReference<List<InfraActiveRequests>>() {
144 List<InfraActiveRequests> iarr = response.getBody();
145 assertEquals(200, response.getStatusCodeValue());
147 assertTrue(iarr.size() == 1);
148 infraActiveRequestsResponse = iarr.get(0);
150 verifyInfraActiveRequests();
155 public void getOrchestrationFiltersFromInfraActiveTest() {
157 Map<String, List<String>> requestMap = new HashMap<>();
158 List<String> values = new ArrayList<>();
159 values.add("EQUALS");
160 values.add(infraActiveRequests.getServiceInstanceId());
161 requestMap.put("serviceInstanceId", values);
163 values = new ArrayList<>();
164 values.add("EQUALS");
165 values.add(infraActiveRequests.getServiceInstanceName());
166 requestMap.put("serviceInstanceName", values);
168 HttpEntity<Map<String, List<String>>> entityList = new HttpEntity(requestMap, headers);
169 UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(createURLWithPort("/infraActiveRequests") + "/getOrchestrationFiltersFromInfraActive");
171 ResponseEntity<List<InfraActiveRequests>> response = restTemplate.exchange(
172 builder.toUriString(),
173 HttpMethod.POST, entityList, new ParameterizedTypeReference<List<InfraActiveRequests>>() {
176 List<InfraActiveRequests> iarr = response.getBody();
178 assertEquals(200, response.getStatusCodeValue());
180 assertTrue(iarr.size() == 1);
181 infraActiveRequestsResponse = iarr.get(0);
183 verifyInfraActiveRequests();
187 public void checkVnfIdStatusTest() {
190 UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(createURLWithPort("/infraActiveRequests" + "/checkVnfIdStatus/" + infraActiveRequests.getOperationalEnvId()));
191 HttpEntity<String> entity = new HttpEntity(HttpEntity.EMPTY, headers);
193 ResponseEntity<InfraActiveRequests> response = restTemplate.exchange(
194 builder.toUriString(),
195 HttpMethod.GET,entity , InfraActiveRequests.class);
197 infraActiveRequestsResponse = response.getBody();
199 assertEquals(200, response.getStatusCodeValue());
201 verifyInfraActiveRequests();
205 public void checkInstanceNameDuplicateTest() {
207 InstanceNameDuplicateCheckRequest instanceNameDuplicateCheckRequest = new InstanceNameDuplicateCheckRequest((HashMap<String, String>) null,
208 infraActiveRequests.getOperationalEnvName(),
209 infraActiveRequests.getRequestScope());
211 HttpEntity<InstanceNameDuplicateCheckRequest> entityList = new HttpEntity(instanceNameDuplicateCheckRequest, headers);
212 UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(createURLWithPort("/infraActiveRequests") + "/checkInstanceNameDuplicate");
214 ResponseEntity<InfraActiveRequests> response = restTemplate.exchange(
215 builder.toUriString(),
216 HttpMethod.POST, entityList, new ParameterizedTypeReference<InfraActiveRequests>() {
219 infraActiveRequestsResponse = response.getBody();
221 assertEquals(200, response.getStatusCodeValue());
223 verifyInfraActiveRequests();
227 public void checkInstanceNameDuplicateViaTest() {
229 Map<String, String> requestMap = new HashMap<>();
230 requestMap.put("operationalEnvironmentId", infraActiveRequests.getOperationalEnvId());
232 InstanceNameDuplicateCheckRequest instanceNameDuplicateCheckRequest = new InstanceNameDuplicateCheckRequest((HashMap<String, String>) requestMap,
234 infraActiveRequests.getRequestScope());
236 HttpEntity<InstanceNameDuplicateCheckRequest> entityList = new HttpEntity(instanceNameDuplicateCheckRequest, headers);
237 UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(createURLWithPort("/infraActiveRequests") + "/checkInstanceNameDuplicate");
239 ResponseEntity<InfraActiveRequests> response = restTemplate.exchange(
240 builder.toUriString(),
241 HttpMethod.POST, entityList, new ParameterizedTypeReference<InfraActiveRequests>() {
244 infraActiveRequestsResponse = response.getBody();
246 assertEquals(200, response.getStatusCodeValue());
248 verifyInfraActiveRequests();