2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.
6 * Modifications Copyright (C) 2018 - 2019 Nokia. All rights reserved.
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END=========================================================
21 package org.onap.vid.mso.rest;
23 import io.joshworks.restclient.http.HttpResponse;
24 import io.joshworks.restclient.http.JsonMapper;
25 import org.apache.http.ProtocolVersion;
26 import org.apache.http.StatusLine;
27 import org.apache.http.message.BasicHttpResponse;
28 import org.apache.http.message.BasicStatusLine;
29 import org.mockito.Mock;
30 import org.onap.portalsdk.core.util.SystemProperties;
31 import org.onap.vid.changeManagement.RequestDetailsWrapper;
32 import org.onap.vid.client.SyncRestClient;
33 import org.onap.vid.controller.LocalWebConfig;
34 import org.onap.vid.model.RequestReferencesContainer;
35 import org.onap.vid.mso.MsoResponseWrapper;
36 import org.onap.vid.mso.MsoResponseWrapperInterface;
37 import org.onap.vid.mso.MsoUtil;
38 import org.onap.vid.mso.RestObject;
39 import org.onap.vid.mso.model.RequestReferences;
40 import org.springframework.test.context.ContextConfiguration;
41 import org.springframework.test.context.web.WebAppConfiguration;
42 import org.testng.annotations.BeforeClass;
43 import org.testng.annotations.Test;
45 import static org.mockito.ArgumentMatchers.any;
47 import static org.assertj.core.api.Assertions.assertThat;
48 import static org.mockito.ArgumentMatchers.anyMap;
49 import static org.mockito.ArgumentMatchers.eq;
50 import static org.mockito.Mockito.when;
51 import static org.mockito.MockitoAnnotations.initMocks;
54 @ContextConfiguration(classes = {LocalWebConfig.class, SystemProperties.class})
56 public class MsoRestClientTest {
59 private final String baseUrl = "http://testURL/";
62 private SyncRestClient client;
64 private MsoRestClientNew restClient;
70 restClient = new MsoRestClientNew(client,baseUrl,null);
75 public void shouldProperlyCreateServiceInstance() {
77 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
79 String endpoint = "testEndpoint";
80 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
81 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
83 when( client.post( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
86 MsoResponseWrapper response = restClient.createSvcInstance(requestDetails,endpoint);
89 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
92 @Test( expectedExceptions = MsoTestException.class)
93 public void shouldThrowExceptionWhenCreateSvcInstanceGetsWrongParameters() {
97 when( client.post( eq(baseUrl+endpoint),anyMap(),eq(null),eq(String.class) ) ).
98 thenThrow(new MsoTestException("test-post-exception"));
101 restClient.createSvcInstance(null,endpoint);
105 public void shouldProperlyCreateE2eSvcInstance() {
107 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
109 String endpoint = "testEndpoint";
110 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
111 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
113 when( client.post( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
116 MsoResponseWrapper response = restClient.createE2eSvcInstance(requestDetails,endpoint);
119 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
123 public void shouldProperlyCreateVnf() {
125 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
127 String endpoint = "testEndpoint";
128 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
129 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
131 when( client.post( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
134 MsoResponseWrapper response = restClient.createVnf(requestDetails,endpoint);
137 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
141 public void shouldProperlyCreateNwInstance() {
143 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
145 String endpoint = "testEndpoint";
146 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
147 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
149 when( client.post( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
152 MsoResponseWrapper response = restClient.createNwInstance(requestDetails,endpoint);
155 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
159 public void shouldProperlyCreateVolumeGroupInstance() {
161 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
163 String endpoint = "testEndpoint";
164 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
165 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
167 when( client.post( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
170 MsoResponseWrapper response = restClient.createVolumeGroupInstance(requestDetails,endpoint);
173 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
177 public void shouldProperlyCreateVfModuleInstance() {
179 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
181 String endpoint = "testEndpoint";
182 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
183 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
185 when( client.post( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
188 MsoResponseWrapper response = restClient.createVfModuleInstance(requestDetails,endpoint);
191 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
195 public void shouldProperlyScaleOutVFModuleInstance() {
197 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
199 RequestDetailsWrapper<RequestDetails> wrappedRequestDetails = new RequestDetailsWrapper<>(requestDetails);
200 String endpoint = "testEndpoint";
201 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
202 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
204 when( client.post( eq(baseUrl+endpoint),anyMap(),eq(wrappedRequestDetails),eq(String.class) ) ).thenReturn(httpResponse);
207 MsoResponseWrapper response = restClient.scaleOutVFModuleInstance(wrappedRequestDetails,endpoint);
210 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
214 public void shouldProperlyCreateConfigurationInstance() {
216 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
218 org.onap.vid.mso.rest.RequestDetailsWrapper wrappedRequestDetails = new org.onap.vid.mso.rest.RequestDetailsWrapper(requestDetails);
219 String endpoint = "testEndpoint";
220 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
221 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
223 when( client.post( eq(baseUrl+endpoint),anyMap(),eq(wrappedRequestDetails),eq(String.class) ) ).thenReturn(httpResponse);
226 MsoResponseWrapper response = restClient.createConfigurationInstance(wrappedRequestDetails,endpoint);
229 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
233 public void shouldProperlyDeleteE2eSvcInstance() {
235 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
237 org.onap.vid.mso.rest.RequestDetailsWrapper wrappedRequestDetails = new org.onap.vid.mso.rest.RequestDetailsWrapper(requestDetails);
238 String endpoint = "testEndpoint";
239 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
240 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
242 when( client.delete( eq(baseUrl+endpoint),anyMap(),eq(wrappedRequestDetails),eq(String.class) ) ).thenReturn(httpResponse);
245 MsoResponseWrapper response = restClient.deleteE2eSvcInstance(wrappedRequestDetails,endpoint);
248 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
252 public void shouldProperlyDeleteSvcInstance() {
254 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
256 String endpoint = "testEndpoint";
257 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
258 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
260 when( client.delete( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
263 MsoResponseWrapper response = restClient.deleteSvcInstance(requestDetails,endpoint);
266 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
270 public void shouldProperlyUnassignSvcInstance() {
272 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
274 String endpoint = "testEndpoint";
275 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
276 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
278 when( client.post( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
281 MsoResponseWrapper response = restClient.unassignSvcInstance(requestDetails,endpoint);
284 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
288 public void shouldProperlyDeleteVnf() {
290 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
292 String endpoint = "testEndpoint";
293 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
294 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
296 when( client.delete( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
299 MsoResponseWrapper response = restClient.deleteVnf(requestDetails,endpoint);
302 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
306 public void shouldProperlyDeleteVfModule() {
308 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
310 String endpoint = "testEndpoint";
311 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
312 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
314 when( client.delete( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
317 MsoResponseWrapper response = restClient.deleteVfModule(requestDetails,endpoint);
320 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
324 public void shouldProperlyDeleteVolumeGroupInstance() {
326 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
328 String endpoint = "testEndpoint";
329 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
330 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
332 when( client.delete( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
335 MsoResponseWrapper response = restClient.deleteVolumeGroupInstance(requestDetails,endpoint);
338 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
342 public void shouldProperlyDeleteNwInstance() {
344 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
346 String endpoint = "testEndpoint";
347 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
348 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
350 when( client.delete( eq(baseUrl+endpoint),anyMap(),eq(requestDetails),eq(String.class) ) ).thenReturn(httpResponse);
353 MsoResponseWrapper response = restClient.deleteNwInstance(requestDetails,endpoint);
356 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
360 public void shouldProperlyGetOrchestrationRequest() {
362 RestObject restObject = generateMockMsoRestObject();
364 String endpoint = "testEndpoint";
365 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
366 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
368 when( client.get( eq(baseUrl+endpoint),anyMap(),anyMap(),eq(String.class) ) ).thenReturn(httpResponse);
371 MsoResponseWrapper response = restClient.getOrchestrationRequest(null,null,endpoint,restObject,true);
374 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
378 public void shouldProperlyGetOrchestrationRequestWithOnlyEndpoint() {
380 String endpoint = "testEndpoint";
381 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
382 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
384 when( client.get( eq(baseUrl+endpoint),anyMap(),anyMap(),eq(String.class) ) ).thenReturn(httpResponse);
387 MsoResponseWrapper response = restClient.getOrchestrationRequest(endpoint);
390 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
394 public void shouldProperlyGetManualTasks() {
396 String endpoint = "testEndpoint";
397 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
398 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
400 when( client.get( eq(baseUrl+endpoint),anyMap(),anyMap(),eq(String.class) ) ).thenReturn(httpResponse);
403 MsoResponseWrapper response = restClient.getManualTasks(endpoint);
406 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
410 public void shouldProperlyGetManualTasksByRequestId() {
412 RestObject restObject = generateMockMsoRestObject();
414 String endpoint = "testEndpoint";
415 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
416 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
418 /// WUT 'baseUrl+baseUrl+endpoint'
419 when( client.get( eq(baseUrl+baseUrl+endpoint),anyMap(),anyMap(),eq(String.class) ) ).thenReturn(httpResponse);
422 MsoResponseWrapper response = restClient.getManualTasksByRequestId(null,null,endpoint,restObject);
425 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
428 @Test(expectedExceptions = MsoTestException.class)
429 public void shouldThrowExceptionWhenGetManualTasksByRequestIdGetsWrongParameter() {
431 when( client.get( eq(baseUrl+baseUrl),anyMap(),anyMap(),eq(String.class) ) ).thenThrow(new MsoTestException("testsException"));
434 restClient.getManualTasksByRequestId(null,null,"",null);
438 public void shouldProperlyCompleteManualTask() {
440 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
441 RestObject restObject = generateMockMsoRestObject();
443 String endpoint = "testEndpoint";
444 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
445 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
447 when( client.post( eq(baseUrl+endpoint), anyMap(), eq(requestDetails), eq(String.class) ) ).thenReturn(httpResponse);
450 MsoResponseWrapper response = restClient.completeManualTask(requestDetails,null,null,endpoint,restObject);
453 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
456 @Test(expectedExceptions = MsoTestException.class)
457 public void shouldThrowExceptionWhenCompleteManualTaskWrongParameter() {
459 when( client.post( eq(baseUrl),anyMap(),eq(null), eq(String.class) ) ).thenThrow(new MsoTestException("testsException"));
462 restClient.completeManualTask(null, null,null,"",null);
466 public void shouldProperlyReplaceVnf() {
468 org.onap.vid.changeManagement.RequestDetails requestDetails = MsoRestClientTestUtil.generateChangeManagementMockMsoRequest();
470 String endpoint = "testEndpoint";
471 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
472 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
474 when( client.post( eq(baseUrl+endpoint), anyMap(), any(RequestDetailsWrapper.class), eq(String.class) ) ).thenReturn(httpResponse);
477 MsoResponseWrapper response = restClient.replaceVnf(requestDetails,endpoint);
480 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
484 public void shouldProperlyReplaceVnfWithStatus202() {
486 org.onap.vid.changeManagement.RequestDetails requestDetails = MsoRestClientTestUtil.generateChangeManagementMockMsoRequest();
488 String endpoint = "testEndpoint";
489 HttpResponse<String> httpResponse = createOkResponse();
490 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
492 when( client.post( eq(baseUrl+endpoint), anyMap(), any(RequestDetailsWrapper.class), eq(String.class) ) ).thenReturn(httpResponse);
495 MsoResponseWrapper response = restClient.replaceVnf(requestDetails,endpoint);
498 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
501 @Test( expectedExceptions = MsoTestException.class)
502 public void shouldThrowExceptionWhenReplaceVnfGetsWrongParameters() {
504 org.onap.vid.changeManagement.RequestDetails requestDetails = MsoRestClientTestUtil.generateChangeManagementMockMsoRequest();
506 when( client.post( eq(baseUrl), anyMap(), any(RequestDetailsWrapper.class), eq(String.class) ) ).thenThrow(new MsoTestException("test-post-exception"));
509 restClient.replaceVnf(requestDetails, "");
513 public void shouldProperlyDeleteConfiguration() {
515 org.onap.vid.changeManagement.RequestDetails requestDetails = MsoRestClientTestUtil.generateChangeManagementMockMsoRequest();
516 org.onap.vid.mso.rest.RequestDetailsWrapper requestDetailsWrapper = new org.onap.vid.mso.rest.RequestDetailsWrapper(requestDetails);
518 String endpoint = "testEndpoint";
519 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
520 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
522 when( client.delete( eq(baseUrl+endpoint), anyMap(), eq(requestDetailsWrapper), eq(String.class) ) ).thenReturn(httpResponse);
525 MsoResponseWrapper response = restClient.deleteConfiguration(requestDetailsWrapper,endpoint);
528 assertThat(response).isEqualToComparingFieldByField(expectedResponse);
531 @Test( expectedExceptions = MsoTestException.class )
532 public void shouldThrowExceptionWhenProperlyDeleteConfigurationGetsWrongParameters() {
534 when( client.delete( eq(baseUrl), anyMap(), eq(null), eq(String.class) ) ).thenThrow(new MsoTestException("test-delete-exception"));
537 restClient.deleteConfiguration(null,"");
541 public void shouldProperlySetConfigurationActiveStatus() {
543 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
545 String endpoint = "testEndpoint";
546 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
547 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
549 when(client.post(eq(baseUrl + endpoint), anyMap(), eq(requestDetails), eq(String.class))).thenReturn(httpResponse);
552 MsoResponseWrapper response = restClient.setConfigurationActiveStatus(requestDetails, endpoint);
555 assertThat(expectedResponse).isEqualToComparingFieldByField(response);
558 @Test(expectedExceptions = MsoTestException.class)
559 public void shouldThrowExceptionWhenSetConfigurationActiveStatusGetsWrongParameters() {
562 when(client.post(eq(baseUrl), anyMap(), eq(null), eq(String.class))).thenThrow(new MsoTestException("test-post-exception"));
565 restClient.setConfigurationActiveStatus(null, "");
569 public void shouldProperlySetPortOnConfigurationStatus() {
571 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
573 String endpoint = "testEndpoint";
574 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
575 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
577 when(client.post(eq(baseUrl + endpoint), anyMap(), eq(requestDetails), eq(String.class))).thenReturn(httpResponse);
580 MsoResponseWrapper response = restClient.setPortOnConfigurationStatus(requestDetails, endpoint);
583 assertThat(expectedResponse).isEqualToComparingFieldByField(response);
586 @Test(expectedExceptions = MsoTestException.class)
587 public void shouldThrowExceptionWhenSetPortOnConfigurationStatusGetsWrongParameters() {
589 String endpoint = "";
591 when(client.post(eq(baseUrl), anyMap(), eq(null), eq(String.class))).thenThrow(new MsoTestException("test-post-exception"));
594 restClient.setPortOnConfigurationStatus(null, endpoint);
598 public void shouldProperlyChangeManagementUpdate() {
600 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
601 RequestDetailsWrapper<RequestDetails> requestDetailsWrapper = new RequestDetailsWrapper<>(requestDetails);
603 String endpoint = "testEndpoint";
604 HttpResponse<RequestReferencesContainer> httpResponse = HttpResponse.fallback(
605 new RequestReferencesContainer(
606 new RequestReferences()));
608 MsoResponseWrapperInterface expectedResponse = MsoUtil.wrapResponse(httpResponse);
610 when(client.post(eq(baseUrl + endpoint), anyMap(), eq(requestDetailsWrapper), eq(RequestReferencesContainer.class))).thenReturn(httpResponse);
613 MsoResponseWrapperInterface response = restClient.changeManagementUpdate(requestDetailsWrapper, endpoint);
616 assertThat(expectedResponse).isEqualToComparingFieldByField(response);
620 public void shouldProperlyUpdateVnfAndUpdateInstance() {
622 org.onap.vid.changeManagement.RequestDetails requestDetails = MsoRestClientTestUtil.generateChangeManagementMockMsoRequest();
624 String endpoint = "testEndpoint";
625 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
626 MsoResponseWrapperInterface expectedResponse = MsoUtil.wrapResponse(httpResponse);
629 when(client.put(eq(baseUrl + endpoint), anyMap(), any(RequestDetailsWrapper.class), eq(String.class))).thenReturn(httpResponse);
632 MsoResponseWrapperInterface response = restClient.updateVnf(requestDetails, endpoint);
635 assertThat(expectedResponse).isEqualToComparingFieldByField(response);
638 @Test( expectedExceptions = MsoTestException.class )
639 public void shouldThrowExceptionWhenUpdateVnfAndUpdateInstanceGetsWrongParameter() {
641 org.onap.vid.changeManagement.RequestDetails requestDetails = MsoRestClientTestUtil.generateChangeManagementMockMsoRequest();
642 String endpoint = "";
644 when(client.put(eq(baseUrl), anyMap(), any(RequestDetailsWrapper.class), eq(String.class))).thenThrow(new MsoTestException("test-post-exception"));
647 restClient.updateVnf(requestDetails, endpoint);
653 public void shouldProperlySetServiceInstanceStatus() {
655 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
656 RestObject<String> restObject = generateMockMsoRestObject();
658 String endpoint = "testEndpoint";
659 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
661 when(client.post(eq(baseUrl + endpoint), anyMap(), eq(requestDetails), eq(String.class))).thenReturn(httpResponse);
664 restClient.setServiceInstanceStatus(requestDetails,"", "", endpoint, restObject);
667 @Test( expectedExceptions = MsoTestException.class)
668 public void shouldThrowExceptionWhenSetServiceInstanceStatusGetsWrongParameter() {
670 String endpoint = "";
672 when(client.post(eq(baseUrl), anyMap(), eq(null), eq(String.class))).thenThrow(new MsoTestException("test-post-exception"));
675 restClient.setServiceInstanceStatus(null,"", "", endpoint, null);
679 public void shouldProperlyRemoveRelationshipFromServiceInstance() {
681 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
683 String endpoint = "testEndpoint";
684 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
685 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
687 when(client.post(eq(baseUrl + endpoint), anyMap(), eq(requestDetails), eq(String.class))).thenReturn(httpResponse);
690 MsoResponseWrapper response = restClient.removeRelationshipFromServiceInstance(requestDetails, endpoint);
693 assertThat(expectedResponse).isEqualToComparingFieldByField(response);
696 @Test( expectedExceptions = MsoTestException.class)
697 public void shouldThrowExceptionWhenRemoveRelationshipFromServiceInstanceGetsWrongParameter() {
699 String endpoint = "";
701 when(client.post(eq(baseUrl), anyMap(), eq(null), eq(String.class))).thenThrow(new MsoTestException("test-post-exception"));
704 restClient.removeRelationshipFromServiceInstance(null,endpoint);
708 public void shouldProperlyAddRelationshipToServiceInstance() {
710 RequestDetails requestDetails = MsoRestClientTestUtil.generateMockMsoRequest();
712 String endpoint = "testEndpoint";
713 HttpResponse<String> httpResponse = HttpResponse.fallback("testOkResponse");
714 MsoResponseWrapper expectedResponse = MsoUtil.wrapResponse(httpResponse);
716 when(client.post(eq(baseUrl + endpoint), anyMap(), eq(requestDetails), eq(String.class))).thenReturn(httpResponse);
719 MsoResponseWrapper response = restClient.addRelationshipToServiceInstance(requestDetails, endpoint);
722 assertThat(expectedResponse).isEqualToComparingFieldByField(response);
725 @Test( expectedExceptions = MsoTestException.class)
726 public void shouldThrowExceptionWhenAddRelationshipToServiceInstanceGetsWrongParameter() {
728 String endpoint = "";
730 when(client.post(eq(baseUrl), anyMap(), eq(null), eq(String.class))).thenThrow(new MsoTestException("test-post-exception"));
733 restClient.addRelationshipToServiceInstance(null,endpoint);
737 public void shouldProperlyPerformGetRequest() {
739 String endpoint = "testEndpoint";
740 HttpResponse<String> expectedResponse = HttpResponse.fallback("testOkResponse");
742 when(client.get(eq(baseUrl + endpoint), anyMap(), anyMap(), eq(String.class))).thenReturn(expectedResponse);
745 HttpResponse<String> response = restClient.get(endpoint, String.class);
748 assertThat(expectedResponse).isEqualToComparingFieldByField(response);
752 public void shouldProperlyPerformPostRequest() {
755 RequestDetailsWrapper<RequestDetails> requestDetailsWrapper = new RequestDetailsWrapper<>(MsoRestClientTestUtil.generateMockMsoRequest());
757 String endpoint = "testEndpoint";
758 HttpResponse<String> expectedResponse = HttpResponse.fallback("testOkResponse");
760 when(client.post(eq(baseUrl + endpoint), anyMap(), eq(requestDetailsWrapper), eq(String.class))).thenReturn(expectedResponse);
763 HttpResponse<String> response = restClient.post(endpoint,requestDetailsWrapper, String.class);
766 assertThat(expectedResponse).isEqualToComparingFieldByField(response);
769 private class MsoTestException extends RuntimeException{
770 MsoTestException(String testException) {
771 super(testException);
775 private HttpResponse<String> createOkResponse() {
776 StatusLine statusline = new BasicStatusLine(
777 new ProtocolVersion("http",1,1), 202, "acceptResponse");
779 org.apache.http.HttpResponse responseBase = new BasicHttpResponse(statusline);
781 return new HttpResponse<>(responseBase ,String.class, new JsonMapper());
784 private RestObject<String> generateMockMsoRestObject() {
785 RestObject<String> restObject = new RestObject<>();
787 restObject.set("test-rest-object-body");
788 restObject.setRaw("test-rest-object-raw-string");
789 restObject.setStatusCode(202);