2 * Copyright 2016 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.csm.vnf;
19 import static org.junit.Assert.*;
21 import org.junit.Test;
22 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.common.ResultRequestUtil;
23 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.constant.Constant;
24 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.csm.vnf.VnfMgrVnfm;
28 import net.sf.json.JSONArray;
29 import net.sf.json.JSONObject;
37 * @version VFC 1.0 Aug 10, 2016
39 public class VnfMgrVnfmTest {
42 public void testCreateVnf() {
43 new MockUp<ResultRequestUtil>() {
46 public JSONObject call(JSONObject vnfmObjcet, String path, String methodName, String paramsJson) {
47 JSONObject resultJson = new JSONObject();
48 resultJson.put("retCode", Constant.HTTP_CREATED);
49 JSONObject appInfo = new JSONObject();
50 appInfo.put("vnfinstanceid", "id");
51 appInfo.put("project_id", "project_id");
52 JSONObject data = new JSONObject();
53 data.put("app_info", appInfo);
54 resultJson.put("data", data);
58 String data = "{\"vnfmInfo\":{\"url\":\"url\"}}";
59 JSONObject subJsonObject = JSONObject.fromObject(data);
60 JSONObject vnfmObjcet = new JSONObject();
61 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
62 JSONObject result = vnfMgrVnfm.createVnf(subJsonObject, vnfmObjcet);
64 assertEquals(Constant.REST_SUCCESS, result.get("retCode"));
68 public void testCreateVnfByBadRequest() {
69 new MockUp<ResultRequestUtil>() {
72 public JSONObject call(JSONObject vnfmObjcet, String path, String methodName, String paramsJson) {
73 JSONObject resultJson = new JSONObject();
74 resultJson.put("retCode", Constant.HTTP_BAD_REQUEST);
78 String data = "{\"vnfmInfo\":{\"url\":\"url\"}}";
79 JSONObject subJsonObject = JSONObject.fromObject(data);
80 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
81 JSONObject vnfmObjcet = new JSONObject();
82 JSONObject result = vnfMgrVnfm.createVnf(subJsonObject, vnfmObjcet);
84 JSONObject resultJson = new JSONObject();
85 resultJson.put("retCode", Constant.REST_FAIL);
86 assertEquals(resultJson, result);
90 public void testCreateVnfByNotFound() {
91 new MockUp<ResultRequestUtil>() {
94 public JSONObject call(JSONObject vnfmObjcet, String path, String methodName, String paramsJson) {
95 JSONObject resultJson = new JSONObject();
96 resultJson.put("retCode", Constant.HTTP_NOTFOUND);
100 String data = "{\"vnfmInfo\":{\"url\":\"url\"}}";
101 JSONObject subJsonObject = JSONObject.fromObject(data);
102 JSONObject vnfmObjcet = new JSONObject();
103 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
104 JSONObject result = vnfMgrVnfm.createVnf(subJsonObject, vnfmObjcet);
106 JSONObject resultJson = new JSONObject();
107 resultJson.put("retCode", Constant.REST_FAIL);
108 assertEquals(resultJson, result);
112 public void testCreateVnfByJSONException() {
113 new MockUp<ResultRequestUtil>() {
116 public JSONObject call(JSONObject vnfmObjcet, String path, String methodName, String paramsJson) {
117 JSONObject resultJson = new JSONObject();
121 String data = "{\"vnfmInfo\":{\"url\":\"url\"}}";
122 JSONObject subJsonObject = JSONObject.fromObject(data);
123 JSONObject vnfmObjcet = new JSONObject();
124 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
125 JSONObject result = vnfMgrVnfm.createVnf(subJsonObject, vnfmObjcet);
127 JSONObject resultJson = new JSONObject();
128 resultJson.put("retCode", Constant.REST_FAIL);
129 assertEquals(resultJson, result);
133 public void testRemoveVnf() {
134 new MockUp<ResultRequestUtil>() {
137 public JSONObject call(JSONObject vnfmObjcet, String path, String methodName, String paramsJson) {
138 JSONObject resultJson = new JSONObject();
139 resultJson.put("retCode", Constant.HTTP_NOCONTENT);
143 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
144 JSONObject vnfmObject = new JSONObject();
145 JSONObject vnfObject = new JSONObject();
146 vnfmObject.put("url", "url");
147 JSONObject result = vnfMgrVnfm.removeVnf(vnfmObject, "vnfId", vnfObject);
149 JSONObject resultJson = new JSONObject();
150 resultJson.put("retCode", Constant.REST_SUCCESS);
151 JSONObject retJson = new JSONObject();
152 retJson.put("jobId", "vnfId" + "_" + Constant.DELETE);
153 resultJson.put("data", retJson);
154 assertEquals(resultJson, result);
158 public void testRemoveVnfByCsmError() {
159 new MockUp<ResultRequestUtil>() {
162 public JSONObject call(JSONObject vnfmObjcet, String path, String methodName, String paramsJson) {
163 JSONObject resultJson = new JSONObject();
164 resultJson.put("retCode", Constant.HTTP_INNERERROR);
168 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
169 JSONObject vnfmObject = new JSONObject();
170 vnfmObject.put("url", "url");
171 JSONObject vnfObject = new JSONObject();
172 JSONObject result = vnfMgrVnfm.removeVnf(vnfmObject, "vnfId", vnfObject);
174 JSONObject resultJson = new JSONObject();
175 resultJson.put("retCode", Constant.REST_FAIL);
176 assertEquals(resultJson, result);
179 public void getJobTestNormal(){
180 new MockUp<ResultRequestUtil>(){
182 public JSONObject call(JSONObject vnfmObject, String path, String methodName, String paramsJson) {
183 JSONObject obj = new JSONObject();
184 JSONObject dataobj = new JSONObject();
185 dataobj.put("id", "2839");
186 obj.put("retCode", 200);
187 JSONArray basics = new JSONArray();
188 basics.add("test123");
189 JSONObject basicsData = new JSONObject();
190 basicsData.put("basic", basics);
191 obj.put("data", basicsData);
196 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
197 JSONObject vnfmObject = new JSONObject();
199 String jobId = "1234";
200 JSONObject resp = vnfMgrVnfm.getJob(vnfmObject, jobId);
201 assertEquals(resp.get("retCode"),1);
205 public void getJobTestCreatedNormal(){
206 new MockUp<ResultRequestUtil>(){
208 public JSONObject call(JSONObject vnfmObject, String path, String methodName, String paramsJson) {
209 JSONObject obj = new JSONObject();
210 JSONObject dataobj = new JSONObject();
211 dataobj.put("id", "2839");
212 obj.put("retCode", 201);
213 JSONArray basics = new JSONArray();
214 basics.add("test123");
215 JSONObject basicsData = new JSONObject();
216 basicsData.put("basic", basics);
217 obj.put("data", basicsData);
222 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
223 JSONObject vnfmObject = new JSONObject();
225 String jobId = "1234";
226 JSONObject resp = vnfMgrVnfm.getJob(vnfmObject, jobId);
227 assertEquals(resp.get("retCode"),1);
231 public void getJobTestNullData(){
232 new MockUp<ResultRequestUtil>(){
234 public JSONObject call(JSONObject vnfmObject, String path, String methodName, String paramsJson) {
235 JSONObject obj = new JSONObject();
236 JSONObject dataobj = new JSONObject();
237 dataobj.put("id", "2839");
238 obj.put("retCode", 201);
239 JSONArray basics = new JSONArray();
240 basics.add("test123");
241 JSONObject basicsData = new JSONObject();
242 basicsData.put("basic", basics);
243 obj.put("data", null);
248 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
249 JSONObject vnfmObject = new JSONObject();
251 String jobId = "1234";
252 JSONObject resp = vnfMgrVnfm.getJob(vnfmObject, jobId);
253 assertEquals(resp.get("retCode"),-1);
257 public void getJobTestInternalError(){
258 new MockUp<ResultRequestUtil>(){
260 public JSONObject call(JSONObject vnfmObject, String path, String methodName, String paramsJson) {
261 JSONObject obj = new JSONObject();
262 JSONObject dataobj = new JSONObject();
263 dataobj.put("id", "2839");
264 obj.put("retCode", 500);
265 JSONArray basics = new JSONArray();
266 basics.add("test123");
267 JSONObject basicsData = new JSONObject();
268 basicsData.put("basic", basics);
269 obj.put("data", null);
274 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
275 JSONObject vnfmObject = new JSONObject();
277 String jobId = "1234";
278 JSONObject resp = vnfMgrVnfm.getJob(vnfmObject, jobId);
279 assertEquals(resp.get("retCode"),-1);
284 public void testScaleVnf() {
285 new MockUp<ResultRequestUtil>() {
288 public JSONObject call(JSONObject vnfmObjcet, String path, String methodName, String paramsJson) {
289 JSONObject resultJson = new JSONObject();
290 resultJson.put("retCode", Constant.HTTP_CREATED);
291 JSONObject appInfo = new JSONObject();
292 appInfo.put("vnfinstanceid", "id");
293 appInfo.put("project_id", "project_id");
294 JSONObject data = new JSONObject();
295 data.put("app_info", appInfo);
296 resultJson.put("data", data);
300 String data = "{\"vnfmInfo\":{\"url\":\"url\"}}";
301 JSONObject subJsonObject = JSONObject.fromObject(data);
302 JSONObject vnfmObjcet = new JSONObject();
303 VnfMgrVnfm vnfMgrVnfm = new VnfMgrVnfm();
304 JSONObject result = vnfMgrVnfm.scaleVnf(subJsonObject,vnfmObjcet,"test123","test123");
306 assertEquals(Constant.REST_SUCCESS, result.get("retCode"));