44a08139d64362a84d9c6dbf2d8f5281a62be5ca
[so.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
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
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
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=========================================================
19  */
20
21 package org.onap.so.client.adapter.vnf.mapper;
22
23 import static com.shazam.shazamcrest.MatcherAssert.assertThat;
24 import static com.shazam.shazamcrest.matcher.Matchers.sameBeanAs;
25 import static org.junit.Assert.assertEquals;
26 import java.io.IOException;
27 import java.nio.file.Files;
28 import java.nio.file.Paths;
29 import java.util.HashMap;
30 import java.util.Map;
31 import org.junit.Before;
32 import org.junit.Rule;
33 import org.junit.Test;
34 import org.junit.rules.ExpectedException;
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;
48 import org.onap.so.openstack.utils.MsoMulticloudUtils;
49 import org.onap.so.client.adapter.vnf.mapper.exceptions.MissingValueTagException;
50 import com.fasterxml.jackson.databind.ObjectMapper;
51
52 public class VnfAdapterVfModuleObjectMapperPayloadTest {
53
54     private final static String JSON_FILE_LOCATION = "src/test/resources/__files/BuildingBlocks/VnfAndVfModuleMapper/";
55
56     private VnfAdapterVfModuleObjectMapper vfModuleObjectMapper = new VnfAdapterVfModuleObjectMapper();
57     private ObjectMapper omapper = new ObjectMapper();
58
59     @Rule
60     public ExpectedException expectedException = ExpectedException.none();
61
62     @Before
63     public void setUp() {
64         vfModuleObjectMapper.vnfAdapterObjectMapperUtils = new VnfAdapterObjectMapperUtils();
65         vfModuleObjectMapper.init();
66
67     }
68
69     @Test
70     public void createVfModuleRequestMapperTest() throws Exception {
71
72         // prepare and set service instance
73         ServiceInstance serviceInstance = new ServiceInstance();
74         serviceInstance.setServiceInstanceId("serviceInstanceId");
75         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
76         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
77         modelInfoServiceInstance.setModelName("serviceModelName");
78         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
79         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
80         modelInfoServiceInstance.setEnvironmentContext("environmentContext");
81         modelInfoServiceInstance.setWorkloadContext("workloadContext");
82         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
83
84         RequestContext requestContext = new RequestContext();
85         Map<String, Object> userParams = new HashMap<>();
86         userParams.put("key1", "value2");
87         requestContext.setMsoRequestId("requestId");
88         requestContext.setUserParams(userParams);
89         requestContext.setProductFamilyId("productFamilyId");
90
91         GenericVnf vnf = new GenericVnf();
92         vnf.setVnfId("vnfId");
93         vnf.setVnfType("vnfType");
94         vnf.setVnfName("vnfName");
95         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
96         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
97         modelInfoGenericVnf.setModelName("vnfModelName");
98         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
99         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
100         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
101         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
102
103         Integer vfModuleIndex = 1;
104         VfModule vfModule = new VfModule();
105         vfModule.setVfModuleId("vfModuleId");
106         vfModule.setVfModuleName("vfModuleName");
107         vfModule.setModuleIndex(vfModuleIndex);
108         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
109         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
110         modelInfoVfModule.setModelName("vfModuleModelName");
111         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
112         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
113         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
114         vfModule.setModelInfoVfModule(modelInfoVfModule);
115         HashMap<String, String> cloudParams = new HashMap<String, String>();
116         cloudParams.put("key3", "value3");
117         vfModule.setCloudParams(cloudParams);
118
119         CloudRegion cloudRegion = new CloudRegion();
120         cloudRegion.setLcpCloudRegionId("cloudRegionId");
121         cloudRegion.setTenantId("tenantId");
122
123         OrchestrationContext orchestrationContext = new OrchestrationContext();
124         orchestrationContext.setIsRollbackEnabled(false);
125
126         String sdncVnfQueryResponse = new String(
127                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
128         String sdncVfModuleQueryResponse = new String(Files
129                 .readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
130
131         CreateVfModuleRequest vfModuleVNFAdapterRequest =
132                 vfModuleObjectMapper.createVfModuleRequestMapper(requestContext, cloudRegion, orchestrationContext,
133                         serviceInstance, vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
134
135
136         String jsonToCompare =
137                 new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequest.json")));
138
139         CreateVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, CreateVfModuleRequest.class);
140
141         assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
142     }
143
144     @Test
145     public void createVfModuleWithFalseRollbackRequestMapperTest() throws Exception {
146
147         // prepare and set service instance
148         ServiceInstance serviceInstance = new ServiceInstance();
149         serviceInstance.setServiceInstanceId("serviceInstanceId");
150         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
151         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
152         modelInfoServiceInstance.setModelName("serviceModelName");
153         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
154         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
155         modelInfoServiceInstance.setEnvironmentContext("environmentContext");
156         modelInfoServiceInstance.setWorkloadContext("workloadContext");
157         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
158
159         RequestContext requestContext = new RequestContext();
160         Map<String, Object> userParams = new HashMap<>();
161         userParams.put("key1", "value2");
162         requestContext.setMsoRequestId("requestId");
163         requestContext.setUserParams(userParams);
164         requestContext.setProductFamilyId("productFamilyId");
165
166         GenericVnf vnf = new GenericVnf();
167         vnf.setVnfId("vnfId");
168         vnf.setVnfType("vnfType");
169         vnf.setVnfName("vnfName");
170         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
171         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
172         modelInfoGenericVnf.setModelName("vnfModelName");
173         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
174         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
175         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
176         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
177
178         Integer vfModuleIndex = 1;
179         VfModule vfModule = new VfModule();
180         vfModule.setVfModuleId("vfModuleId");
181         vfModule.setVfModuleName("vfModuleName");
182         vfModule.setModuleIndex(vfModuleIndex);
183         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
184         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
185         modelInfoVfModule.setModelName("vfModuleModelName");
186         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
187         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
188         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
189         vfModule.setModelInfoVfModule(modelInfoVfModule);
190         HashMap<String, String> cloudParams = new HashMap<String, String>();
191         cloudParams.put("key3", "value3");
192         vfModule.setCloudParams(cloudParams);
193
194         CloudRegion cloudRegion = new CloudRegion();
195         cloudRegion.setLcpCloudRegionId("cloudRegionId");
196         cloudRegion.setTenantId("tenantId");
197
198         OrchestrationContext orchestrationContext = new OrchestrationContext();
199         orchestrationContext.setIsRollbackEnabled(true);
200
201         String sdncVnfQueryResponse = new String(
202                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
203         String sdncVfModuleQueryResponse = new String(Files
204                 .readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
205
206         CreateVfModuleRequest vfModuleVNFAdapterRequest =
207                 vfModuleObjectMapper.createVfModuleRequestMapper(requestContext, cloudRegion, orchestrationContext,
208                         serviceInstance, vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
209
210
211         String jsonToCompare = new String(
212                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestTrueBackout.json")));
213
214         CreateVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, CreateVfModuleRequest.class);
215
216         assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
217     }
218
219     @Test
220     public void createVfModuleRequestWithNoEnvironmentAndWorkloadContextMapperTest() throws Exception {
221
222         // prepare and set service instance
223         ServiceInstance serviceInstance = new ServiceInstance();
224         serviceInstance.setServiceInstanceId("serviceInstanceId");
225         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
226         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
227         modelInfoServiceInstance.setModelName("serviceModelName");
228         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
229         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
230         modelInfoServiceInstance.setEnvironmentContext(null);
231         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
232
233         RequestContext requestContext = new RequestContext();
234         Map<String, Object> userParams = new HashMap<>();
235         userParams.put("key1", "value2");
236         requestContext.setMsoRequestId("requestId");
237         requestContext.setUserParams(userParams);
238         requestContext.setProductFamilyId("productFamilyId");
239
240         GenericVnf vnf = new GenericVnf();
241         vnf.setVnfId("vnfId");
242         vnf.setVnfType("vnfType");
243         vnf.setVnfName("vnfName");
244         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
245         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
246         modelInfoGenericVnf.setModelName("vnfModelName");
247         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
248         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
249         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
250         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
251
252         Integer vfModuleIndex = 1;
253         VfModule vfModule = new VfModule();
254         vfModule.setVfModuleId("vfModuleId");
255         vfModule.setVfModuleName("vfModuleName");
256         vfModule.setModuleIndex(vfModuleIndex);
257         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
258         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
259         modelInfoVfModule.setModelName("vfModuleModelName");
260         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
261         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
262         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
263         vfModule.setModelInfoVfModule(modelInfoVfModule);
264
265         CloudRegion cloudRegion = new CloudRegion();
266         cloudRegion.setLcpCloudRegionId("cloudRegionId");
267         cloudRegion.setTenantId("tenantId");
268
269         OrchestrationContext orchestrationContext = new OrchestrationContext();
270         orchestrationContext.setIsRollbackEnabled(false);
271
272         String sdncVnfQueryResponse = new String(
273                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
274         String sdncVfModuleQueryResponse = new String(Files
275                 .readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
276
277         CreateVfModuleRequest vfModuleVNFAdapterRequest =
278                 vfModuleObjectMapper.createVfModuleRequestMapper(requestContext, cloudRegion, orchestrationContext,
279                         serviceInstance, vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
280
281
282         String jsonToCompare = new String(Files.readAllBytes(Paths
283                 .get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleWithNoEnvironmentAndWorkloadContextRequest.json")));
284
285         CreateVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, CreateVfModuleRequest.class);
286
287         assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
288     }
289
290     @Test
291     public void createVfModuleAddonRequestMapperTest() throws Exception {
292
293         // prepare and set service instance
294         ServiceInstance serviceInstance = new ServiceInstance();
295         serviceInstance.setServiceInstanceId("serviceInstanceId");
296         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
297         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
298         modelInfoServiceInstance.setModelName("serviceModelName");
299         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
300         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
301         modelInfoServiceInstance.setEnvironmentContext("environmentContext");
302         modelInfoServiceInstance.setWorkloadContext("workloadContext");
303         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
304
305         //
306         RequestContext requestContext = new RequestContext();
307         Map<String, Object> userParams = new HashMap<>();
308         userParams.put("key1", "value2");
309         requestContext.setMsoRequestId("requestId");
310         requestContext.setUserParams(userParams);
311         requestContext.setProductFamilyId("productFamilyId");
312
313         GenericVnf vnf = new GenericVnf();
314         vnf.setVnfId("vnfId");
315         vnf.setVnfType("vnfType");
316         vnf.setVnfName("vnfName");
317         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
318         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
319         modelInfoGenericVnf.setModelName("vnfModelName");
320         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
321         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
322         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
323         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
324
325         Integer vfModuleIndex = 1;
326         VfModule vfModule = new VfModule();
327         vfModule.setVfModuleId("vfModuleId");
328         vfModule.setVfModuleName("vfModuleName");
329         vfModule.setModuleIndex(vfModuleIndex);
330         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
331         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
332         modelInfoVfModule.setModelName("vfModuleModelName");
333         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
334         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
335         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
336         vfModule.setModelInfoVfModule(modelInfoVfModule);
337
338         VfModule baseVfModule = new VfModule();
339         baseVfModule.setVfModuleId("baseVfModuleId");
340         baseVfModule.setHeatStackId("baseVfModuleStackId");
341         ModelInfoVfModule baseModelInfoVfModule = new ModelInfoVfModule();
342         baseModelInfoVfModule.setIsBaseBoolean(true);
343         baseVfModule.setModelInfoVfModule(baseModelInfoVfModule);
344         vnf.getVfModules().add(baseVfModule);
345
346         CloudRegion cloudRegion = new CloudRegion();
347         cloudRegion.setLcpCloudRegionId("cloudRegionId");
348         cloudRegion.setTenantId("tenantId");
349
350         OrchestrationContext orchestrationContext = new OrchestrationContext();
351         orchestrationContext.setIsRollbackEnabled(false);
352
353         String sdncVnfQueryResponse = new String(
354                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
355         String sdncVfModuleQueryResponse = new String(Files
356                 .readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
357
358         CreateVfModuleRequest vfModuleVNFAdapterRequest =
359                 vfModuleObjectMapper.createVfModuleRequestMapper(requestContext, cloudRegion, orchestrationContext,
360                         serviceInstance, vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
361
362
363         String jsonToCompare = new String(
364                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleAddonRequest.json")));
365
366         CreateVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, CreateVfModuleRequest.class);
367
368         assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
369     }
370
371     @Test
372     public void buildDirectivesParamFromMapNoValueTagTest() throws Exception {
373
374         Map<String, Object> paramsMap = new HashMap<>();
375         Map<String, Object> srcMap = new HashMap<>();
376         srcMap.put("key1", "value1");
377         srcMap.put("key2", "value2");
378         srcMap.put("key3", null);
379
380         expectedException.expect(MissingValueTagException.class);
381         vfModuleObjectMapper.buildDirectivesParamFromMap(paramsMap, MsoMulticloudUtils.SDNC_DIRECTIVES, srcMap);
382     }
383
384     @Test
385     public void buildDirectivesParamFromMapSunnyDayTest() throws Exception {
386
387         Map<String, Object> paramsMap = new HashMap<>();
388         Map<String, Object> srcMap = new HashMap<>();
389         srcMap.put("key1", "value1");
390         srcMap.put("key2", "value2");
391         String expectedResult =
392                 "[{ \"attributes\": [ {\"attribute_name\": \"key1\", \"attribute_value\": \"value1\"}, {\"attribute_name\": \"key2\", \"attribute_value\": \"value2\"}] }]";
393
394         vfModuleObjectMapper.buildDirectivesParamFromMap(paramsMap, MsoMulticloudUtils.SDNC_DIRECTIVES, srcMap);
395
396         assertEquals(expectedResult, paramsMap.values().toString());
397     }
398
399     @Test
400     public void createVfModuleWithVolumeGroupRequestMapperTest() throws Exception {
401
402         // prepare and set service instance
403         ServiceInstance serviceInstance = new ServiceInstance();
404         serviceInstance.setServiceInstanceId("serviceInstanceId");
405         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
406         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
407         modelInfoServiceInstance.setModelName("serviceModelName");
408         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
409         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
410         modelInfoServiceInstance.setEnvironmentContext("environmentContext");
411         modelInfoServiceInstance.setWorkloadContext("workloadContext");
412         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
413
414         //
415         RequestContext requestContext = new RequestContext();
416         Map<String, Object> userParams = new HashMap<>();
417         userParams.put("key1", "value2");
418         requestContext.setMsoRequestId("requestId");
419         requestContext.setUserParams(userParams);
420         requestContext.setProductFamilyId("productFamilyId");
421
422         GenericVnf vnf = new GenericVnf();
423         vnf.setVnfId("vnfId");
424         vnf.setVnfType("vnfType");
425         vnf.setVnfName("vnfName");
426         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
427         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
428         modelInfoGenericVnf.setModelName("vnfModelName");
429         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
430         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
431         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
432         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
433
434         Integer vfModuleIndex = 1;
435         VfModule vfModule = new VfModule();
436         vfModule.setVfModuleId("vfModuleId");
437         vfModule.setVfModuleName("vfModuleName");
438         vfModule.setModuleIndex(vfModuleIndex);
439         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
440         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
441         modelInfoVfModule.setModelName("vfModuleModelName");
442         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
443         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
444         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
445         vfModule.setModelInfoVfModule(modelInfoVfModule);
446
447         VolumeGroup volumeGroup = new VolumeGroup();
448         volumeGroup.setVolumeGroupId("volumeGroupId");
449         volumeGroup.setHeatStackId("volumeGroupStackId");
450
451         CloudRegion cloudRegion = new CloudRegion();
452         cloudRegion.setLcpCloudRegionId("cloudRegionId");
453         cloudRegion.setTenantId("tenantId");
454
455         OrchestrationContext orchestrationContext = new OrchestrationContext();
456         orchestrationContext.setIsRollbackEnabled(false);
457
458         String sdncVnfQueryResponse = new String(
459                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
460         String sdncVfModuleQueryResponse = new String(Files
461                 .readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
462
463         CreateVfModuleRequest vfModuleVNFAdapterRequest =
464                 vfModuleObjectMapper.createVfModuleRequestMapper(requestContext, cloudRegion, orchestrationContext,
465                         serviceInstance, vnf, vfModule, volumeGroup, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
466
467
468         String jsonToCompare = new String(Files
469                 .readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleWithVolumeGroupRequest.json")));
470
471         CreateVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, CreateVfModuleRequest.class);
472
473         assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
474     }
475
476     @Test
477     public void createVfModuleWithSingleAvailabilityZoneRequestMapperTest() throws Exception {
478
479         // prepare and set service instance
480         ServiceInstance serviceInstance = new ServiceInstance();
481         serviceInstance.setServiceInstanceId("serviceInstanceId");
482         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
483         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
484         modelInfoServiceInstance.setModelName("serviceModelName");
485         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
486         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
487         modelInfoServiceInstance.setEnvironmentContext("environmentContext");
488         modelInfoServiceInstance.setWorkloadContext("workloadContext");
489         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
490
491         RequestContext requestContext = new RequestContext();
492         Map<String, Object> userParams = new HashMap<>();
493         userParams.put("key1", "value2");
494         requestContext.setMsoRequestId("requestId");
495         requestContext.setUserParams(userParams);
496         requestContext.setProductFamilyId("productFamilyId");
497
498         GenericVnf vnf = new GenericVnf();
499         vnf.setVnfId("vnfId");
500         vnf.setVnfType("vnfType");
501         vnf.setVnfName("vnfName");
502         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
503         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
504         modelInfoGenericVnf.setModelName("vnfModelName");
505         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
506         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
507         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
508         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
509
510         Integer vfModuleIndex = 1;
511         VfModule vfModule = new VfModule();
512         vfModule.setVfModuleId("vfModuleId");
513         vfModule.setVfModuleName("vfModuleName");
514         vfModule.setModuleIndex(vfModuleIndex);
515         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
516         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
517         modelInfoVfModule.setModelName("vfModuleModelName");
518         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
519         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
520         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
521         vfModule.setModelInfoVfModule(modelInfoVfModule);
522
523         CloudRegion cloudRegion = new CloudRegion();
524         cloudRegion.setLcpCloudRegionId("cloudRegionId");
525         cloudRegion.setTenantId("tenantId");
526
527         OrchestrationContext orchestrationContext = new OrchestrationContext();
528         orchestrationContext.setIsRollbackEnabled(false);
529
530         String sdncVnfQueryResponse = new String(Files.readAllBytes(
531                 Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopologyWithSingletonArray.json")));
532         String sdncVfModuleQueryResponse = new String(Files
533                 .readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
534
535         CreateVfModuleRequest vfModuleVNFAdapterRequest =
536                 vfModuleObjectMapper.createVfModuleRequestMapper(requestContext, cloudRegion, orchestrationContext,
537                         serviceInstance, vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
538
539
540         String jsonToCompare = new String(Files.readAllBytes(
541                 Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestWithSingleAvailabilityZone.json")));
542
543         CreateVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, CreateVfModuleRequest.class);
544
545         assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
546     }
547
548     @Test
549     public void createVfModuleRequestMapperWithCloudResourcesTest() throws Exception {
550
551         // prepare and set service instance
552         ServiceInstance serviceInstance = new ServiceInstance();
553         serviceInstance.setServiceInstanceId("serviceInstanceId");
554         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
555         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
556         modelInfoServiceInstance.setModelName("serviceModelName");
557         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
558         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
559         modelInfoServiceInstance.setEnvironmentContext("environmentContext");
560         modelInfoServiceInstance.setWorkloadContext("workloadContext");
561         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
562
563         RequestContext requestContext = new RequestContext();
564         Map<String, Object> userParams = new HashMap<>();
565         userParams.put("key1", "value1");
566         requestContext.setMsoRequestId("requestId");
567         requestContext.setUserParams(userParams);
568         requestContext.setProductFamilyId("productFamilyId");
569
570         GenericVnf vnf = new GenericVnf();
571         vnf.setVnfId("vnfId");
572         vnf.setVnfType("vnfType");
573         vnf.setVnfName("vnfName");
574         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
575         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
576         modelInfoGenericVnf.setModelName("vnfModelName");
577         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
578         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
579         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
580         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
581
582         Integer vfModuleIndex = 1;
583         VfModule vfModule = new VfModule();
584         vfModule.setVfModuleId("vfModuleId");
585         vfModule.setVfModuleName("vfModuleName");
586         vfModule.setModuleIndex(vfModuleIndex);
587         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
588         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
589         modelInfoVfModule.setModelName("vfModuleModelName");
590         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
591         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
592         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
593         vfModule.setModelInfoVfModule(modelInfoVfModule);
594
595         CloudRegion cloudRegion = new CloudRegion();
596         cloudRegion.setLcpCloudRegionId("cloudRegionId");
597         cloudRegion.setTenantId("tenantId");
598
599         OrchestrationContext orchestrationContext = new OrchestrationContext();
600         orchestrationContext.setIsRollbackEnabled(false);
601
602         String sdncVnfQueryResponse = new String(Files.readAllBytes(
603                 Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopologyWithCloudResources.json")));
604         String sdncVfModuleQueryResponse = new String(Files.readAllBytes(Paths
605                 .get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopologyWithCloudResources.json")));
606
607         CreateVfModuleRequest vfModuleVNFAdapterRequest =
608                 vfModuleObjectMapper.createVfModuleRequestMapper(requestContext, cloudRegion, orchestrationContext,
609                         serviceInstance, vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
610
611
612         String jsonToCompare = new String(Files.readAllBytes(
613                 Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestWithCloudResources.json")));
614
615         CreateVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, CreateVfModuleRequest.class);
616
617         assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
618     }
619
620     @Test
621     public void createVfModuleRequestMapperDhcpDisabledTest() throws Exception {
622         // prepare and set service instance
623         ServiceInstance serviceInstance = new ServiceInstance();
624         serviceInstance.setServiceInstanceId("serviceInstanceId");
625         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
626         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
627         modelInfoServiceInstance.setModelName("serviceModelName");
628         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
629         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
630         modelInfoServiceInstance.setEnvironmentContext("environmentContext");
631         modelInfoServiceInstance.setWorkloadContext("workloadContext");
632         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
633
634         RequestContext requestContext = new RequestContext();
635         Map<String, Object> userParams = new HashMap<>();
636         userParams.put("key1", "value1");
637         requestContext.setMsoRequestId("requestId");
638         requestContext.setUserParams(userParams);
639         requestContext.setProductFamilyId("productFamilyId");
640
641         GenericVnf vnf = new GenericVnf();
642         vnf.setVnfId("vnfId");
643         vnf.setVnfType("vnfType");
644         vnf.setVnfName("vnfName");
645         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
646         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
647         modelInfoGenericVnf.setModelName("vnfModelName");
648         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
649         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
650         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
651         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
652
653         Integer vfModuleIndex = 1;
654         VfModule vfModule = new VfModule();
655         vfModule.setVfModuleId("vfModuleId");
656         vfModule.setVfModuleName("vfModuleName");
657         vfModule.setModuleIndex(vfModuleIndex);
658         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
659         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
660         modelInfoVfModule.setModelName("vfModuleModelName");
661         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
662         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
663         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
664         vfModule.setModelInfoVfModule(modelInfoVfModule);
665
666         CloudRegion cloudRegion = new CloudRegion();
667         cloudRegion.setLcpCloudRegionId("cloudRegionId");
668         cloudRegion.setTenantId("tenantId");
669
670         OrchestrationContext orchestrationContext = new OrchestrationContext();
671         orchestrationContext.setIsRollbackEnabled(false);
672
673         String sdncVnfQueryResponse = new String(Files.readAllBytes(
674                 Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopologySubnetDhcpDisabled.json")));
675         String sdncVfModuleQueryResponse = new String(Files
676                 .readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
677
678         CreateVfModuleRequest vfModuleVNFAdapterRequest =
679                 vfModuleObjectMapper.createVfModuleRequestMapper(requestContext, cloudRegion, orchestrationContext,
680                         serviceInstance, vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
681
682
683         String jsonToCompare = new String(
684                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestDhcpDisabled.json")));
685
686         CreateVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, CreateVfModuleRequest.class);
687
688         assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
689     }
690
691     @Test
692     public void createVfModuleRequestMapperMultipleDhcpTest() throws Exception {
693         // prepare and set service instance
694         ServiceInstance serviceInstance = new ServiceInstance();
695         serviceInstance.setServiceInstanceId("serviceInstanceId");
696         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
697         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
698         modelInfoServiceInstance.setModelName("serviceModelName");
699         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
700         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
701         modelInfoServiceInstance.setEnvironmentContext("environmentContext");
702         modelInfoServiceInstance.setWorkloadContext("workloadContext");
703         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
704
705         RequestContext requestContext = new RequestContext();
706         Map<String, Object> userParams = new HashMap<>();
707         userParams.put("key1", "value1");
708         requestContext.setMsoRequestId("requestId");
709         requestContext.setUserParams(userParams);
710         requestContext.setProductFamilyId("productFamilyId");
711
712         GenericVnf vnf = new GenericVnf();
713         vnf.setVnfId("vnfId");
714         vnf.setVnfType("vnfType");
715         vnf.setVnfName("vnfName");
716         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
717         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
718         modelInfoGenericVnf.setModelName("vnfModelName");
719         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
720         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
721         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
722         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
723
724         Integer vfModuleIndex = 1;
725         VfModule vfModule = new VfModule();
726         vfModule.setVfModuleId("vfModuleId");
727         vfModule.setVfModuleName("vfModuleName");
728         vfModule.setModuleIndex(vfModuleIndex);
729         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
730         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
731         modelInfoVfModule.setModelName("vfModuleModelName");
732         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
733         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
734         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
735         vfModule.setModelInfoVfModule(modelInfoVfModule);
736
737         CloudRegion cloudRegion = new CloudRegion();
738         cloudRegion.setLcpCloudRegionId("cloudRegionId");
739         cloudRegion.setTenantId("tenantId");
740
741         OrchestrationContext orchestrationContext = new OrchestrationContext();
742         orchestrationContext.setIsRollbackEnabled(false);
743
744         String sdncVnfQueryResponse = new String(Files.readAllBytes(
745                 Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopologySubnetMultipleDhcp.json")));
746         String sdncVfModuleQueryResponse = new String(Files
747                 .readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
748
749         CreateVfModuleRequest vfModuleVNFAdapterRequest =
750                 vfModuleObjectMapper.createVfModuleRequestMapper(requestContext, cloudRegion, orchestrationContext,
751                         serviceInstance, vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
752
753
754         String jsonToCompare = new String(
755                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestMultipleDhcp.json")));
756
757         CreateVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, CreateVfModuleRequest.class);
758
759         assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
760     }
761
762     @Test
763     public void createVfModuleRequestMapperWithNullUserParamsTest() throws Exception {
764
765         // prepare and set service instance
766         ServiceInstance serviceInstance = new ServiceInstance();
767         serviceInstance.setServiceInstanceId("serviceInstanceId");
768         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
769         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
770         modelInfoServiceInstance.setModelName("serviceModelName");
771         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
772         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
773         modelInfoServiceInstance.setEnvironmentContext("environmentContext");
774         modelInfoServiceInstance.setWorkloadContext("workloadContext");
775         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
776
777         RequestContext requestContext = new RequestContext();
778         requestContext.setMsoRequestId("requestId");
779         requestContext.setProductFamilyId("productFamilyId");
780
781         GenericVnf vnf = new GenericVnf();
782         vnf.setVnfId("vnfId");
783         vnf.setVnfType("vnfType");
784         vnf.setVnfName("vnfName");
785         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
786         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
787         modelInfoGenericVnf.setModelName("vnfModelName");
788         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
789         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
790         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
791         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
792
793         Integer vfModuleIndex = 1;
794         VfModule vfModule = new VfModule();
795         vfModule.setVfModuleId("vfModuleId");
796         vfModule.setVfModuleName("vfModuleName");
797         vfModule.setModuleIndex(vfModuleIndex);
798         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
799         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
800         modelInfoVfModule.setModelName("vfModuleModelName");
801         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
802         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
803         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
804         vfModule.setModelInfoVfModule(modelInfoVfModule);
805
806         CloudRegion cloudRegion = new CloudRegion();
807         cloudRegion.setLcpCloudRegionId("cloudRegionId");
808         cloudRegion.setTenantId("tenantId");
809
810         OrchestrationContext orchestrationContext = new OrchestrationContext();
811         orchestrationContext.setIsRollbackEnabled(false);
812
813         String sdncVnfQueryResponse = new String(
814                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVnfTopology.json")));
815         String sdncVfModuleQueryResponse = new String(Files
816                 .readAllBytes(Paths.get(JSON_FILE_LOCATION + "genericResourceApiVfModuleSdncVfModuleTopology.json")));
817
818         CreateVfModuleRequest vfModuleVNFAdapterRequest =
819                 vfModuleObjectMapper.createVfModuleRequestMapper(requestContext, cloudRegion, orchestrationContext,
820                         serviceInstance, vnf, vfModule, null, sdncVnfQueryResponse, sdncVfModuleQueryResponse);
821
822
823         String jsonToCompare = new String(
824                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterCreateVfModuleRequestNoUserParams.json")));
825
826         CreateVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, CreateVfModuleRequest.class);
827
828         assertThat(vfModuleVNFAdapterRequest, sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl"));
829     }
830
831     @Test
832     public void DeleteVfModuleRequestMapperTest() throws Exception {
833         ServiceInstance serviceInstance = new ServiceInstance();
834         serviceInstance.setServiceInstanceId("serviceInstanceId");
835         ModelInfoServiceInstance modelInfoServiceInstance = new ModelInfoServiceInstance();
836         modelInfoServiceInstance.setModelInvariantUuid("serviceModelInvariantUuid");
837         modelInfoServiceInstance.setModelName("serviceModelName");
838         modelInfoServiceInstance.setModelUuid("serviceModelUuid");
839         modelInfoServiceInstance.setModelVersion("serviceModelVersion");
840         modelInfoServiceInstance.setEnvironmentContext("environmentContext");
841         modelInfoServiceInstance.setWorkloadContext("workloadContext");
842         serviceInstance.setModelInfoServiceInstance(modelInfoServiceInstance);
843
844         RequestContext requestContext = new RequestContext();
845         Map<String, Object> userParams = new HashMap<>();
846         userParams.put("key1", "value1");
847         requestContext.setMsoRequestId("requestId");
848         requestContext.setUserParams(userParams);
849         requestContext.setProductFamilyId("productFamilyId");
850
851         GenericVnf vnf = new GenericVnf();
852         vnf.setVnfId("vnfId");
853         vnf.setVnfType("vnfType");
854         vnf.setVnfName("vnfName");
855         ModelInfoGenericVnf modelInfoGenericVnf = new ModelInfoGenericVnf();
856         modelInfoGenericVnf.setModelInvariantUuid("vnfModelInvariantUuid");
857         modelInfoGenericVnf.setModelName("vnfModelName");
858         modelInfoGenericVnf.setModelVersion("vnfModelVersion");
859         modelInfoGenericVnf.setModelUuid("vnfModelUuid");
860         modelInfoGenericVnf.setModelCustomizationUuid("vnfModelCustomizationUuid");
861         vnf.setModelInfoGenericVnf(modelInfoGenericVnf);
862
863         VfModule vfModule = new VfModule();
864         vfModule.setVfModuleId("vfModuleId");
865         vfModule.setVfModuleName("vfModuleName");
866         ModelInfoVfModule modelInfoVfModule = new ModelInfoVfModule();
867         modelInfoVfModule.setModelInvariantUUID("vfModuleModelInvariantUuid");
868         modelInfoVfModule.setModelName("vfModuleModelName");
869         modelInfoVfModule.setModelVersion("vfModuleModelVersion");
870         modelInfoVfModule.setModelUUID("vfModuleModelUuid");
871         modelInfoVfModule.setModelCustomizationUUID("vfModuleModelCustomizationUuid");
872         vfModule.setModelInfoVfModule(modelInfoVfModule);
873
874         CloudRegion cloudRegion = new CloudRegion();
875         cloudRegion.setLcpCloudRegionId("cloudRegionId");
876         cloudRegion.setTenantId("tenantId");
877
878         OrchestrationContext orchestrationContext = new OrchestrationContext();
879         orchestrationContext.setIsRollbackEnabled(false);
880
881         DeleteVfModuleRequest vfModuleVNFAdapterRequest = vfModuleObjectMapper
882                 .deleteVfModuleRequestMapper(requestContext, cloudRegion, serviceInstance, vnf, vfModule);
883
884
885         String jsonToCompare =
886                 new String(Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "vnfAdapterDeleteVfModuleRequest.json")));
887
888         DeleteVfModuleRequest reqMapper1 = omapper.readValue(jsonToCompare, DeleteVfModuleRequest.class);
889
890         assertThat(vfModuleVNFAdapterRequest,
891                 sameBeanAs(reqMapper1).ignoring("messageId").ignoring("notificationUrl").ignoring("vfModuleStackId"));
892     }
893
894     @Test
895     public void networkCloudParamsTest() throws IOException {
896
897         String json = new String(
898                 Files.readAllBytes(Paths.get(JSON_FILE_LOCATION + "grApiVmNetworkSubSectionWith5GParams.json")));
899         GenericResourceApiVmNetworkData network = omapper.readValue(json, GenericResourceApiVmNetworkData.class);
900         Map<String, Object> paramsMap = new HashMap<>();
901         vfModuleObjectMapper.buildVlanInformation(paramsMap, network, "testKey", "testType");
902
903         assertEquals("1,3", paramsMap.get("testKey_testType_private_vlans"));
904         assertEquals("2,3", paramsMap.get("testKey_testType_public_vlans"));
905         assertEquals("1,2,3", paramsMap.get("testKey_testType_guest_vlans"));
906         assertEquals("my-segemntation-id", paramsMap.get("testKey_testType_vlan_filter"));
907     }
908 }