2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (c) 2019 Samsung. 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.vfc.rest;
23 import org.junit.Test;
24 import org.junit.runner.RunWith;
25 import org.mockito.InjectMocks;
26 import org.mockito.Mock;
27 import org.mockito.Spy;
28 import org.mockito.junit.MockitoJUnitRunner;
29 import org.onap.so.adapters.vfc.constant.CommonConstant;
30 import org.onap.so.adapters.vfc.model.NSResourceInputParameter;
31 import org.onap.so.adapters.vfc.model.NsOperationKey;
32 import org.onap.so.adapters.vfc.model.NsParameters;
33 import org.onap.so.adapters.vfc.model.NsScaleParameters;
34 import org.onap.so.adapters.vfc.model.RestfulResponse;
35 import org.onap.so.adapters.vfc.util.RestfulUtil;
36 import org.onap.so.db.request.beans.ResourceOperationStatus;
37 import org.onap.so.db.request.data.repository.ResourceOperationStatusRepository;
38 import org.springframework.http.HttpStatus;
39 import static org.junit.Assert.*;
40 import static org.mockito.ArgumentMatchers.any;
41 import static org.mockito.Mockito.when;
43 @RunWith(MockitoJUnitRunner.class)
44 public class VfcManagerTest {
47 private ResourceOperationStatusRepository resourceOperationStatusRepository;
50 private RestfulUtil restfulUtil;
54 private VfcManager vfcManager;
57 public void createNs() throws Exception {
59 NSResourceInputParameter segInput = new NSResourceInputParameter();
60 segInput.setNsOperationKey(new NsOperationKey());
62 RestfulResponse restfulResponse = new RestfulResponse();
63 restfulResponse.setStatus(HttpStatus.OK.value());
64 restfulResponse.setResponseContent("{\"" + CommonConstant.NS_INSTANCE_ID + "\": \"someNsInstanceId\"}");
65 when(restfulUtil.send(any(), any(), any())).thenReturn(restfulResponse);
67 RestfulResponse response = vfcManager.createNs(segInput);
68 assertEquals(HttpStatus.OK.value(), restfulResponse.getStatus());
72 public void deleteNs() throws Exception {
74 RestfulResponse restfulResponse = new RestfulResponse();
75 restfulResponse.setStatus(HttpStatus.OK.value());
76 restfulResponse.setResponseContent("{\"" + CommonConstant.NS_INSTANCE_ID + "\": \"someNsInstanceId\"}");
77 when(restfulUtil.send(any(), any(), any())).thenReturn(restfulResponse);
79 NsOperationKey nsOperationKey = new NsOperationKey();
81 RestfulResponse response = vfcManager.deleteNs(nsOperationKey, "someNsInstanceId");
82 assertEquals(HttpStatus.OK.value(), restfulResponse.getStatus());
86 public void instantiateNs() throws Exception {
88 RestfulResponse restfulResponse = new RestfulResponse();
89 restfulResponse.setStatus(HttpStatus.OK.value());
90 restfulResponse.setResponseContent("{\"" + CommonConstant.JOB_ID + "\": \"someJobId\"}");
91 when(restfulUtil.send(any(), any(), any())).thenReturn(restfulResponse);
93 NsParameters nsParameters = new NsParameters();
94 NSResourceInputParameter segInput = new NSResourceInputParameter();
95 segInput.setNsParameters(nsParameters);
96 segInput.setNsOperationKey(new NsOperationKey());
98 RestfulResponse response = vfcManager.instantiateNs("someNsInstanceId", segInput);
99 assertEquals(HttpStatus.OK.value(), restfulResponse.getStatus());
103 public void terminateNs() throws Exception {
105 NsOperationKey nsOperationKey = new NsOperationKey();
107 RestfulResponse restfulResponse = new RestfulResponse();
108 restfulResponse.setStatus(HttpStatus.OK.value());
109 restfulResponse.setResponseContent("{\"" + CommonConstant.JOB_ID + "\": \"someJobId\"}");
110 when(restfulUtil.send(any(), any(), any())).thenReturn(restfulResponse);
112 RestfulResponse response = vfcManager.terminateNs(nsOperationKey, "someNsInstanceId");
113 assertEquals(HttpStatus.OK.value(), response.getStatus());
117 public void getNsProgress() throws Exception {
119 NsOperationKey nsOperationKey = new NsOperationKey();
120 ResourceOperationStatus resourceOperationStatus = new ResourceOperationStatus();
122 RestfulResponse restfulResponse = new RestfulResponse();
123 restfulResponse.setStatus(HttpStatus.OK.value());
124 restfulResponse.setResponseContent(
125 "{\"" + CommonConstant.JOB_ID + "\": \"someJobId\", " + "\"responseDescriptor\" : {}}");
126 when(restfulUtil.send(any(), any(), any())).thenReturn(restfulResponse);
128 when(resourceOperationStatusRepository.findOne(any()))
129 .thenReturn(java.util.Optional.ofNullable(resourceOperationStatus));
131 RestfulResponse response = vfcManager.getNsProgress(nsOperationKey, "someJobId");
132 assertEquals(HttpStatus.OK.value(), response.getStatus());
136 public void scaleNs() throws Exception {
138 ResourceOperationStatus resourceOperationStatus = new ResourceOperationStatus();
139 NSResourceInputParameter segInput = new NSResourceInputParameter();
140 NsScaleParameters nsScaleParameters = new NsScaleParameters();
141 segInput.setNsScaleParameters(nsScaleParameters);
143 RestfulResponse restfulResponse = new RestfulResponse();
144 restfulResponse.setStatus(HttpStatus.OK.value());
145 segInput.setNsOperationKey(new NsOperationKey());
146 restfulResponse.setResponseContent("{\"" + CommonConstant.JOB_ID + "\": \"someJobId\"}");
147 when(restfulUtil.send(any(), any(), any())).thenReturn(restfulResponse);
149 when(resourceOperationStatusRepository.findOne(any()))
150 .thenReturn(java.util.Optional.ofNullable(resourceOperationStatus));
152 RestfulResponse response = vfcManager.scaleNs("someNsInstanceId", segInput);
153 assertEquals(HttpStatus.OK.value(), restfulResponse.getStatus());