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.rest;
19 import static org.junit.Assert.assertNotNull;
21 import java.io.IOException;
23 import javax.servlet.http.HttpServletRequest;
25 import org.junit.After;
26 import org.junit.Before;
27 import org.junit.Test;
28 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.common.VnfmJsonUtil;
29 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.common.VnfmUtil;
30 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.constant.Constant;
31 import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.process.VnfResourceMgr;
35 import net.sf.json.JSONObject;
37 public class VnfResourceRoaTest {
39 private VnfResourceRoa vnfResourceRoa;
41 private VnfResourceMgr vnfResourceMgr;
45 vnfResourceRoa = new VnfResourceRoa();
46 vnfResourceMgr = new VnfResourceMgr();
47 vnfResourceRoa.setVnfResourceMgr(vnfResourceMgr);
51 public void tearDown() {
52 vnfResourceRoa = null;
53 vnfResourceMgr = null;
57 public void testGrantVnfResByDataObjectNull() {
58 MockUp<HttpServletRequest> proxyStub = new MockUp<HttpServletRequest>() {};
59 HttpServletRequest mockInstance = proxyStub.getMockInstance();
60 new MockUp<VnfmJsonUtil>() {
63 public <T> T getJsonFromContexts(HttpServletRequest context) {
68 String result = vnfResourceRoa.grantVnfRes(mockInstance, "vnfId");
70 JSONObject restJson = new JSONObject();
71 restJson.put("retCode", Constant.REST_FAIL);
72 restJson.put("data", "Params error");
73 assertNotNull(result);
77 public void testGrantVnfResByGrantObjNull() {
78 MockUp<HttpServletRequest> proxyStub = new MockUp<HttpServletRequest>() {};
79 HttpServletRequest mockInstance = proxyStub.getMockInstance();
80 final JSONObject dataObject = new JSONObject();
81 new MockUp<VnfmJsonUtil>() {
83 @SuppressWarnings("unchecked")
85 public <T> T getJsonFromContexts(HttpServletRequest context) {
89 new MockUp<JSONObject>() {
92 public JSONObject getJSONObject(String key) {
100 String result = vnfResourceRoa.grantVnfRes(mockInstance, "vnfId");
102 JSONObject restJson = new JSONObject();
103 restJson.put("retCode", Constant.REST_FAIL);
104 restJson.put("data", "Grant param error");
105 assertNotNull(result);
109 public void testGrantVnfRes() {
110 MockUp<HttpServletRequest> proxyStub = new MockUp<HttpServletRequest>() {
113 public String getHeader(String name) {
117 HttpServletRequest mockInstance = proxyStub.getMockInstance();
118 final JSONObject dataObject = new JSONObject();
119 JSONObject grant = new JSONObject();
120 grant.put("project_id", "project_id");
121 dataObject.put("grant", grant);
122 new MockUp<VnfmJsonUtil>() {
124 @SuppressWarnings("unchecked")
126 public <T> T getJsonFromContexts(HttpServletRequest context) {
127 return (T)dataObject;
130 new MockUp<VnfmUtil>() {
133 public String getVnfmIdByIp(String ip) {
138 new MockUp<VnfResourceMgr>() {
141 public JSONObject grantVnfResource(JSONObject vnfObj, String vnfId, String vnfmId) {
142 JSONObject resultJson = new JSONObject();
143 resultJson.put("retCode", Constant.REST_SUCCESS);
144 JSONObject data = new JSONObject();
145 data.put("data", "success");
146 resultJson.put("data", data);
150 String result = vnfResourceRoa.grantVnfRes(mockInstance, "vnfId");
152 JSONObject restJson = new JSONObject();
153 restJson.put("retCode", Constant.REST_SUCCESS);
154 JSONObject data = new JSONObject();
155 data.put("data", "success");
156 restJson.put("data", data);
157 assertNotNull(result);
161 public void testGrantVnfResByFail() {
162 MockUp<HttpServletRequest> proxyStub = new MockUp<HttpServletRequest>() {
165 public String getHeader(String name) {
169 HttpServletRequest mockInstance = proxyStub.getMockInstance();
170 final JSONObject dataObject = new JSONObject();
171 JSONObject grant = new JSONObject();
172 grant.put("project_id", "project_id");
173 dataObject.put("grant", grant);
174 new MockUp<VnfmJsonUtil>() {
176 @SuppressWarnings("unchecked")
178 public <T> T getJsonFromContexts(HttpServletRequest context) {
179 return (T)dataObject;
182 new MockUp<VnfmUtil>() {
185 public String getVnfmIdByIp(String ip) {
190 new MockUp<VnfResourceMgr>() {
193 public JSONObject grantVnfResource(JSONObject vnfObj, String vnfId, String vnfmId) {
194 JSONObject resultJson = new JSONObject();
195 resultJson.put("retCode", Constant.REST_FAIL);
196 resultJson.put("data", "Fail!");
200 String result = vnfResourceRoa.grantVnfRes(mockInstance, "vnfId");
202 JSONObject restJson = new JSONObject();
203 restJson.put("retCode", Constant.REST_FAIL);
204 restJson.put("data", "Fail!");
205 assertNotNull(result);
209 public void testGrantVnfResByDataNull() {
210 MockUp<HttpServletRequest> proxyStub = new MockUp<HttpServletRequest>() {
213 public String getHeader(String name) {
217 HttpServletRequest mockInstance = proxyStub.getMockInstance();
218 final JSONObject dataObject = new JSONObject();
219 JSONObject grant = new JSONObject();
220 grant.put("project_id", "project_id");
221 dataObject.put("grant", grant);
222 new MockUp<VnfmJsonUtil>() {
224 @SuppressWarnings("unchecked")
226 public <T> T getJsonFromContexts(HttpServletRequest context) {
227 return (T)dataObject;
230 new MockUp<VnfmUtil>() {
233 public String getVnfmIdByIp(String ip) {
238 new MockUp<VnfResourceMgr>() {
241 public JSONObject grantVnfResource(JSONObject vnfObj, String vnfId, String vnfmId) {
242 JSONObject resultJson = new JSONObject();
243 resultJson.put("retCode", Constant.REST_FAIL);
247 String result = vnfResourceRoa.grantVnfRes(mockInstance, "vnfId");
249 JSONObject restJson = new JSONObject();
250 restJson.put("retCode", Constant.REST_FAIL);
251 assertNotNull(result);
255 public void testNotify() throws IOException {
256 MockUp<HttpServletRequest> proxyStub = new MockUp<HttpServletRequest>() {
259 public String getHeader(String name) {
263 HttpServletRequest mockInstance = proxyStub.getMockInstance();
264 String result = vnfResourceRoa.notify(mockInstance);
266 JSONObject restJson = new JSONObject();
267 restJson.put(Constant.RETCODE, Constant.REST_SUCCESS);
268 assertNotNull(result);