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;
23 import org.junit.Before;
24 import org.junit.Test;
25 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.common.ResultRequestUtil;
26 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.common.VnfmUtil;
27 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.adapter.impl.AdapterResourceManager;
28 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.constant.Constant;
29 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.csm.vnf.VnfMgrVnfm;
30 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.dao.impl.VnfmDaoImpl;
31 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.dao.inf.VnfmDao;
32 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.entity.Vnfm;
33 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.process.VnfMgr;
34 import org.openo.baseservice.remoteservice.exception.ServiceException;
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_SUCCESS);
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://10.2.31.2: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 assertEquals(restJson, 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 vnfMgr.saveVnfInfo(vnfObject, resObject);
355 public void testSaveVnfInfoFail() {
356 new MockUp<VnfmDaoImpl>() {
359 public int insertVnfm(Vnfm vnfm) throws ServiceException {
364 VnfMgr vnfMgr = new VnfMgr();
365 VnfmDao dao = new VnfmDaoImpl();
366 vnfMgr.setVnfmDao(dao);
367 JSONObject vnfObject = new JSONObject();
368 vnfObject.put("retCode", Constant.REST_FAIL);
369 vnfObject.put("vnfInstanceId", "vnfInstanceId");
370 vnfObject.put("vnfPackageId", "vnfPackageId");
371 JSONObject resObject = new JSONObject();
372 resObject.put("vnfdVersion", "vnfdVersion");
373 resObject.put("vnfdId", "vnfdId");
374 vnfMgr.saveVnfInfo(vnfObject, resObject);
378 public void testSaveVnfInfoServiceException() {
379 new MockUp<VnfmDaoImpl>() {
382 public int insertVnfm(Vnfm vnfm) throws ServiceException {
383 throw new ServiceException();
387 VnfMgr vnfMgr = new VnfMgr();
388 VnfmDao dao = new VnfmDaoImpl();
389 vnfMgr.setVnfmDao(dao);
390 JSONObject vnfObject = new JSONObject();
391 vnfObject.put("retCode", Constant.REST_SUCCESS);
392 vnfObject.put("vnfInstanceId", "vnfInstanceId");
393 vnfObject.put("vnfPackageId", "vnfPackageId");
394 JSONObject resObject = new JSONObject();
395 resObject.put("vnfdVersion", "vnfdVersion");
396 resObject.put("vnfdId", "vnfdId");
397 vnfMgr.saveVnfInfo(vnfObject, resObject);
401 public void testGetJob() {
402 new MockUp<VnfmUtil>() {
405 public JSONObject getVnfmById(String vnfmId) {
406 JSONObject obj = new JSONObject();
407 obj.put("test", "success");
412 new MockUp<VnfMgrVnfm>() {
415 public JSONObject getJob(JSONObject vnfmObject, String jobId) {
416 JSONObject res = new JSONObject();
417 res.put(Constant.RETCODE, Constant.REST_SUCCESS);
421 VnfMgr vnfMgr = new VnfMgr();
422 JSONObject result = vnfMgr.getJob("", "");
424 JSONObject restJson = new JSONObject();
425 restJson.put(Constant.RETCODE, Constant.REST_SUCCESS);
426 assertEquals(restJson, result);
430 public void testGetJobFail() {
431 new MockUp<VnfmUtil>() {
434 public JSONObject getVnfmById(String vnfmId) {
435 return new JSONObject();
438 VnfMgr vnfMgr = new VnfMgr();
439 JSONObject result = vnfMgr.getJob("", "");
441 JSONObject restJson = new JSONObject();
442 restJson.put(Constant.RETCODE, Constant.REST_FAIL);
443 assertEquals(restJson, result);
447 public void testGetJobFail1() {
448 new MockUp<VnfmUtil>() {
451 public JSONObject getVnfmById(String vnfmId) {
452 return new JSONObject(true);
455 VnfMgr vnfMgr = new VnfMgr();
456 JSONObject result = vnfMgr.getJob("", "");
458 JSONObject restJson = new JSONObject();
459 restJson.put(Constant.RETCODE, Constant.REST_FAIL);
460 assertEquals(restJson, result);
463 public void testScaleVnf() {
464 new MockUp<VnfmUtil>() {
467 public JSONObject getVnfmById(String vnfmId) {
468 JSONObject obj = new JSONObject();
469 obj.put("type", "hw");
470 obj.put("vnfmId", "123");
471 obj.put("userName", "admin");
472 obj.put("password", "admin");
473 obj.put("url", "https://10.2.31.2:30001");
478 new MockUp<VnfMgrVnfm>() {
481 public JSONObject scaleVnf(JSONObject vnfObject, JSONObject vnfmObject, String vnfmId, String vnfInstanceId) {
482 JSONObject restJson = new JSONObject();
483 restJson.put("retCode", Constant.REST_SUCCESS);
489 "{\"vnfPackageId\": \"vnfPackageId\",\"vnfId\": \"vnfId\",\"additionalParam\":{\"parameters\":{\"input\":\"input\"}}}";
490 JSONObject subJsonObject = JSONObject.fromObject(data);
491 VnfMgr vnfMgr = new VnfMgr();
492 JSONObject result = vnfMgr.scaleVNF(subJsonObject,"testId","testId");
494 JSONObject restJson = new JSONObject();
495 restJson.put("retCode", Constant.REST_SUCCESS);
496 assertEquals(restJson, result);