2 * Copyright 2018 Huawei Technologies Co., Ltd.
\r
4 * Licensed under the Apache License, Version 2.0 (the "License");
\r
5 * you may not use this file except in compliance with the License.
\r
6 * You may obtain a copy of the License at
\r
8 * http://www.apache.org/licenses/LICENSE-2.0
\r
10 * Unless required by applicable law or agreed to in writing, software
\r
11 * distributed under the License is distributed on an "AS IS" BASIS,
\r
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
13 * See the License for the specific language governing permissions and
\r
14 * limitations under the License.
\r
17 package org.onap.vfc.nfvo.resmanagement.service.group.impl;
\r
19 import static org.junit.Assert.assertNotNull;
\r
21 import org.junit.Test;
\r
22 import org.onap.vfc.nfvo.resmanagement.common.VimUtil;
\r
23 import org.onap.vfc.nfvo.resmanagement.common.util.restclient.ServiceException;
\r
24 import org.onap.vfc.nfvo.resmanagement.service.business.impl.LimitsBusinessImpl;
\r
27 import mockit.MockUp;
\r
28 import net.sf.json.JSONArray;
\r
29 import net.sf.json.JSONObject;
\r
31 public class GrantResServiceImplTest {
\r
34 public void testGrantResource() throws ServiceException {
\r
35 GrantResServiceImpl impl = new GrantResServiceImpl();
\r
36 JSONObject obj = new JSONObject();
\r
37 JSONObject vimObj = new JSONObject();
\r
38 vimObj.put("vimId", "vimId");
\r
39 obj.put("additionalParam", vimObj);
\r
40 new MockUp<VimUtil>() {
\r
43 public JSONObject getVimById(String vimId) {
\r
44 JSONObject vim = new JSONObject();
\r
45 vim.put("tenant", "huawei");
\r
49 JSONObject result = impl.grantResource(obj);
\r
50 assertNotNull(result);
\r
56 * "vnfInstanceId": 1,
\r
57 * "addResource": [],
\r
59 * "removeResource": [],
\r
60 * "additionalParam": {
\r
64 * @throws ServiceException
\r
68 public void testGrantResourceReal() throws ServiceException {
\r
69 GrantResServiceImpl impl = new GrantResServiceImpl();
\r
70 JSONObject obj = new JSONObject();
\r
71 JSONObject vimObj = getVimObj();
\r
72 obj.put("additionalParam", vimObj);
\r
73 obj.put("vimId", "vimId");
\r
74 JSONArray addResource = new JSONArray();
\r
75 addResource.add(getAddResObj());
\r
76 obj.put("addResource", addResource);
\r
77 new MockUp<VimUtil>() {
\r
80 public JSONObject getVimById(String vimId) {
\r
84 new MockUp<LimitsBusinessImpl>() {
\r
87 public JSONObject getLimits(String vimId) throws ServiceException {
\r
88 JSONObject result = new JSONObject();
\r
89 result.put("vimId", "vimId");
\r
90 result.put("vimName", "vimName");
\r
91 result.put("totalCPU", "10");
\r
92 result.put("totalMemory", "10");
\r
93 result.put("totalDisk", "10");
\r
94 result.put("usedCPU", "1");
\r
95 result.put("usedMemory", "1");
\r
96 result.put("usedDisk", "1");
\r
101 JSONObject result = impl.grantResourceReal(obj);
\r
102 assertNotNull(result);
\r
107 * "vimId": "57674786-5b2e-4c92-bb68-578dbd79e2f5",
\r
109 * "url": "http://10.74.151.13:5000/v2.0",
\r
110 * "userName": "admin",
\r
111 * "password": "admin",
\r
112 * "tenant": "admin",
\r
114 * "version": "v1.0",
\r
115 * "description": "",
\r
117 * "type": "openstack",
\r
118 * "createTime": "2016-07-18 12:22:53"
\r
125 private JSONObject getVimObj() {
\r
126 JSONObject vimObj = new JSONObject();
\r
127 vimObj.put("vimId", "57674786-5b2e-4c92-bb68-578dbd79e2f5");
\r
128 vimObj.put("name", "vim");
\r
129 vimObj.put("url", "http://10.74.151.13:5000/v2.0");
\r
130 vimObj.put("userName", "admin");
\r
131 vimObj.put("password", "admin");
\r
132 vimObj.put("tenant", "admin");
\r
133 vimObj.put("vendor", "HW");
\r
134 vimObj.put("version", "v1.0");
\r
135 vimObj.put("description", "");
\r
136 vimObj.put("domain", "");
\r
137 vimObj.put("type", "openstack");
\r
138 vimObj.put("createTime", "");
\r
144 * "resourceDefinitionId": "11111",
\r
145 * "resourceTemplate": {
\r
146 * "virtualComputeDescriptor": {
\r
148 * "numVirtualCpu": 1
\r
150 * "virtualMemory": {
\r
151 * "virtualMemSize": 1//meminMB
\r
154 * "virtualStorageDescriptor": {
\r
155 * "typeOfStorage": "",
\r
156 * "sizeOfStorage": 111,
\r
157 * //diskinGB"swImageDescriptor": ""
\r
161 * "vdu": "vdu_name"
\r
168 private JSONObject getAddResObj() {
\r
169 JSONObject addResObj = new JSONObject();
\r
170 JSONObject virtualCpu = new JSONObject();
\r
171 virtualCpu.put("numVirtualCpu", 1);
\r
172 JSONObject virtualMemory = new JSONObject();
\r
173 virtualMemory.put("virtualMemSize", 1);
\r
174 JSONObject virtualComputeDescriptor = new JSONObject();
\r
175 virtualComputeDescriptor.put("virtualCpu", virtualCpu);
\r
176 virtualComputeDescriptor.put("virtualMemory", virtualMemory);
\r
177 JSONObject virtualStorageDescriptor = new JSONObject();
\r
178 virtualStorageDescriptor.put("typeOfStorage", "");
\r
179 virtualStorageDescriptor.put("sizeOfStorage", "1");
\r
180 JSONObject resourceTemplate = new JSONObject();
\r
181 resourceTemplate.put("virtualComputeDescriptor", virtualComputeDescriptor);
\r
182 resourceTemplate.put("virtualStorageDescriptor", virtualStorageDescriptor);
\r
183 addResObj.put("resourceDefinitionId", "1");
\r
184 addResObj.put("resourceTemplate", resourceTemplate);
\r