2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.onap.so.client.adapter.vnf.mapper;
23 import static com.shazam.shazamcrest.MatcherAssert.assertThat;
24 import static com.shazam.shazamcrest.matcher.Matchers.sameBeanAs;
25 import static org.junit.Assert.assertEquals;
27 import java.io.IOException;
28 import java.nio.file.Files;
29 import java.nio.file.Paths;
30 import java.util.HashMap;
33 import org.junit.Before;
34 import org.junit.Test;
35 import org.onap.sdnc.northbound.client.model.GenericResourceApiVmNetworkData;
36 import org.onap.so.adapters.vnfrest.CreateVfModuleRequest;
37 import org.onap.so.adapters.vnfrest.DeleteVfModuleRequest;
38 import org.onap.so.bpmn.servicedecomposition.bbobjects.CloudRegion;
39 import org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf;
40 import org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance;
41 import org.onap.so.bpmn.servicedecomposition.bbobjects.VfModule;
42 import org.onap.so.bpmn.servicedecomposition.bbobjects.VolumeGroup;
43 import org.onap.so.bpmn.servicedecomposition.generalobjects.OrchestrationContext;
44 import org.onap.so.bpmn.servicedecomposition.generalobjects.RequestContext;
45 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoGenericVnf;
46 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoServiceInstance;
47 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoVfModule;
49 import com.fasterxml.jackson.databind.ObjectMapper;
51 public class VnfAdapterVfModuleObjectMapperPayloadTest {
53 private final static String JSON_FILE_LOCATION = "src/test/resources/__files/BuildingBlocks/VnfAndVfModuleMapper/";
55 private VnfAdapterVfModuleObjectMapper vfModuleObjectMapper = new VnfAdapterVfModuleObjectMapper();
56 private ObjectMapper omapper = new ObjectMapper();
59 vfModuleObjectMapper.vnfAdapterObjectMapperUtils = new VnfAdapterObjectMapperUtils();
60 vfModuleObjectMapper.init();
64 public void createVfModuleRequestMapperTest() throws Exception {
66 // prepare and set service instance
67 ServiceInstance serviceInstance = new ServiceInstance();
68 serviceInstance.setServiceInstanceId("serviceInstanceId");
69 ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
70 modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
71 modelInfoServiceInstance.setModelName("serviceModelName");
72 modelInfoServiceInstance.setModelUuid("serviceModelUuid");
73 modelInfoServiceInstance.setModelVersion("serviceModelVersion");
74 modelInfoServiceInstance.setEnvironmentContext("environmentContext");
75 modelInfoServiceInstance.setWorkloadContext("workloadContext");
76 serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
78 RequestContext requestContext = new RequestContext();
79 HashMap<String, String> userParams = new HashMap<String, String>();
80 userParams.put("key1", "value2");
81 requestContext.setMsoRequestId("requestId");
82 requestContext.setUserParams(userParams);
83 requestContext.setProductFamilyId("productFamilyId");
85 GenericVnf vnf = new GenericVnf();
86 vnf.setVnfId("vnfId");
87 vnf.setVnfType("vnfType");
88 vnf.setVnfName("vnfName");
89 ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
90 modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
91 modelInfoGenericVnf.setModelName("vnfModelName");
92 modelInfoGenericVnf.setModelVersion("vnfModelVersion");
93 modelInfoGenericVnf.setModelUuid("vnfModelUuid");
94 modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
95 vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
97 Integer vfModuleIndex = 1;
98 VfModule vfModule = new VfModule();
99 vfModule.setVfModuleId("vfModuleId");
100 vfModule.setVfModuleName("vfModuleName");
101 vfModule.setModuleIndex(vfModuleIndex);
102 ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
103 modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
104 modelInfoVfModule.setModelName("vfModuleModelName");
105 modelInfoVfModule.setModelVersion("vfModuleModelVersion");
106 modelInfoVfModule.setModelUUID("vfModuleModelUuid");
107 modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
108 vfModule.setModelInfoVfModule(modelInfoVfModule);
109 HashMap<String, String> cloudParams = new HashMap<String, String>();
110 cloudParams.put("key3", "value3");
111 vfModule.setCloudParams(cloudParams);
113 CloudRegion cloudRegion = new CloudRegion();
114 cloudRegion.setLcpCloudRegionId("cloudRegionId");
115 cloudRegion.setTenantId("tenantId");
117 OrchestrationContext orchestrationContext = new OrchestrationContext();
118 orchestrationContext.setIsRollbackEnabled(false);
120 String sdncVnfQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
121 String sdncVfModuleQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
123 CreateVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper.createVfModuleRequestMapper(
124 requestContext, cloudRegion, orchestrationContext, serviceInstance,
125 vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
128 String jsonToCompare = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequest.json")));
130 CreateVfModuleRequest reqMapper1 = omapper.readValue(
132 CreateVfModuleRequest.class);
134 assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
138 public void createVfModuleRequestWithNoEnvironmentAndWorkloadContextMapperTest() throws Exception {
140 // prepare and set service instance
141 ServiceInstance serviceInstance = new ServiceInstance();
142 serviceInstance.setServiceInstanceId("serviceInstanceId");
143 ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
144 modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
145 modelInfoServiceInstance.setModelName("serviceModelName");
146 modelInfoServiceInstance.setModelUuid("serviceModelUuid");
147 modelInfoServiceInstance.setModelVersion("serviceModelVersion");
148 modelInfoServiceInstance.setEnvironmentContext(null);
149 serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
151 RequestContext requestContext = new RequestContext();
152 HashMap<String, String> userParams = new HashMap<String, String>();
153 userParams.put("key1", "value2");
154 requestContext.setMsoRequestId("requestId");
155 requestContext.setUserParams(userParams);
156 requestContext.setProductFamilyId("productFamilyId");
158 GenericVnf vnf = new GenericVnf();
159 vnf.setVnfId("vnfId");
160 vnf.setVnfType("vnfType");
161 vnf.setVnfName("vnfName");
162 ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
163 modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
164 modelInfoGenericVnf.setModelName("vnfModelName");
165 modelInfoGenericVnf.setModelVersion("vnfModelVersion");
166 modelInfoGenericVnf.setModelUuid("vnfModelUuid");
167 modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
168 vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
170 Integer vfModuleIndex = 1;
171 VfModule vfModule = new VfModule();
172 vfModule.setVfModuleId("vfModuleId");
173 vfModule.setVfModuleName("vfModuleName");
174 vfModule.setModuleIndex(vfModuleIndex);
175 ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
176 modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
177 modelInfoVfModule.setModelName("vfModuleModelName");
178 modelInfoVfModule.setModelVersion("vfModuleModelVersion");
179 modelInfoVfModule.setModelUUID("vfModuleModelUuid");
180 modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
181 vfModule.setModelInfoVfModule(modelInfoVfModule);
183 CloudRegion cloudRegion = new CloudRegion();
184 cloudRegion.setLcpCloudRegionId("cloudRegionId");
185 cloudRegion.setTenantId("tenantId");
187 OrchestrationContext orchestrationContext = new OrchestrationContext();
188 orchestrationContext.setIsRollbackEnabled(false);
190 String sdncVnfQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
191 String sdncVfModuleQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
193 CreateVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper.createVfModuleRequestMapper(
194 requestContext, cloudRegion, orchestrationContext, serviceInstance,
195 vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
198 String jsonToCompare = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleWithNoEnvironmentAndWorkloadContextRequest.json")));
200 CreateVfModuleRequest reqMapper1 = omapper.readValue(
202 CreateVfModuleRequest.class);
204 assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
208 public void createVfModuleAddonRequestMapperTest() throws Exception {
210 // prepare and set service instance
211 ServiceInstance serviceInstance = new ServiceInstance();
212 serviceInstance.setServiceInstanceId("serviceInstanceId");
213 ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
214 modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
215 modelInfoServiceInstance.setModelName("serviceModelName");
216 modelInfoServiceInstance.setModelUuid("serviceModelUuid");
217 modelInfoServiceInstance.setModelVersion("serviceModelVersion");
218 modelInfoServiceInstance.setEnvironmentContext("environmentContext");
219 modelInfoServiceInstance.setWorkloadContext("workloadContext");
220 serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
223 RequestContext requestContext = new RequestContext();
224 HashMap<String, String> userParams = new HashMap<String, String>();
225 userParams.put("key1", "value2");
226 requestContext.setMsoRequestId("requestId");
227 requestContext.setUserParams(userParams);
228 requestContext.setProductFamilyId("productFamilyId");
230 GenericVnf vnf = new GenericVnf();
231 vnf.setVnfId("vnfId");
232 vnf.setVnfType("vnfType");
233 vnf.setVnfName("vnfName");
234 ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
235 modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
236 modelInfoGenericVnf.setModelName("vnfModelName");
237 modelInfoGenericVnf.setModelVersion("vnfModelVersion");
238 modelInfoGenericVnf.setModelUuid("vnfModelUuid");
239 modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
240 vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
242 Integer vfModuleIndex = 1;
243 VfModule vfModule = new VfModule();
244 vfModule.setVfModuleId("vfModuleId");
245 vfModule.setVfModuleName("vfModuleName");
246 vfModule.setModuleIndex(vfModuleIndex);
247 ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
248 modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
249 modelInfoVfModule.setModelName("vfModuleModelName");
250 modelInfoVfModule.setModelVersion("vfModuleModelVersion");
251 modelInfoVfModule.setModelUUID("vfModuleModelUuid");
252 modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
253 vfModule.setModelInfoVfModule(modelInfoVfModule);
255 VfModule baseVfModule = new VfModule();
256 baseVfModule.setVfModuleId("baseVfModuleId");
257 baseVfModule.setHeatStackId("baseVfModuleStackId");
258 ModelInfoVfModule baseModelInfoVfModule = new ModelInfoVfModule();
259 baseModelInfoVfModule.setIsBaseBoolean(true);
260 baseVfModule.setModelInfoVfModule(baseModelInfoVfModule);
261 vnf.getVfModules().add(baseVfModule);
263 CloudRegion cloudRegion = new CloudRegion();
264 cloudRegion.setLcpCloudRegionId("cloudRegionId");
265 cloudRegion.setTenantId("tenantId");
267 OrchestrationContext orchestrationContext = new OrchestrationContext();
268 orchestrationContext.setIsRollbackEnabled(false);
270 String sdncVnfQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
271 String sdncVfModuleQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
273 CreateVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper.createVfModuleRequestMapper(
274 requestContext, cloudRegion, orchestrationContext, serviceInstance,
275 vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
278 String jsonToCompare = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleAddonRequest.json")));
280 CreateVfModuleRequest reqMapper1 = omapper.readValue(
282 CreateVfModuleRequest.class);
284 assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
288 public void createVfModuleWithVolumeGroupRequestMapperTest() throws Exception {
290 // prepare and set service instance
291 ServiceInstance serviceInstance = new ServiceInstance();
292 serviceInstance.setServiceInstanceId("serviceInstanceId");
293 ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
294 modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
295 modelInfoServiceInstance.setModelName("serviceModelName");
296 modelInfoServiceInstance.setModelUuid("serviceModelUuid");
297 modelInfoServiceInstance.setModelVersion("serviceModelVersion");
298 modelInfoServiceInstance.setEnvironmentContext("environmentContext");
299 modelInfoServiceInstance.setWorkloadContext("workloadContext");
300 serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
303 RequestContext requestContext = new RequestContext();
304 HashMap<String, String> userParams = new HashMap<String, String>();
305 userParams.put("key1", "value2");
306 requestContext.setMsoRequestId("requestId");
307 requestContext.setUserParams(userParams);
308 requestContext.setProductFamilyId("productFamilyId");
310 GenericVnf vnf = new GenericVnf();
311 vnf.setVnfId("vnfId");
312 vnf.setVnfType("vnfType");
313 vnf.setVnfName("vnfName");
314 ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
315 modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
316 modelInfoGenericVnf.setModelName("vnfModelName");
317 modelInfoGenericVnf.setModelVersion("vnfModelVersion");
318 modelInfoGenericVnf.setModelUuid("vnfModelUuid");
319 modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
320 vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
322 Integer vfModuleIndex = 1;
323 VfModule vfModule = new VfModule();
324 vfModule.setVfModuleId("vfModuleId");
325 vfModule.setVfModuleName("vfModuleName");
326 vfModule.setModuleIndex(vfModuleIndex);
327 ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
328 modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
329 modelInfoVfModule.setModelName("vfModuleModelName");
330 modelInfoVfModule.setModelVersion("vfModuleModelVersion");
331 modelInfoVfModule.setModelUUID("vfModuleModelUuid");
332 modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
333 vfModule.setModelInfoVfModule(modelInfoVfModule);
335 VolumeGroup volumeGroup = new VolumeGroup();
336 volumeGroup.setVolumeGroupId("volumeGroupId");
337 volumeGroup.setHeatStackId("volumeGroupStackId");
339 CloudRegion cloudRegion = new CloudRegion();
340 cloudRegion.setLcpCloudRegionId("cloudRegionId");
341 cloudRegion.setTenantId("tenantId");
343 OrchestrationContext orchestrationContext = new OrchestrationContext();
344 orchestrationContext.setIsRollbackEnabled(false);
346 String sdncVnfQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
347 String sdncVfModuleQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
349 CreateVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper.createVfModuleRequestMapper(
350 requestContext, cloudRegion, orchestrationContext, serviceInstance,
351 vnf, vfModule, volumeGroup, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
354 String jsonToCompare = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleWithVolumeGroupRequest.json")));
356 CreateVfModuleRequest reqMapper1 = omapper.readValue(
358 CreateVfModuleRequest.class);
360 assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
364 public void createVfModuleWithSingleAvailabilityZoneRequestMapperTest() throws Exception {
366 // prepare and set service instance
367 ServiceInstance serviceInstance = new ServiceInstance();
368 serviceInstance.setServiceInstanceId("serviceInstanceId");
369 ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
370 modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
371 modelInfoServiceInstance.setModelName("serviceModelName");
372 modelInfoServiceInstance.setModelUuid("serviceModelUuid");
373 modelInfoServiceInstance.setModelVersion("serviceModelVersion");
374 modelInfoServiceInstance.setEnvironmentContext("environmentContext");
375 modelInfoServiceInstance.setWorkloadContext("workloadContext");
376 serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
378 RequestContext requestContext = new RequestContext();
379 HashMap<String, String> userParams = new HashMap<String, String>();
380 userParams.put("key1", "value2");
381 requestContext.setMsoRequestId("requestId");
382 requestContext.setUserParams(userParams);
383 requestContext.setProductFamilyId("productFamilyId");
385 GenericVnf vnf = new GenericVnf();
386 vnf.setVnfId("vnfId");
387 vnf.setVnfType("vnfType");
388 vnf.setVnfName("vnfName");
389 ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
390 modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
391 modelInfoGenericVnf.setModelName("vnfModelName");
392 modelInfoGenericVnf.setModelVersion("vnfModelVersion");
393 modelInfoGenericVnf.setModelUuid("vnfModelUuid");
394 modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
395 vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
397 Integer vfModuleIndex = 1;
398 VfModule vfModule = new VfModule();
399 vfModule.setVfModuleId("vfModuleId");
400 vfModule.setVfModuleName("vfModuleName");
401 vfModule.setModuleIndex(vfModuleIndex);
402 ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
403 modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
404 modelInfoVfModule.setModelName("vfModuleModelName");
405 modelInfoVfModule.setModelVersion("vfModuleModelVersion");
406 modelInfoVfModule.setModelUUID("vfModuleModelUuid");
407 modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
408 vfModule.setModelInfoVfModule(modelInfoVfModule);
410 CloudRegion cloudRegion = new CloudRegion();
411 cloudRegion.setLcpCloudRegionId("cloudRegionId");
412 cloudRegion.setTenantId("tenantId");
414 OrchestrationContext orchestrationContext = new OrchestrationContext();
415 orchestrationContext.setIsRollbackEnabled(false);
417 String sdncVnfQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopologyWithSingletonArray.json")));
418 String sdncVfModuleQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
420 CreateVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper.createVfModuleRequestMapper(
421 requestContext, cloudRegion, orchestrationContext, serviceInstance,
422 vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
425 String jsonToCompare = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestWithSingleAvailabilityZone.json")));
427 CreateVfModuleRequest reqMapper1 = omapper.readValue(
429 CreateVfModuleRequest.class);
431 assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
435 public void createVfModuleRequestMapperWithCloudResourcesTest() throws Exception {
437 // prepare and set service instance
438 ServiceInstance serviceInstance = new ServiceInstance();
439 serviceInstance.setServiceInstanceId("serviceInstanceId");
440 ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
441 modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
442 modelInfoServiceInstance.setModelName("serviceModelName");
443 modelInfoServiceInstance.setModelUuid("serviceModelUuid");
444 modelInfoServiceInstance.setModelVersion("serviceModelVersion");
445 modelInfoServiceInstance.setEnvironmentContext("environmentContext");
446 modelInfoServiceInstance.setWorkloadContext("workloadContext");
447 serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
449 RequestContext requestContext = new RequestContext();
450 HashMap<String, String> userParams = new HashMap<String, String>();
451 userParams.put("key1", "value1");
452 requestContext.setMsoRequestId("requestId");
453 requestContext.setUserParams(userParams);
454 requestContext.setProductFamilyId("productFamilyId");
456 GenericVnf vnf = new GenericVnf();
457 vnf.setVnfId("vnfId");
458 vnf.setVnfType("vnfType");
459 vnf.setVnfName("vnfName");
460 ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
461 modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
462 modelInfoGenericVnf.setModelName("vnfModelName");
463 modelInfoGenericVnf.setModelVersion("vnfModelVersion");
464 modelInfoGenericVnf.setModelUuid("vnfModelUuid");
465 modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
466 vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
468 Integer vfModuleIndex = 1;
469 VfModule vfModule = new VfModule();
470 vfModule.setVfModuleId("vfModuleId");
471 vfModule.setVfModuleName("vfModuleName");
472 vfModule.setModuleIndex(vfModuleIndex);
473 ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
474 modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
475 modelInfoVfModule.setModelName("vfModuleModelName");
476 modelInfoVfModule.setModelVersion("vfModuleModelVersion");
477 modelInfoVfModule.setModelUUID("vfModuleModelUuid");
478 modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
479 vfModule.setModelInfoVfModule(modelInfoVfModule);
481 CloudRegion cloudRegion = new CloudRegion();
482 cloudRegion.setLcpCloudRegionId("cloudRegionId");
483 cloudRegion.setTenantId("tenantId");
485 OrchestrationContext orchestrationContext = new OrchestrationContext();
486 orchestrationContext.setIsRollbackEnabled(false);
488 String sdncVnfQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopologyWithCloudResources.json")));
489 String sdncVfModuleQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopologyWithCloudResources.json")));
491 CreateVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper.createVfModuleRequestMapper(
492 requestContext, cloudRegion, orchestrationContext, serviceInstance,
493 vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
496 String jsonToCompare = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestWithCloudResources.json")));
498 CreateVfModuleRequest reqMapper1 = omapper.readValue(
500 CreateVfModuleRequest.class);
502 assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
506 public void createVfModuleRequestMapperDhcpDisabledTest() throws Exception {
507 // prepare and set service instance
508 ServiceInstance serviceInstance = new ServiceInstance();
509 serviceInstance.setServiceInstanceId("serviceInstanceId");
510 ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
511 modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
512 modelInfoServiceInstance.setModelName("serviceModelName");
513 modelInfoServiceInstance.setModelUuid("serviceModelUuid");
514 modelInfoServiceInstance.setModelVersion("serviceModelVersion");
515 modelInfoServiceInstance.setEnvironmentContext("environmentContext");
516 modelInfoServiceInstance.setWorkloadContext("workloadContext");
517 serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
519 RequestContext requestContext = new RequestContext();
520 HashMap<String, String> userParams = new HashMap<String, String>();
521 userParams.put("key1", "value1");
522 requestContext.setMsoRequestId("requestId");
523 requestContext.setUserParams(userParams);
524 requestContext.setProductFamilyId("productFamilyId");
526 GenericVnf vnf = new GenericVnf();
527 vnf.setVnfId("vnfId");
528 vnf.setVnfType("vnfType");
529 vnf.setVnfName("vnfName");
530 ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
531 modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
532 modelInfoGenericVnf.setModelName("vnfModelName");
533 modelInfoGenericVnf.setModelVersion("vnfModelVersion");
534 modelInfoGenericVnf.setModelUuid("vnfModelUuid");
535 modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
536 vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
538 Integer vfModuleIndex = 1;
539 VfModule vfModule = new VfModule();
540 vfModule.setVfModuleId("vfModuleId");
541 vfModule.setVfModuleName("vfModuleName");
542 vfModule.setModuleIndex(vfModuleIndex);
543 ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
544 modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
545 modelInfoVfModule.setModelName("vfModuleModelName");
546 modelInfoVfModule.setModelVersion("vfModuleModelVersion");
547 modelInfoVfModule.setModelUUID("vfModuleModelUuid");
548 modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
549 vfModule.setModelInfoVfModule(modelInfoVfModule);
551 CloudRegion cloudRegion = new CloudRegion();
552 cloudRegion.setLcpCloudRegionId("cloudRegionId");
553 cloudRegion.setTenantId("tenantId");
555 OrchestrationContext orchestrationContext = new OrchestrationContext();
556 orchestrationContext.setIsRollbackEnabled(false);
558 String sdncVnfQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopologySubnetDhcpDisabled.json")));
559 String sdncVfModuleQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
561 CreateVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper.createVfModuleRequestMapper(
562 requestContext, cloudRegion, orchestrationContext, serviceInstance,
563 vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
566 String jsonToCompare = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestDhcpDisabled.json")));
568 CreateVfModuleRequest reqMapper1 = omapper.readValue(
570 CreateVfModuleRequest.class);
572 assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
576 public void createVfModuleRequestMapperMultipleDhcpTest() throws Exception {
577 // prepare and set service instance
578 ServiceInstance serviceInstance = new ServiceInstance();
579 serviceInstance.setServiceInstanceId("serviceInstanceId");
580 ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
581 modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
582 modelInfoServiceInstance.setModelName("serviceModelName");
583 modelInfoServiceInstance.setModelUuid("serviceModelUuid");
584 modelInfoServiceInstance.setModelVersion("serviceModelVersion");
585 modelInfoServiceInstance.setEnvironmentContext("environmentContext");
586 modelInfoServiceInstance.setWorkloadContext("workloadContext");
587 serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
589 RequestContext requestContext = new RequestContext();
590 HashMap<String, String> userParams = new HashMap<String, String>();
591 userParams.put("key1", "value1");
592 requestContext.setMsoRequestId("requestId");
593 requestContext.setUserParams(userParams);
594 requestContext.setProductFamilyId("productFamilyId");
596 GenericVnf vnf = new GenericVnf();
597 vnf.setVnfId("vnfId");
598 vnf.setVnfType("vnfType");
599 vnf.setVnfName("vnfName");
600 ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
601 modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
602 modelInfoGenericVnf.setModelName("vnfModelName");
603 modelInfoGenericVnf.setModelVersion("vnfModelVersion");
604 modelInfoGenericVnf.setModelUuid("vnfModelUuid");
605 modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
606 vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
608 Integer vfModuleIndex = 1;
609 VfModule vfModule = new VfModule();
610 vfModule.setVfModuleId("vfModuleId");
611 vfModule.setVfModuleName("vfModuleName");
612 vfModule.setModuleIndex(vfModuleIndex);
613 ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
614 modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
615 modelInfoVfModule.setModelName("vfModuleModelName");
616 modelInfoVfModule.setModelVersion("vfModuleModelVersion");
617 modelInfoVfModule.setModelUUID("vfModuleModelUuid");
618 modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
619 vfModule.setModelInfoVfModule(modelInfoVfModule);
621 CloudRegion cloudRegion = new CloudRegion();
622 cloudRegion.setLcpCloudRegionId("cloudRegionId");
623 cloudRegion.setTenantId("tenantId");
625 OrchestrationContext orchestrationContext = new OrchestrationContext();
626 orchestrationContext.setIsRollbackEnabled(false);
628 String sdncVnfQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopologySubnetMultipleDhcp.json")));
629 String sdncVfModuleQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
631 CreateVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper.createVfModuleRequestMapper(
632 requestContext, cloudRegion, orchestrationContext, serviceInstance,
633 vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
636 String jsonToCompare = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestMultipleDhcp.json")));
638 CreateVfModuleRequest reqMapper1 = omapper.readValue(
640 CreateVfModuleRequest.class);
642 assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
646 public void createVfModuleRequestMapperWithNullUserParamsTest() throws Exception {
648 // prepare and set service instance
649 ServiceInstance serviceInstance = new ServiceInstance();
650 serviceInstance.setServiceInstanceId("serviceInstanceId");
651 ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
652 modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
653 modelInfoServiceInstance.setModelName("serviceModelName");
654 modelInfoServiceInstance.setModelUuid("serviceModelUuid");
655 modelInfoServiceInstance.setModelVersion("serviceModelVersion");
656 modelInfoServiceInstance.setEnvironmentContext("environmentContext");
657 modelInfoServiceInstance.setWorkloadContext("workloadContext");
658 serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
660 RequestContext requestContext = new RequestContext();
661 requestContext.setMsoRequestId("requestId");
662 requestContext.setProductFamilyId("productFamilyId");
664 GenericVnf vnf = new GenericVnf();
665 vnf.setVnfId("vnfId");
666 vnf.setVnfType("vnfType");
667 vnf.setVnfName("vnfName");
668 ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
669 modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
670 modelInfoGenericVnf.setModelName("vnfModelName");
671 modelInfoGenericVnf.setModelVersion("vnfModelVersion");
672 modelInfoGenericVnf.setModelUuid("vnfModelUuid");
673 modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
674 vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
676 Integer vfModuleIndex = 1;
677 VfModule vfModule = new VfModule();
678 vfModule.setVfModuleId("vfModuleId");
679 vfModule.setVfModuleName("vfModuleName");
680 vfModule.setModuleIndex(vfModuleIndex);
681 ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
682 modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
683 modelInfoVfModule.setModelName("vfModuleModelName");
684 modelInfoVfModule.setModelVersion("vfModuleModelVersion");
685 modelInfoVfModule.setModelUUID("vfModuleModelUuid");
686 modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
687 vfModule.setModelInfoVfModule(modelInfoVfModule);
689 CloudRegion cloudRegion = new CloudRegion();
690 cloudRegion.setLcpCloudRegionId("cloudRegionId");
691 cloudRegion.setTenantId("tenantId");
693 OrchestrationContext orchestrationContext = new OrchestrationContext();
694 orchestrationContext.setIsRollbackEnabled(false);
696 String sdncVnfQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
697 String sdncVfModuleQueryResponse = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
699 CreateVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper.createVfModuleRequestMapper(
700 requestContext, cloudRegion, orchestrationContext, serviceInstance,
701 vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
704 String jsonToCompare = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestNoUserParams.json")));
706 CreateVfModuleRequest reqMapper1 = omapper.readValue(
708 CreateVfModuleRequest.class);
710 assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
714 public void DeleteVfModuleRequestMapperTest() throws Exception {
715 ServiceInstance serviceInstance = new ServiceInstance();
716 serviceInstance.setServiceInstanceId("serviceInstanceId");
717 ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
718 modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
719 modelInfoServiceInstance.setModelName("serviceModelName");
720 modelInfoServiceInstance.setModelUuid("serviceModelUuid");
721 modelInfoServiceInstance.setModelVersion("serviceModelVersion");
722 modelInfoServiceInstance.setEnvironmentContext("environmentContext");
723 modelInfoServiceInstance.setWorkloadContext("workloadContext");
724 serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
726 RequestContext requestContext = new RequestContext();
727 HashMap<String, String> userParams = new HashMap<String, String>();
728 userParams.put("key1", "value1");
729 requestContext.setMsoRequestId("requestId");
730 requestContext.setUserParams(userParams);
731 requestContext.setProductFamilyId("productFamilyId");
733 GenericVnf vnf = new GenericVnf();
734 vnf.setVnfId("vnfId");
735 vnf.setVnfType("vnfType");
736 vnf.setVnfName("vnfName");
737 ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
738 modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
739 modelInfoGenericVnf.setModelName("vnfModelName");
740 modelInfoGenericVnf.setModelVersion("vnfModelVersion");
741 modelInfoGenericVnf.setModelUuid("vnfModelUuid");
742 modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
743 vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
745 VfModule vfModule = new VfModule();
746 vfModule.setVfModuleId("vfModuleId");
747 vfModule.setVfModuleName("vfModuleName");
748 ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
749 modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
750 modelInfoVfModule.setModelName("vfModuleModelName");
751 modelInfoVfModule.setModelVersion("vfModuleModelVersion");
752 modelInfoVfModule.setModelUUID("vfModuleModelUuid");
753 modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
754 vfModule.setModelInfoVfModule(modelInfoVfModule);
756 CloudRegion cloudRegion = new CloudRegion();
757 cloudRegion.setLcpCloudRegionId("cloudRegionId");
758 cloudRegion.setTenantId("tenantId");
760 OrchestrationContext orchestrationContext = new OrchestrationContext();
761 orchestrationContext.setIsRollbackEnabled(false);
763 DeleteVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper.deleteVfModuleRequestMapper(
764 requestContext, cloudRegion, serviceInstance,
768 String jsonToCompare = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterDeleteVfModuleRequest.json")));
770 DeleteVfModuleRequest reqMapper1 = omapper.readValue(
772 DeleteVfModuleRequest.class);
774 assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
778 public void networkCloudParamsTest() throws IOException {
780 String json = new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "grApiVmNetworkSubSectionWith5GParams.json")));
781 GenericResourceApiVmNetworkData network = omapper.readValue(json, GenericResourceApiVmNetworkData.class);
782 Map<String, String> paramsMap = new HashMap<>();
783 vfModuleObjectMapper.buildVlanInformation(paramsMap, network, "testKey", "testType");
785 assertEquals("1,3", paramsMap.get("testKey_testType_private_vlans"));
786 assertEquals("2,3", paramsMap.get("testKey_testType_public_vlans"));
787 assertEquals("1,2,3", paramsMap.get("testKey_testType_guest_vlans"));
788 assertEquals("my-segemntation-id", paramsMap.get("testKey_testType_vlan_filter"));