2 * Copyright 2016-2017 Huawei Technologies Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.process;
19 import static org.junit.Assert.assertEquals;
20 import static org.junit.Assert.assertNotNull;
24 import org.junit.Before;
25 import org.junit.Test;
26 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.common.ResultRequestUtil;
27 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.common.VnfmUtil;
28 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.common.restclient.ServiceException;
29 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.adapter.impl.AdapterResourceManager;
30 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.constant.Constant;
31 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.csm.vnf.VnfMgrVnfm;
32 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.dao.impl.VnfmDaoImpl;
33 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.dao.inf.VnfmDao;
34 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.entity.Vnfm;
38 import net.sf.json.JSONArray;
39 import net.sf.json.JSONException;
40 import net.sf.json.JSONObject;
42 public class VnfMgrTest {
44 private VnfmDao vnfmDao;
46 private VnfMgr vnfMgr;
50 vnfMgr = new VnfMgr();
51 vnfmDao = new VnfmDaoImpl();
52 vnfMgr.setVnfmDao(vnfmDao);
56 public void testAddVnfByInvalidateDataVnfInfoNull() {
58 JSONObject subJsonObject = JSONObject.fromObject(data);
59 VnfMgr vnfMgr = new VnfMgr();
60 JSONObject result = vnfMgr.addVnf(subJsonObject, "vnmfId");
62 JSONObject restJson = new JSONObject();
63 restJson.put("retCode", Constant.REST_FAIL);
64 assertEquals(restJson, result);
68 public void testAddVnfByInvalidateDataVnfInfoEmpty() {
70 JSONObject subJsonObject = JSONObject.fromObject(data);
71 VnfMgr vnfMgr = new VnfMgr();
72 JSONObject result = vnfMgr.addVnf(subJsonObject, "vnmfId");
74 JSONObject restJson = new JSONObject();
75 restJson.put("retCode", Constant.REST_FAIL);
76 assertEquals(restJson, result);
80 public void testAddVnfByVnfmObjcetIsNullObject() {
81 new MockUp<VnfmUtil>() {
84 public JSONObject getVnfmById(String vnfmId) {
85 return new JSONObject(true);
89 "{\"soId\": \"soId\",\"vapp_info\":{\"vnfm_id\":\"vnfm_id\",\"soId\": \"soId\",\"do_id\": \"do_id\"}}";
90 JSONObject subJsonObject = JSONObject.fromObject(data);
91 VnfMgr vnfMgr = new VnfMgr();
92 JSONObject result = vnfMgr.addVnf(subJsonObject, "vnmfId");
94 JSONObject restJson = new JSONObject();
95 restJson.put("retCode", Constant.REST_FAIL);
96 assertEquals(restJson, result);
100 public void testAddVnfByVnfmObjcetTypeEmpty() {
101 new MockUp<VnfmUtil>() {
104 public JSONObject getVnfmById(String vnfmId) {
105 JSONObject obj = new JSONObject();
111 "{\"soId\": \"soId\",\"vapp_info\":{\"vnfm_id\":\"vnfm_id\",\"soId\": \"soId\",\"do_id\": \"do_id\"}}";
112 JSONObject subJsonObject = JSONObject.fromObject(data);
113 VnfMgr vnfMgr = new VnfMgr();
114 JSONObject result = vnfMgr.addVnf(subJsonObject, "vnmfId");
116 JSONObject restJson = new JSONObject();
117 restJson.put("retCode", Constant.REST_FAIL);
118 assertEquals(restJson, result);
122 public void testAddVnf() {
123 new MockUp<VnfmUtil>() {
126 public JSONObject getVnfmById(String vnfmId) {
127 JSONObject obj = new JSONObject();
128 obj.put("type", "hw");
129 obj.put("vnfmId", "123");
130 obj.put("userName", "admin");
131 obj.put("password", "admin");
132 obj.put("url", "https://10.2.31.2:30001");
137 new MockUp<VnfMgrVnfm>() {
140 public JSONObject createVnf(JSONObject subJsonObject, JSONObject vnfmObjcet) {
141 JSONObject restJson = new JSONObject();
142 restJson.put("retCode", Constant.REST_SUCCESS);
147 new MockUp<AdapterResourceManager>() {
150 public JSONObject uploadVNFPackage(JSONObject subJsonObject, Map<String, String> conMap) {
151 JSONObject restJson = new JSONObject();
152 restJson.put("retCode", Constant.REST_SUCCESS);
153 restJson.put("vnfdId", "123");
159 "{\"vnfPackageId\": \"vnfPackageId\",\"vnfId\": \"vnfId\",\"additionalParam\":{\"parameters\":{\"input\":\"input\"}}}";
160 JSONObject subJsonObject = JSONObject.fromObject(data);
161 VnfMgr vnfMgr = new VnfMgr();
162 JSONObject result = vnfMgr.addVnf(subJsonObject, "vnfmId");
164 JSONObject restJson = new JSONObject();
165 restJson.put("retCode", Constant.REST_FAIL);
166 assertEquals(restJson, result);
170 public void testDeleteVnf() {
171 new MockUp<VnfmUtil>() {
174 public JSONObject getVnfmById(String vnfmId) {
175 JSONObject obj = new JSONObject();
176 obj.put("type", "hw");
177 obj.put("vnfmId", "123");
178 obj.put("userName", "admin");
179 obj.put("password", "admin");
180 obj.put("url", "https://10.2.31.2:30001");
184 new MockUp<VnfMgrVnfm>() {
187 public JSONObject removeVnf(JSONObject vnfmObject, String vnfId, JSONObject vnfObject) {
188 JSONObject obj = new JSONObject();
189 obj.put("retCode", Constant.REST_SUCCESS);
193 VnfMgr vnfMgr = new VnfMgr();
194 JSONObject vnfObject = new JSONObject();
195 JSONObject result = vnfMgr.deleteVnf("vnfId", "vnfmId", vnfObject);
197 JSONObject restJson = new JSONObject();
198 restJson.put("retCode", Constant.REST_SUCCESS);
199 assertEquals(restJson, result);
203 public void testDeleteVnfByVnfmObjcetIsNullObject() {
204 new MockUp<VnfmUtil>() {
207 public JSONObject getVnfmById(String vnfmId) {
208 JSONObject obj = new JSONObject(true);
212 VnfMgr vnfMgr = new VnfMgr();
213 JSONObject vnfObject = new JSONObject();
214 JSONObject result = vnfMgr.deleteVnf("vnfId", "vnfmId", vnfObject);
216 JSONObject restJson = new JSONObject();
217 restJson.put("retCode", Constant.REST_FAIL);
218 assertEquals(restJson, result);
223 public void testDeleteVnfByException() {
224 new MockUp<VnfmUtil>() {
227 public JSONObject getVnfmById(String vnfmId) {
228 throw new JSONException();
231 VnfMgr vnfMgr = new VnfMgr();
232 JSONObject vnfObject = new JSONObject();
233 JSONObject result = vnfMgr.deleteVnf("vnfId", "vnfmId", vnfObject);
235 JSONObject restJson = new JSONObject();
236 restJson.put("retCode", Constant.REST_FAIL);
237 assertEquals(restJson, result);
242 public void testGetVnf() {
243 new MockUp<VnfmUtil>() {
246 public JSONObject getVnfmById(String vnfmId) {
247 JSONObject obj = new JSONObject();
248 obj.put("type", "hw");
249 obj.put("vnfmId", "123");
250 obj.put("userName", "admin");
251 obj.put("password", "admin");
252 obj.put("url", "https://127.0.0.1:30001");
257 new MockUp<VnfmDaoImpl>() {
260 public Vnfm getVnfmById(String vnfmId) {
261 Vnfm obj = new Vnfm();
263 obj.setVersion("v2.0");
264 obj.setVnfdId("234");
265 obj.setVnfPackageId("123");
270 new MockUp<ResultRequestUtil>() {
273 public JSONObject call(JSONObject vnfmObjcet, String path, String methodName, String paramsJson) {
274 JSONObject resultJson = new JSONObject();
275 resultJson.put("retCode", Constant.HTTP_OK);
276 JSONObject data = new JSONObject();
278 JSONArray result = new JSONArray();
279 JSONObject basicInfo = new JSONObject();
280 basicInfo.put("id", "NE=345");
281 basicInfo.put("vapp_name", "sc");
282 basicInfo.put("status", "active");
283 result.add(basicInfo);
284 data.put("basic", result);
285 resultJson.put("data", data.toString());
290 JSONObject result = vnfMgr.getVnf("vnfId", "vnfmId");
292 JSONObject restJson = new JSONObject();
293 restJson.put("retCode", Constant.REST_SUCCESS);
294 result.remove("vnfInfo");
295 assertNotNull(result);
299 public void testGetVnfFail() {
300 new MockUp<VnfmUtil>() {
303 public JSONObject getVnfmById(String vnfmId) {
304 JSONObject obj = new JSONObject(true);
309 JSONObject result = vnfMgr.getVnf("vnfId", "vnfmId");
310 JSONObject restJson = new JSONObject();
311 restJson.put(Constant.RETCODE, Constant.REST_FAIL);
312 assertEquals(restJson, result);
316 public void testGetVnfFail1() {
317 new MockUp<VnfmUtil>() {
320 public JSONObject getVnfmById(String vnfmId) {
321 throw new JSONException();
325 JSONObject result = vnfMgr.getVnf("vnfId", "vnfmId");
326 JSONObject restJson = new JSONObject();
327 restJson.put(Constant.RETCODE, Constant.REST_FAIL);
328 assertEquals(restJson, result);
332 public void testSaveVnfInfo() {
333 new MockUp<VnfmDaoImpl>() {
336 public int insertVnfm(Vnfm vnfm) throws ServiceException {
341 VnfMgr vnfMgr = new VnfMgr();
342 VnfmDao dao = new VnfmDaoImpl();
343 vnfMgr.setVnfmDao(dao);
344 JSONObject vnfObject = new JSONObject();
345 vnfObject.put("retCode", Constant.REST_SUCCESS);
346 vnfObject.put("vnfInstanceId", "vnfInstanceId");
347 vnfObject.put("vnfPackageId", "vnfPackageId");
348 JSONObject resObject = new JSONObject();
349 resObject.put("vnfdVersion", "vnfdVersion");
350 resObject.put("vnfdId", "vnfdId");
351 JSONObject data = new JSONObject();
352 data.put("data", resObject);
353 vnfMgr.saveVnfInfo(vnfObject, data);
357 public void testSaveVnfInfoFail() {
358 new MockUp<VnfmDaoImpl>() {
361 public int insertVnfm(Vnfm vnfm) throws ServiceException {
366 VnfMgr vnfMgr = new VnfMgr();
367 VnfmDao dao = new VnfmDaoImpl();
368 vnfMgr.setVnfmDao(dao);
369 JSONObject vnfObject = new JSONObject();
370 vnfObject.put("retCode", Constant.REST_FAIL);
371 vnfObject.put("vnfInstanceId", "vnfInstanceId");
372 vnfObject.put("vnfPackageId", "vnfPackageId");
373 JSONObject resObject = new JSONObject();
374 resObject.put("vnfdVersion", "vnfdVersion");
375 resObject.put("vnfdId", "vnfdId");
376 vnfMgr.saveVnfInfo(vnfObject, resObject);
380 public void testSaveVnfInfoServiceException() {
381 new MockUp<VnfmDaoImpl>() {
384 public int insertVnfm(Vnfm vnfm) throws ServiceException {
385 throw new ServiceException();
389 VnfMgr vnfMgr = new VnfMgr();
390 VnfmDao dao = new VnfmDaoImpl();
391 vnfMgr.setVnfmDao(dao);
392 JSONObject vnfObject = new JSONObject();
393 vnfObject.put("retCode", Constant.REST_SUCCESS);
394 vnfObject.put("vnfInstanceId", "vnfInstanceId");
395 vnfObject.put("vnfPackageId", "vnfPackageId");
396 JSONObject resObject = new JSONObject();
397 resObject.put("vnfdVersion", "vnfdVersion");
398 resObject.put("vnfdId", "vnfdId");
399 JSONObject data = new JSONObject();
400 data.put("data", resObject);
401 vnfMgr.saveVnfInfo(vnfObject, data);
405 public void testGetJob() {
406 new MockUp<VnfmUtil>() {
409 public JSONObject getVnfmById(String vnfmId) {
410 JSONObject obj = new JSONObject();
411 obj.put("test", "success");
416 new MockUp<VnfMgrVnfm>() {
419 public JSONObject getJob(JSONObject vnfmObject, String jobId) {
420 JSONObject res = new JSONObject();
421 res.put(Constant.RETCODE, Constant.REST_SUCCESS);
425 VnfMgr vnfMgr = new VnfMgr();
426 JSONObject result = vnfMgr.getJob("", "");
428 JSONObject restJson = new JSONObject();
429 restJson.put(Constant.RETCODE, Constant.REST_SUCCESS);
430 assertEquals(restJson, result);
434 public void testGetJobFail() {
435 new MockUp<VnfmUtil>() {
438 public JSONObject getVnfmById(String vnfmId) {
439 return new JSONObject();
442 VnfMgr vnfMgr = new VnfMgr();
443 JSONObject result = vnfMgr.getJob("", "");
445 JSONObject restJson = new JSONObject();
446 restJson.put(Constant.RETCODE, Constant.REST_FAIL);
447 assertEquals(restJson, result);
451 public void testGetJobFail1() {
452 new MockUp<VnfmUtil>() {
455 public JSONObject getVnfmById(String vnfmId) {
456 return new JSONObject(true);
459 VnfMgr vnfMgr = new VnfMgr();
460 JSONObject result = vnfMgr.getJob("", "");
462 JSONObject restJson = new JSONObject();
463 restJson.put(Constant.RETCODE, Constant.REST_FAIL);
464 assertEquals(restJson, result);
468 public void testScaleVnf() {
469 new MockUp<VnfmUtil>() {
472 public JSONObject getVnfmById(String vnfmId) {
473 JSONObject obj = new JSONObject();
474 obj.put("type", "hw");
475 obj.put("vnfmId", "123");
476 obj.put("userName", "admin");
477 obj.put("password", "admin");
478 obj.put("url", "https://10.2.31.2:30001");
483 new MockUp<VnfMgrVnfm>() {
486 public JSONObject scaleVnf(JSONObject vnfObject, JSONObject vnfmObject, String vnfmId,
487 String vnfInstanceId) {
488 JSONObject restJson = new JSONObject();
489 restJson.put("retCode", Constant.REST_SUCCESS);
495 "{\"vnfPackageId\": \"vnfPackageId\",\"vnfId\": \"vnfId\",\"additionalParam\":{\"parameters\":{\"input\":\"input\"}}}";
496 JSONObject subJsonObject = JSONObject.fromObject(data);
497 VnfMgr vnfMgr = new VnfMgr();
498 JSONObject result = vnfMgr.scaleVNF(subJsonObject, "testId", "testId");
500 JSONObject restJson = new JSONObject();
501 restJson.put("retCode", Constant.REST_SUCCESS);
502 assertEquals(restJson, result);