AT&T 1712 and 1802 release code
[so.git] / bpmn / MSOInfrastructureBPMN / src / test / groovy / org / openecomp / mso / bpmn / infrastructure / scripts / DoUpdateNetworkInstanceTest.groovy
1 package org.openecomp.mso.bpmn.infrastructure.scripts\r
2 \r
3 import static org.mockito.Mockito.*\r
4 import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkByIdWithDepth;\r
5 import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkCloudRegion;\r
6 import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkCloudRegion_404;\r
7 import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkVpnBinding;\r
8 import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkTableReference;\r
9 import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkPolicy;\r
10 import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockPutNetworkIdWithDepth;\r
11 import org.camunda.bpm.engine.ProcessEngineServices\r
12 import org.camunda.bpm.engine.RepositoryService\r
13 import org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity\r
14 import org.camunda.bpm.engine.repository.ProcessDefinition\r
15 import org.camunda.bpm.engine.delegate.DelegateExecution\r
16 import org.junit.Before\r
17 import org.junit.Rule\r
18 import org.junit.Test\r
19 import org.junit.runner.RunWith\r
20 import org.mockito.MockitoAnnotations\r
21 import org.mockito.runners.MockitoJUnitRunner\r
22 import org.openecomp.mso.bpmn.common.scripts.MsoUtils\r
23 import org.openecomp.mso.bpmn.core.WorkflowException\r
24 \r
25 import com.github.tomakehurst.wiremock.client.WireMock\r
26 import com.github.tomakehurst.wiremock.junit.WireMockRule\r
27 import org.apache.commons.lang3.*\r
28 \r
29 \r
30 @RunWith(MockitoJUnitRunner.class)\r
31 class DoUpdateNetworkInstanceTest  {\r
32 \r
33         @Rule\r
34         public WireMockRule wireMockRule = new WireMockRule(8090);\r
35 \r
36                 def utils = new MsoUtils()\r
37                 String Prefix="UPDNETI_"\r
38 \r
39                 String jsonIncomingRequest =\r
40                 """{ "requestDetails": {\r
41               "modelInfo": {\r
42                         "modelType": "network",\r
43                         "modelCustomizationId": "f21df226-8093-48c3-be7e-0408fcda0422",\r
44                         "modelName": "CONTRAIL_EXTERNAL",\r
45                         "modelVersion": "1.0"\r
46                   },\r
47                   "cloudConfiguration": {\r
48                         "lcpCloudRegionId": "RDM2WAGPLCP",\r
49                         "tenantId": "7dd5365547234ee8937416c65507d266"\r
50                   },\r
51                   "requestInfo": {\r
52                         "instanceName": "MNS-25180-L-01-dmz_direct_net_1",\r
53                         "source": "VID",\r
54                         "callbackUrl": "",\r
55             "suppressRollback": true,\r
56                 "productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"\r
57                   },\r
58                   "relatedInstanceList": [\r
59                         {\r
60                         "relatedInstance": {\r
61                                 "instanceId": "f70e927b-6087-4974-9ef8-c5e4d5847ca4",\r
62                                 "modelInfo": {\r
63                                         "modelType": "serviceT",\r
64                                         "modelId": "modelI",\r
65                                         "modelNameVersionId": "modelNameVersionI",\r
66                                         "modelName": "modleNam",\r
67                                         "modelVersion": "1"\r
68                                 }\r
69                         }\r
70                 }\r
71                   ],\r
72                   "requestParameters": {\r
73                         "userParams": [\r
74                {\r
75                                  "name": "someUserParam1",\r
76                                  "value": "someValue1"\r
77                            }\r
78             ]\r
79                   }\r
80   }}"""\r
81 \r
82 \r
83                   String jsonIncomingRequest_MissingCloudRegion =\r
84                 """{ "requestDetails": {\r
85               "modelInfo": {\r
86                         "modelType": "network",\r
87                         "modelCustomizationId": "f21df226-8093-48c3-be7e-0408fcda0422",\r
88                         "modelName": "CONTRAIL_EXTERNAL",\r
89                         "modelVersion": "1.0"\r
90                   },\r
91                   "cloudConfiguration": {\r
92                         "tenantId": "7dd5365547234ee8937416c65507d266"\r
93                   },\r
94                   "requestInfo": {\r
95                         "instanceName": "MNS-25180-L-01-dmz_direct_net_1",\r
96                         "source": "VID",\r
97                         "callbackUrl": "",\r
98             "suppressRollback": true,\r
99                 "productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"\r
100                   },\r
101                   "relatedInstanceList": [\r
102                         {\r
103                         "relatedInstance": {\r
104                                 "instanceId": "f70e927b-6087-4974-9ef8-c5e4d5847ca4",\r
105                                 "modelInfo": {\r
106                                         "modelType": "serviceT",\r
107                                         "modelId": "modelI",\r
108                                         "modelNameVersionId": "modelNameVersionI",\r
109                                         "modelName": "modleNam",\r
110                                         "modelVersion": "1"\r
111                                 }\r
112                         }\r
113                 }\r
114                   ],\r
115                   "requestParameters": {\r
116                         "userParams": []\r
117                   }\r
118   }}"""\r
119 \r
120 \r
121 \r
122    String expectedNetworkRequestMissingNetworkId =\r
123    """<network-request xmlns="http://www.w3.org/2001/XMLSchema">\r
124    <request-info>\r
125       <request-id>88f65519-9a38-4c4b-8445-9eb4a5a5af56</request-id>\r
126       <action>UPDATE</action>\r
127       <source>VID</source>\r
128       <service-instance-id>f70e927b-6087-4974-9ef8-c5e4d5847ca4</service-instance-id>\r
129    </request-info>\r
130    <network-inputs>\r
131       <network-id/>\r
132       <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
133       <network-type>CONTRAIL_EXTERNAL</network-type>\r
134       <modelCustomizationId>f21df226-8093-48c3-be7e-0408fcda0422</modelCustomizationId>\r
135       <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
136       <tenant-id>7dd5365547234ee8937416c65507d266</tenant-id>\r
137       <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
138       <backout-on-failure>false</backout-on-failure>\r
139       <sdncVersion>1610</sdncVersion>\r
140    </network-inputs>\r
141    <network-params>\r
142       <param name="some_user_param1">someValue1</param>\r
143    </network-params>\r
144 </network-request>"""\r
145 \r
146 \r
147 String expectedNetworkRequestMissingCloudRegion =\r
148 """<network-request xmlns="http://www.w3.org/2001/XMLSchema">\r
149    <request-info>\r
150       <request-id>88f65519-9a38-4c4b-8445-9eb4a5a5af56</request-id>\r
151       <action>UPDATE</action>\r
152       <source>VID</source>\r
153       <service-instance-id>f70e927b-6087-4974-9ef8-c5e4d5847ca4</service-instance-id>\r
154    </request-info>\r
155    <network-inputs>\r
156       <network-id>networkId</network-id>\r
157       <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
158       <network-type>CONTRAIL_EXTERNAL</network-type>\r
159       <modelCustomizationId>f21df226-8093-48c3-be7e-0408fcda0422</modelCustomizationId>\r
160       <aic-cloud-region>null</aic-cloud-region>\r
161       <tenant-id>7dd5365547234ee8937416c65507d266</tenant-id>\r
162       <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
163       <backout-on-failure>false</backout-on-failure>\r
164       <sdncVersion>null</sdncVersion>\r
165    </network-inputs>\r
166    <network-params/>\r
167 </network-request>"""\r
168 \r
169 String expectedNetworkInputMissingCloudRegion =\r
170 """<network-inputs xmlns="http://www.w3.org/2001/XMLSchema">\r
171    <network-id>networkId</network-id>\r
172    <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
173    <network-type>CONTRAIL_EXTERNAL</network-type>\r
174    <modelCustomizationId>f21df226-8093-48c3-be7e-0408fcda0422</modelCustomizationId>\r
175    <aic-cloud-region>null</aic-cloud-region>\r
176    <tenant-id>7dd5365547234ee8937416c65507d266</tenant-id>\r
177    <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
178    <backout-on-failure>false</backout-on-failure>\r
179    <sdncVersion>null</sdncVersion>\r
180 </network-inputs>"""\r
181 \r
182         String networkInputsMissingName =\r
183  """<network-inputs xmlns="http://org.openecomp/mso/infra/vnf-request/v1">\r
184         <network-name/>\r
185         <network-type>CONTRAIL_EXTERNAL</network-type>\r
186         <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
187         <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
188         <tenant-id>e81d842d3e8b45c5a59f57cd76af3aaf</tenant-id>\r
189  </network-inputs>"""\r
190 \r
191 String networkInputsMissingCloudRegion =\r
192 """<network-inputs xmlns="http://org.openecomp/mso/infra/vnf-request/v1">\r
193    <network-name>HSL_direct_net_2</network-name>\r
194    <network-type>CONTRAIL_EXTERNAL</network-type>\r
195    <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
196    <aic-cloud-region/>\r
197    <tenant-id>e81d842d3e8b45c5a59f57cd76af3aaf</tenant-id>\r
198 </network-inputs>"""\r
199 \r
200           // expectedNetworkRequest\r
201           String expectedNetworkRequest =\r
202   """<network-request xmlns="http://www.w3.org/2001/XMLSchema">\r
203    <request-info>\r
204       <request-id>88f65519-9a38-4c4b-8445-9eb4a5a5af56</request-id>\r
205       <action>UPDATE</action>\r
206       <source>VID</source>\r
207       <service-instance-id>f70e927b-6087-4974-9ef8-c5e4d5847ca4</service-instance-id>\r
208    </request-info>\r
209    <network-inputs>\r
210       <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
211       <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
212       <network-type>CONTRAIL_EXTERNAL</network-type>\r
213       <modelCustomizationId>f21df226-8093-48c3-be7e-0408fcda0422</modelCustomizationId>\r
214       <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
215       <tenant-id>7dd5365547234ee8937416c65507d266</tenant-id>\r
216       <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
217       <backout-on-failure>false</backout-on-failure>\r
218       <sdncVersion>1610</sdncVersion>\r
219    </network-inputs>\r
220    <network-params>\r
221       <param name="some_user_param1">someValue1</param>\r
222    </network-params>\r
223 </network-request>"""\r
224 \r
225 String expectedNetworkInputs =\r
226 """<network-inputs xmlns="http://www.w3.org/2001/XMLSchema">\r
227    <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
228    <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
229    <network-type>CONTRAIL_EXTERNAL</network-type>\r
230    <modelCustomizationId>f21df226-8093-48c3-be7e-0408fcda0422</modelCustomizationId>\r
231    <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
232    <tenant-id>7dd5365547234ee8937416c65507d266</tenant-id>\r
233    <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
234    <backout-on-failure>false</backout-on-failure>\r
235    <sdncVersion>1610</sdncVersion>\r
236 </network-inputs>"""\r
237 \r
238 String expectedVperNetworkRequest =\r
239 """<network-request xmlns="http://www.w3.org/2001/XMLSchema">\r
240    <request-info>\r
241       <request-id>88f65519-9a38-4c4b-8445-9eb4a5a5af56</request-id>\r
242       <action>UPDATE</action>\r
243       <source>VID</source>\r
244       <service-instance-id>f70e927b-6087-4974-9ef8-c5e4d5847ca4</service-instance-id>\r
245    </request-info>\r
246    <network-inputs>\r
247       <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
248       <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
249       <network-type>CONTRAIL_EXTERNAL</network-type>\r
250       <subscription-service-type>MSO-dev-service-type</subscription-service-type>\r
251       <global-customer-id>globalId_45678905678</global-customer-id>\r
252       <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
253       <tenant-id>7dd5365547234ee8937416c65507d266</tenant-id>\r
254       <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
255       <backout-on-failure>false</backout-on-failure>\r
256       <failIfExist>false</failIfExist>\r
257       <networkModelInfo>\r
258          <modelName>CONTRAIL_EXTERNAL</modelName>\r
259          <modelUuid>sn5256d1-5a33-55df-13ab-12abad84e111</modelUuid>\r
260          <modelInvariantUuid>sn5256d1-5a33-55df-13ab-12abad84e764</modelInvariantUuid>\r
261          <modelVersion>1</modelVersion>\r
262          <modelCustomizationUuid>sn5256d1-5a33-55df-13ab-12abad84e222</modelCustomizationUuid>\r
263       </networkModelInfo>\r
264       <serviceModelInfo>\r
265          <modelName/>\r
266          <modelUuid/>\r
267          <modelInvariantUuid/>\r
268          <modelVersion/>\r
269          <modelCustomizationUuid/>\r
270       </serviceModelInfo>\r
271       <sdncVersion>1702</sdncVersion>\r
272    </network-inputs>\r
273    <network-params/>\r
274 </network-request>"""\r
275 \r
276 String expectedVperNetworkInputs = \r
277 """<network-inputs xmlns="http://www.w3.org/2001/XMLSchema">\r
278    <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
279    <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
280    <network-type>CONTRAIL_EXTERNAL</network-type>\r
281    <subscription-service-type>MSO-dev-service-type</subscription-service-type>\r
282    <global-customer-id>globalId_45678905678</global-customer-id>\r
283    <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
284    <tenant-id>7dd5365547234ee8937416c65507d266</tenant-id>\r
285    <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
286    <backout-on-failure>false</backout-on-failure>\r
287    <failIfExist>false</failIfExist>\r
288    <networkModelInfo>\r
289       <modelName>CONTRAIL_EXTERNAL</modelName>\r
290       <modelUuid>sn5256d1-5a33-55df-13ab-12abad84e111</modelUuid>\r
291       <modelInvariantUuid>sn5256d1-5a33-55df-13ab-12abad84e764</modelInvariantUuid>\r
292       <modelVersion>1</modelVersion>\r
293       <modelCustomizationUuid>sn5256d1-5a33-55df-13ab-12abad84e222</modelCustomizationUuid>\r
294    </networkModelInfo>\r
295    <serviceModelInfo>\r
296       <modelName/>\r
297       <modelUuid/>\r
298       <modelInvariantUuid/>\r
299       <modelVersion/>\r
300       <modelCustomizationUuid/>\r
301    </serviceModelInfo>\r
302    <sdncVersion>1702</sdncVersion>\r
303 </network-inputs>"""\r
304 \r
305 String expectedNetworkInputsMissingNetworkId =\r
306 """<network-inputs xmlns="http://www.w3.org/2001/XMLSchema">\r
307    <network-id/>\r
308    <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
309    <network-type>CONTRAIL_EXTERNAL</network-type>\r
310    <modelCustomizationId>f21df226-8093-48c3-be7e-0408fcda0422</modelCustomizationId>\r
311    <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
312    <tenant-id>7dd5365547234ee8937416c65507d266</tenant-id>\r
313    <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
314    <backout-on-failure>false</backout-on-failure>\r
315    <sdncVersion>1610</sdncVersion>\r
316 </network-inputs>"""\r
317 \r
318 \r
319   String NetworkRequest_noPhysicalName =\r
320   """<vnfreq:network-request xmlns:vnfreq="http://org.openecomp/mso/infra/vnf-request/v1">\r
321    <vnfreq:request-info>\r
322       <vnfreq:request-id>1ef47428-cade-45bd-a103-0751e8b2deb0</vnfreq:request-id>\r
323       <vnfreq:action>UPDATE</vnfreq:action>\r
324       <vnfreq:source>PORTAL</vnfreq:source>\r
325    </vnfreq:request-info>\r
326    <vnfreq:network-inputs>\r
327       <vnfreq:network-name>MNS-25180-L-01-dmz_direct_net_1</vnfreq:network-name>\r
328       <vnfreq:network-type>CONTRAIL_EXTERNAL</vnfreq:network-type>\r
329           <vnfreq:modelCustomizationId></vnfreq:modelCustomizationId>\r
330       <vnfreq:service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</vnfreq:service-id>\r
331       <vnfreq:aic-cloud-region>RDM2WAGPLCP</vnfreq:aic-cloud-region>\r
332       <vnfreq:tenant-id>7dd5365547234ee8937416c65507d266</vnfreq:tenant-id>\r
333       <vnfreq:vlans>3008</vnfreq:vlans>\r
334    </vnfreq:network-inputs>\r
335    <vnfreq:network-params>\r
336    <network-params>\r
337       <param name="dhcp-enabled">true</param>\r
338       <param name="serviceId">a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</param>\r
339       <param name="cidr-mask">true</param>\r
340           <param name="backoutOnFailure">true</param>\r
341           <param name="gateway-address">10.10.125.1</param>\r
342    </network-params>\r
343    </vnfreq:network-params>\r
344 </vnfreq:network-request>"""\r
345 \r
346   String vnfRequestFakeRegion =\r
347   """<vnfreq:network-request xmlns:vnfreq="http://org.openecomp/mso/infra/vnf-request/v1">\r
348    <vnfreq:request-info>\r
349       <vnfreq:request-id>1ef47428-cade-45bd-a103-0751e8b2deb0</vnfreq:request-id>\r
350       <vnfreq:action>UPDATE</vnfreq:action>\r
351       <vnfreq:source>PORTAL</vnfreq:source>\r
352    </vnfreq:request-info>\r
353    <vnfreq:network-inputs>\r
354       <vnfreq:network-name>MNS-25180-L-01-dmz_direct_net_1</vnfreq:network-name>\r
355       <vnfreq:network-type>CONTRAIL_EXTERNAL</vnfreq:network-type>\r
356       <vnfreq:service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</vnfreq:service-id>\r
357       <vnfreq:aic-cloud-region>MDTWNJ21</vnfreq:aic-cloud-region>\r
358       <vnfreq:tenant-id>7dd5365547234ee8937416c65507d266</vnfreq:tenant-id>\r
359    </vnfreq:network-inputs>\r
360    <vnfreq:network-params>\r
361       <param name="shared">1</param>\r
362       <param name="external">0</param>\r
363    </vnfreq:network-params>\r
364 </vnfreq:network-request>"""\r
365 \r
366   // expectedNetworkRequest\r
367           String expectedNetworkRequest_Outputs =\r
368   """<vnfreq:network-request xmlns:vnfreq="http://org.openecomp/mso/infra/vnf-request/v1">\r
369    <vnfreq:request-info>\r
370       <vnfreq:request-id>1ef47428-cade-45bd-a103-0751e8b2deb0</vnfreq:request-id>\r
371       <vnfreq:action>UPDATE</vnfreq:action>\r
372       <vnfreq:source>PORTAL</vnfreq:source>\r
373    </vnfreq:request-info>\r
374    <vnfreq:network-inputs>\r
375       <vnfreq:network-name>MNS-25180-L-01-dmz_direct_net_1</vnfreq:network-name>\r
376       <vnfreq:network-type>CONTRAIL_EXTERNAL</vnfreq:network-type>\r
377       <vnfreq:service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</vnfreq:service-id>\r
378       <vnfreq:aic-cloud-region>RDM2WAGPLCP</vnfreq:aic-cloud-region>\r
379       <vnfreq:tenant-id>7dd5365547234ee8937416c65507d266</vnfreq:tenant-id>\r
380    </vnfreq:network-inputs>\r
381    <vnfreq:network-outputs>\r
382       <vnfreq:network-name>MNS-25180-L-01-dmz_direct_net_1</vnfreq:network-name>\r
383       <vnfreq:network-id>bdc5efe8-404a-409b-85f6-0dcc9eebae30</vnfreq:network-id>\r
384    </vnfreq:network-outputs>\r
385    <vnfreq:network-params>\r
386       <param name="shared">1</param>\r
387       <param name="external">0</param>\r
388    </vnfreq:network-params>\r
389 </vnfreq:network-request>"""\r
390 \r
391 \r
392   String networkInputs =\r
393   """<network-inputs xmlns="http://org.openecomp/mso/infra/vnf-request/v1">\r
394    <network-id>bdc5efe8-404a-409b-85f6-0dcc9eebae30</network-id>\r
395    <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
396    <network-type>CONTRAIL_EXTERNAL</network-type>\r
397    <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
398    <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
399    <tenant-id>e81d842d3e8b45c5a59f57cd76af3aaf</tenant-id>\r
400 </network-inputs>"""\r
401 \r
402           String networkOutputs =\r
403         """<network-outputs>\r
404                    <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
405                    <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
406                  </network-outputs>"""\r
407 \r
408           String queryAAIResponse =\r
409                   """<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"\r
410                    statusCode="200">\r
411    <rest:headers>\r
412       <rest:header name="Transfer-Encoding" value="chunked"/>\r
413       <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>\r
414       <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>\r
415       <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>\r
416       <rest:header name="Content-Type" value="application/xml"/>\r
417       <rest:header name="Server" value="Apache-Coyote/1.1"/>\r
418       <rest:header name="Cache-Control" value="private"/>\r
419    </rest:headers>\r
420    <rest:payload contentType="text/xml">\r
421       <l3-network xmlns="http://org.openecomp.aai.inventory/v3">\r
422          <network-id>bdc5efe8-404a-409b-85f6-0dcc9eebae30</network-id>\r
423          <network-name>HSL_direct_net_2</network-name>\r
424          <network-type>CONTRAIL_EXTERNAL</network-type>\r
425          <network-role>dmz_direct</network-role>\r
426          <network-technology>contrail</network-technology>\r
427          <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
428          <network-role-instance>0</network-role-instance>\r
429          <orchestration-status>pending-delete</orchestration-status>\r
430          <subnets>\r
431             <subnet>\r
432                <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>\r
433                <gateway-address>107.239.52.1</gateway-address>\r
434                <network-start-address>107.239.52.0</network-start-address>\r
435                <cidr-mask>24</cidr-mask>\r
436                <ip-version>4</ip-version>\r
437                <orchestration-status>pending-delete</orchestration-status>\r
438                <dhcp-enabled>true</dhcp-enabled>\r
439                <relationship-list/>\r
440             </subnet>\r
441          </subnets>\r
442          <relationship-list>\r
443             <relationship>\r
444                <related-to>vpn-binding</related-to>\r
445                <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>\r
446                <relationship-data>\r
447                   <relationship-key>vpn-binding.vpn-id</relationship-key>\r
448                   <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>\r
449                </relationship-data>\r
450             </relationship>\r
451             <relationship>\r
452                <related-to>vpn-binding</related-to>\r
453                <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>\r
454                <relationship-data>\r
455                   <relationship-key>vpn-binding.vpn-id</relationship-key>\r
456                   <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>\r
457                </relationship-data>\r
458             </relationship>\r
459             <relationship>\r
460                <related-to>tenant</related-to>\r
461                <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>\r
462                <relationship-data>\r
463                   <relationship-key>tenant.tenant-id</relationship-key>\r
464                   <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>\r
465                </relationship-data>\r
466             </relationship>\r
467          </relationship-list>\r
468       </l3-network>\r
469    </rest:payload>\r
470 </rest:RESTResponse>"""\r
471 \r
472           String queryIdAIIResponse =\r
473           """<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"\r
474                    statusCode="200">\r
475    <rest:headers>\r
476       <rest:header name="Transfer-Encoding" value="chunked"/>\r
477       <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>\r
478       <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>\r
479       <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>\r
480       <rest:header name="Content-Type" value="application/xml"/>\r
481       <rest:header name="Server" value="Apache-Coyote/1.1"/>\r
482       <rest:header name="Cache-Control" value="private"/>\r
483    </rest:headers>\r
484    <rest:payload contentType="text/xml">\r
485       <l3-network xmlns="http://org.openecomp.aai.inventory/v6">\r
486          <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
487          <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
488          <network-type>CONTRAIL_EXTERNAL</network-type>\r
489          <network-role>dmz_direct</network-role>\r
490          <network-technology>contrail</network-technology>\r
491          <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
492          <network-role-instance>0</network-role-instance>\r
493                  <resource-version>l3-version</resource-version>\r
494          <orchestration-status>pending-delete</orchestration-status>\r
495              <heat-stack-id>ST_2Bindings_6006/55288ef0-595c-47d3-819e-cf93aaac6326</heat-stack-id>\r
496                  <physical-network-name>networkName</physical-network-name>\r
497              <is-provider-network>false</is-provider-network>\r
498                  <is-shared-network>true</is-shared-network>\r
499                  <is-external-network>false</is-external-network>\r
500          <subnets>\r
501             <subnet>\r
502                <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>\r
503                <gateway-address>107.239.52.1</gateway-address>\r
504                <network-start-address>107.239.52.0</network-start-address>\r
505                <cidr-mask>24</cidr-mask>\r
506                <ip-version>4</ip-version>\r
507                <orchestration-status>pending-update</orchestration-status>\r
508                <dhcp-enabled>true</dhcp-enabled>\r
509                            <subnet-name>subnetName</subnet-name>\r
510                            <ip-assignment-direction>true</ip-assignment-direction>\r
511                            <host-routes>\r
512                                         <host-route>\r
513                                                 <host-route-id>400d286b-7e44-4514-b9b3-f70f7360ff32</host-route-id>\r
514                                                 <route-prefix>172.20.1.0/24</route-prefix>\r
515                                                 <next-hop>10.102.200.1</next-hop>\r
516                                                 <next-hop-type>ip-address</next-hop-type>\r
517                                                 <resource-version>1505857300987</resource-version>\r
518                                         </host-route>\r
519                                                 <host-route>\r
520                                                 <host-route-id>6f038013-8b15-4eb8-914b-507489fbc8ee</host-route-id>\r
521                                                 <route-prefix>10.102.0.0/16</route-prefix>\r
522                                                 <next-hop>10.102.200.1</next-hop>\r
523                                                 <next-hop-type>ip-address</next-hop-type>\r
524                                                 <resource-version>1505857301151</resource-version>\r
525                                         </host-route>\r
526                                         <host-route>\r
527                                                 <host-route-id>8811c5f8-f1ed-4fa0-a505-e1be60396e28</host-route-id>\r
528                                                 <route-prefix>192.168.2.0/25</route-prefix>\r
529                                                 <next-hop>10.102.200.1</next-hop>\r
530                                                 <resource-version>1505857301954</resource-version>\r
531                                         </host-route>\r
532                            </host-routes>\r
533                <relationship-list/>\r
534             </subnet>\r
535             <subnet>\r
536                <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>\r
537                <gateway-address>107.239.52.1</gateway-address>\r
538                <network-start-address>107.239.52.0</network-start-address>\r
539                <cidr-mask>24</cidr-mask>\r
540                <ip-version>4</ip-version>\r
541                <orchestration-status>pending-delete</orchestration-status>\r
542                <dhcp-enabled>true</dhcp-enabled>\r
543                            <subnet-name>subnetName</subnet-name>\r
544                            <ip-assignment-direction>true</ip-assignment-direction>\r
545                            <host-routes>\r
546                                         <host-route>\r
547                                                 <host-route-id>400d286b-7e44-4514-b9b3-f70f7360ff32</host-route-id>\r
548                                                 <route-prefix>172.20.1.0/24</route-prefix>\r
549                                                 <next-hop>10.102.200.1</next-hop>\r
550                                                 <resource-version>1505857300987</resource-version>\r
551                                         </host-route>\r
552                            </host-routes>\r
553                <relationship-list/>\r
554             </subnet>\r
555          </subnets>\r
556                  <segmentation-assignments>\r
557                         <segmentation-id>414</segmentation-id>\r
558                         <resource-version>4132176</resource-version>\r
559                  </segmentation-assignments>\r
560                  <segmentation-assignments>\r
561                         <segmentation-id>415</segmentation-id>\r
562                         <resource-version>4132176</resource-version>\r
563                  </segmentation-assignments>\r
564                  <ctag-assignments>\r
565                          <ctag-assignment>\r
566                                  <vlan-id-inner>inner</vlan-id-inner>\r
567                                  <resource-version>ctag-version</resource-version>\r
568                      <relationship-list>\r
569                                         <relationship>\r
570                                            <related-to>tenant</related-to>\r
571                                            <related-link>https://aai-ext1.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/897deadc2b954a6bac6d3c197fb3525e/</related-link>\r
572                                            <relationship-data>\r
573                                                   <relationship-key>tenant.tenant-id</relationship-key>\r
574                                                   <relationship-value>897deadc2b954a6bac6d3c197fb3525e</relationship-value>\r
575                                            </relationship-data>\r
576                                            <related-to-property>\r
577                                                   <property-key>tenant.tenant-name</property-key>\r
578                                                   <property-value>MSOTest1</property-value>\r
579                                            </related-to-property>\r
580                                         </relationship>\r
581                                         <relationship>\r
582                                            <related-to>vpn-binding</related-to>\r
583                                            <related-link>https://aai-ext1.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/a290b841-f672-44dd-b9cd-6f8c20d7d8c8/</related-link>\r
584                                            <relationship-data>\r
585                                                   <relationship-key>vpn-binding.vpn-id</relationship-key>\r
586                                                   <relationship-value>a290b841-f672-44dd-b9cd-6f8c20d7d8c8</relationship-value>\r
587                                            </relationship-data>\r
588                                            <related-to-property>\r
589                                                   <property-key>vpn-binding.vpn-name</property-key>\r
590                                                   <property-value>oam_protected_net_6_MTN5_msotest2</property-value>\r
591                                            </related-to-property>\r
592                                         </relationship>\r
593                                         <relationship>\r
594                                            <related-to>vpn-binding</related-to>\r
595                                            <related-link>https://aai-ext1.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/24a4b507-853a-4a38-99aa-05fcc54be24d/</related-link>\r
596                                            <relationship-data>\r
597                                                   <relationship-key>vpn-binding.vpn-id</relationship-key>\r
598                                                   <relationship-value>24a4b507-853a-4a38-99aa-05fcc54be24d</relationship-value>\r
599                                            </relationship-data>\r
600                                            <related-to-property>\r
601                                                   <property-key>vpn-binding.vpn-name</property-key>\r
602                                                   <property-value>oam_protected_net_6_MTN5_msotest1</property-value>\r
603                                            </related-to-property>\r
604                                         </relationship>\r
605                                  </relationship-list>\r
606                                 </ctag-assignment>\r
607                  </ctag-assignments>\r
608          <relationship-list>\r
609             <relationship>\r
610                <related-to>vpn-binding</related-to>\r
611                <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>\r
612                <relationship-data>\r
613                   <relationship-key>vpn-binding.vpn-id</relationship-key>\r
614                   <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>\r
615                </relationship-data>\r
616             </relationship>\r
617             <relationship>\r
618                <related-to>vpn-binding</related-to>\r
619                <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>\r
620                <relationship-data>\r
621                   <relationship-key>vpn-binding.vpn-id</relationship-key>\r
622                   <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>\r
623                </relationship-data>\r
624             </relationship>\r
625             <relationship>\r
626                <related-to>tenant</related-to>\r
627                <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>\r
628                <relationship-data>\r
629                   <relationship-key>tenant.tenant-id</relationship-key>\r
630                   <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>\r
631                </relationship-data>\r
632             </relationship>\r
633                         <relationship>\r
634                           <related-to>network-policy</related-to>\r
635                           <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg</related-link>\r
636                           <relationship-data>\r
637                                   <relationship-key>network-policy.network-policy-id</relationship-key>\r
638                                   <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0cg</relationship-value>\r
639                           </relationship-data>\r
640                         </relationship>\r
641                         <relationship>\r
642                            <related-to>route-table-reference</related-to>\r
643                        <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN1</related-link>\r
644                            <relationship-data>\r
645                                   <relationship-key>route-table-reference.route-table-reference-id</relationship-key>\r
646                                   <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>\r
647                            </relationship-data>\r
648                         </relationship>\r
649                         <relationship>\r
650                            <related-to>route-table-reference</related-to>\r
651                        <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN2</related-link>\r
652                            <relationship-data>\r
653                                   <relationship-key>route-table-reference.route-table-reference-id</relationship-key>\r
654                                   <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>\r
655                            </relationship-data>\r
656                         </relationship>\r
657          </relationship-list>\r
658       </l3-network>\r
659    </rest:payload>\r
660 </rest:RESTResponse>"""\r
661 \r
662           String queryIdAIIResponseTestScenario01 =\r
663   """<?xml version="1.0" encoding="UTF-8"?>\r
664 <l3-network xmlns="http://org.openecomp.aai.inventory/v7">\r
665         <network-id>4da55fe4-7a9e-478c-a434-8a98d62265ab</network-id>\r
666         <network-name>GN_EVPN_direct_net_0_ST1</network-name>\r
667         <network-type>CONTRAIL30_BASIC</network-type>\r
668         <network-role>GN_EVPN_direct</network-role>\r
669         <network-technology>contrail</network-technology>\r
670         <is-bound-to-vpn>false</is-bound-to-vpn>\r
671         <service-id>9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
672         <network-role-instance>0</network-role-instance>\r
673         <resource-version>1465398611</resource-version>\r
674         <orchestration-status>pending-delete</orchestration-status>\r
675         <physical-network-name>networkName</physical-network-name>\r
676         <is-provider-network>false</is-provider-network>\r
677         <is-shared-network>true</is-shared-network>\r
678         <is-external-network>false</is-external-network>\r
679         <subnets>\r
680                 <subnet>\r
681                         <subnet-id>cb1a7b47-5428-44c9-89c2-8b17541c3228</subnet-id>\r
682                         <gateway-address>108.239.40.1</gateway-address>\r
683                         <network-start-address>108.239.40.0</network-start-address>\r
684                         <cidr-mask>28</cidr-mask>\r
685                         <ip-version>4</ip-version>\r
686                         <orchestration-status>pending-delete</orchestration-status>\r
687                         <dhcp-enabled>true</dhcp-enabled>\r
688                         <dhcp-start>108.239.40.0</dhcp-start>\r
689                         <dhcp-end>108.239.40.0</dhcp-end>\r
690                         <resource-version>1465398611</resource-version>\r
691                     <subnet-name>subnetName</subnet-name>\r
692                         <relationship-list />\r
693                 </subnet>\r
694                 <subnet>\r
695                         <subnet-id>e2cc7c14-90f0-4205-840d-b4e07f04e621</subnet-id>\r
696                         <gateway-address>2606:ae00:2e01:604::1</gateway-address>\r
697                         <network-start-address>2606:ae00:2e01:604::</network-start-address>\r
698                         <cidr-mask>64</cidr-mask>\r
699                         <ip-version>6</ip-version>\r
700                         <orchestration-status>pending-delete</orchestration-status>\r
701                         <dhcp-enabled>true</dhcp-enabled>\r
702                         <dhcp-start>2606:ae00:2e01:604::</dhcp-start>\r
703                         <dhcp-end>2606:ae00:2e01:604::</dhcp-end>\r
704                         <resource-version>1465398611</resource-version>\r
705                         <subnet-name>subnetName</subnet-name>\r
706                         <relationship-list />\r
707                 </subnet>\r
708         </subnets>\r
709         <ctag-assignments />\r
710         <segmentation-assignments>\r
711                 <segmentation-id>416</segmentation-id>\r
712                 <resource-version>4132176</resource-version>\r
713         </segmentation-assignments>\r
714         <relationship-list>\r
715                 <relationship>\r
716                         <related-to>cloud-region</related-to>\r
717                         <related-link>https://mtanjv9aaas03.aic.cip.com:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/\r
718                         </related-link>\r
719                         <relationship-data>\r
720                                 <relationship-key>cloud-region.cloud-region-id</relationship-key>\r
721                                 <relationship-value>AAIAIC25</relationship-value>\r
722                         </relationship-data>\r
723                         <relationship-data>\r
724                                 <relationship-key>cloud-region.cloud-owner</relationship-key>\r
725                                 <relationship-value>att-aic</relationship-value>\r
726                         </relationship-data>\r
727                         <related-to-property>\r
728                                 <property-key>cloud-region.owner-defined-type</property-key>\r
729                                 <property-value></property-value>\r
730                         </related-to-property>\r
731                 </relationship>\r
732                 <relationship>\r
733                         <related-to>tenant</related-to>\r
734                         <related-link>https://mtanjv9aaas03.aic.cip.com:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant/4ae1d3446a4c48b2bec44b6cfba06d68/</related-link>\r
735                         <relationship-data>\r
736                                 <relationship-key>tenant.tenant-id</relationship-key>\r
737                                 <relationship-value>4ae1d3446a4c48b2bec44b6cfba06d68\r
738                                 </relationship-value>\r
739                         </relationship-data>\r
740                         <relationship-data>\r
741                                 <relationship-key>cloud-region.cloud-owner</relationship-key>\r
742                                 <relationship-value>att-aic</relationship-value>\r
743                         </relationship-data>\r
744                         <relationship-data>\r
745                                 <relationship-key>cloud-region.cloud-region-id</relationship-key>\r
746                                 <relationship-value>AAIAIC25</relationship-value>\r
747                         </relationship-data>\r
748                         <related-to-property>\r
749                                 <property-key>tenant.tenant-name</property-key>\r
750                                 <property-value>Ruchira Contrail 3.0 test</property-value>\r
751                         </related-to-property>\r
752                 </relationship>\r
753                 <relationship>\r
754                         <related-to>vpn-binding</related-to>\r
755                         <related-link>https://mtanjv9aaas03.aic.cip.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>\r
756                         <relationship-data>\r
757                                 <relationship-key>vpn-binding.vpn-id</relationship-key>\r
758                                 <relationship-value>9a7b327d9-287aa00-82c4b0-100001</relationship-value>\r
759                         </relationship-data>\r
760                         <related-to-property>\r
761                                 <property-key>vpn-binding.vpn-name</property-key>\r
762                                 <property-value>GN_EVPN_direct_net_0_ST1</property-value>\r
763                         </related-to-property>\r
764                 </relationship>\r
765                 <relationship>\r
766                    <related-to>route-table-reference</related-to>\r
767                    <relationship-data>\r
768                           <relationship-key>route-table-reference.route-table-reference-id</relationship-key>\r
769                           <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>\r
770                    </relationship-data>\r
771                 </relationship>\r
772         </relationship-list>\r
773 </l3-network>"""\r
774 \r
775   String queryIdAIIResponseVpnNotPresent =\r
776   """<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"\r
777                    statusCode="200">\r
778    <rest:headers>\r
779       <rest:header name="Transfer-Encoding" value="chunked"/>\r
780       <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>\r
781       <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>\r
782       <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>\r
783       <rest:header name="Content-Type" value="application/xml"/>\r
784       <rest:header name="Server" value="Apache-Coyote/1.1"/>\r
785       <rest:header name="Cache-Control" value="private"/>\r
786    </rest:headers>\r
787    <rest:payload contentType="text/xml">\r
788       <l3-network xmlns="http://org.openecomp.aai.inventory/v6">\r
789          <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
790          <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
791          <network-type>CONTRAIL_EXTERNAL</network-type>\r
792          <network-role>dmz_direct</network-role>\r
793          <network-technology>contrail</network-technology>\r
794          <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
795          <network-role-instance>0</network-role-instance>\r
796          <orchestration-status>pending-delete</orchestration-status>\r
797                  <physical-network-name>networkName</physical-network-name>\r
798              <is-provider-network>false</is-provider-network>\r
799                  <is-shared-network>true</is-shared-network>\r
800                  <is-external-network>false</is-external-network>\r
801          <subnets>\r
802             <subnet>\r
803                <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>\r
804                <gateway-address>107.239.52.1</gateway-address>\r
805                <network-start-address>107.239.52.0</network-start-address>\r
806                <cidr-mask>24</cidr-mask>\r
807                <ip-version>4</ip-version>\r
808                <orchestration-status>pending-delete</orchestration-status>\r
809                <dhcp-enabled>true</dhcp-enabled>\r
810                            <subnet-name>subnetName</subnet-name>\r
811                <relationship-list/>\r
812             </subnet>\r
813          </subnets>\r
814          <relationship-list/>\r
815       </l3-network>\r
816    </rest:payload>\r
817 </rest:RESTResponse>"""\r
818 \r
819           String queryNameAIIResponse =\r
820                   """<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"\r
821                                    statusCode="200">\r
822                    <rest:headers>\r
823                       <rest:header name="Transfer-Encoding" value="chunked"/>\r
824                       <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>\r
825                       <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>\r
826                       <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>\r
827                       <rest:header name="Content-Type" value="application/xml"/>\r
828                       <rest:header name="Server" value="Apache-Coyote/1.1"/>\r
829                       <rest:header name="Cache-Control" value="private"/>\r
830                    </rest:headers>\r
831                    <rest:payload contentType="text/xml">\r
832                       <l3-network xmlns="http://org.openecomp.aai.inventory/v6">\r
833                          <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
834                          <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
835                          <network-type>CONTRAIL_EXTERNAL</network-type>\r
836                          <network-role>dmz_direct</network-role>\r
837                          <network-technology>contrail</network-technology>\r
838                          <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
839                          <network-role-instance>0</network-role-instance>\r
840                          <orchestration-status>pending-delete</orchestration-status>\r
841                          <subnets>\r
842                             <subnet>\r
843                                <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>\r
844                                <gateway-address>107.239.52.1</gateway-address>\r
845                                <network-start-address>107.239.52.0</network-start-address>\r
846                                <cidr-mask>24</cidr-mask>\r
847                                <ip-version>4</ip-version>\r
848                                <orchestration-status>pending-delete</orchestration-status>\r
849                                <dhcp-enabled>true</dhcp-enabled>\r
850                                <relationship-list/>\r
851                             </subnet>\r
852                          </subnets>\r
853                          <relationship-list>\r
854                             <relationship>\r
855                                <related-to>vpn-binding</related-to>\r
856                                <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>\r
857                                <relationship-data>\r
858                                   <relationship-key>vpn-binding.vpn-id</relationship-key>\r
859                                   <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>\r
860                                </relationship-data>\r
861                             </relationship>\r
862                             <relationship>\r
863                                <related-to>vpn-binding</related-to>\r
864                                <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>\r
865                                <relationship-data>\r
866                                   <relationship-key>vpn-binding.vpn-id</relationship-key>\r
867                                   <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>\r
868                                </relationship-data>\r
869                             </relationship>\r
870                             <relationship>\r
871                                <related-to>tenant</related-to>\r
872                                <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>\r
873                                <relationship-data>\r
874                                   <relationship-key>tenant.tenant-id</relationship-key>\r
875                                   <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>\r
876                                </relationship-data>\r
877                             </relationship>\r
878                          </relationship-list>\r
879                       </l3-network>\r
880                    </rest:payload>\r
881                 </rest:RESTResponse>"""\r
882 \r
883                   String queryNameAIIResponseVpnNotPresent =\r
884                   """<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"\r
885                                    statusCode="200">\r
886                    <rest:headers>\r
887                       <rest:header name="Transfer-Encoding" value="chunked"/>\r
888                       <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>\r
889                       <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>\r
890                       <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>\r
891                       <rest:header name="Content-Type" value="application/xml"/>\r
892                       <rest:header name="Server" value="Apache-Coyote/1.1"/>\r
893                       <rest:header name="Cache-Control" value="private"/>\r
894                    </rest:headers>\r
895                    <rest:payload contentType="text/xml">\r
896                       <l3-network xmlns="http://org.openecomp.aai.inventory/v6>\r
897                          <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
898                          <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
899                          <network-type>CONTRAIL_EXTERNAL</network-type>\r
900                          <network-role>dmz_direct</network-role>\r
901                          <network-technology>contrail</network-technology>\r
902                          <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
903                          <network-role-instance>0</network-role-instance>\r
904                          <orchestration-status>pending-delete</orchestration-status>\r
905                          <subnets>\r
906                             <subnet>\r
907                                <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>\r
908                                <gateway-address>107.239.52.1</gateway-address>\r
909                                <network-start-address>107.239.52.0</network-start-address>\r
910                                <cidr-mask>24</cidr-mask>\r
911                                <ip-version>4</ip-version>\r
912                                <orchestration-status>pending-delete</orchestration-status>\r
913                                <dhcp-enabled>true</dhcp-enabled>\r
914                                <relationship-list/>\r
915                             </subnet>\r
916                          </subnets>\r
917                       </l3-network>\r
918                    </rest:payload>\r
919                 </rest:RESTResponse>"""\r
920 \r
921           String aaiVpnResponseStub =\r
922   """<rest:payload xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"\r
923               xmlns="http://org.openecomp.aai.inventory/v8"\r
924               contentType="text/xml">\r
925    <vpn-binding>\r
926       <global-route-target/>\r
927    </vpn-binding>\r
928 </rest:payload>"""\r
929 \r
930           String queryVpnBindingAAIResponse =\r
931            """<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"\r
932                    statusCode="200">\r
933    <rest:headers>\r
934       <rest:header name="Transfer-Encoding" value="chunked"/>\r
935       <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>\r
936       <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>\r
937       <rest:header name="X-AAI-TXID"\r
938                    value="mtcnjv9aaas01.mtcnj.aic.cip.com-20160314-20:53:33:487-134392"/>\r
939       <rest:header name="Content-Type" value="application/xml"/>\r
940       <rest:header name="Server" value="Apache-Coyote/1.1"/>\r
941       <rest:header name="Cache-Control" value="private"/>\r
942    </rest:headers>\r
943    <rest:payload contentType="text/xml">\r
944       <vpn-binding xmlns="http://org.openecomp.aai.inventory/v6">\r
945          <vpn-id>9a7b327d9-287aa00-82c4b0-105757</vpn-id>\r
946          <vpn-name>GN_EVPN_Test</vpn-name>\r
947          <global-route-target>13979:105757</global-route-target>\r
948          <relationship-list>\r
949             <relationship>\r
950                <related-to>l3-network</related-to>\r
951                <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/689ec39e-c5fc-4462-8db2-4f760763ad28/</related-link>\r
952                <relationship-data>\r
953                   <relationship-key>l3-network.network-id</relationship-key>\r
954                   <relationship-value>689ec39e-c5fc-4462-8db2-4f760763ad28</relationship-value>\r
955                </relationship-data>\r
956             </relationship>\r
957             <relationship>\r
958                <related-to>l3-network</related-to>\r
959                <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/1a49396b-19b3-40a4-8792-aa2fbd0f0704/</related-link>\r
960                <relationship-data>\r
961                   <relationship-key>l3-network.network-id</relationship-key>\r
962                   <relationship-value>1a49396b-19b3-40a4-8792-aa2fbd0f0704</relationship-value>\r
963                </relationship-data>\r
964             </relationship>\r
965             <relationship>\r
966                <related-to>l3-network</related-to>\r
967                <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/774f3329-3c83-4771-86c7-9e6207cd50fd/</related-link>\r
968                <relationship-data>\r
969                   <relationship-key>l3-network.network-id</relationship-key>\r
970                   <relationship-value>774f3329-3c83-4771-86c7-9e6207cd50fd</relationship-value>\r
971                </relationship-data>\r
972             </relationship>\r
973          </relationship-list>\r
974       </vpn-binding>\r
975    </rest:payload>\r
976 </rest:RESTResponse>"""\r
977 \r
978 \r
979           String updateNetworkRequest =\r
980           """<updateNetworkRequest>\r
981    <cloudSiteId>RDM2WAGPLCP</cloudSiteId>\r
982    <tenantId>7dd5365547234ee8937416c65507d266</tenantId>\r
983    <networkId>49c86598-f766-46f8-84f8-8d1c1b10f9b4</networkId>\r
984    <networkStackId>ST_2Bindings_6006/55288ef0-595c-47d3-819e-cf93aaac6326</networkStackId>\r
985    <networkName>MNS-25180-L-01-dmz_direct_net_1</networkName>\r
986    <networkType>CONTRAIL_EXTERNAL</networkType>\r
987    <modelCustomizationUuid>sn5256d1-5a33-55df-13ab-12abad84e222</modelCustomizationUuid>\r
988    <networkTypeVersion/>\r
989    <networkTechnology>CONTRAIL</networkTechnology>\r
990    <providerVlanNetwork>\r
991       <physicalNetworkName>networkName</physicalNetworkName>\r
992       <vlans>414,415</vlans>\r
993    </providerVlanNetwork>\r
994    <contrailNetwork>\r
995       <shared>true</shared>\r
996       <external>false</external>\r
997       <routeTargets>13979:105757</routeTargets>\r
998       <routeTargets>13979:105757</routeTargets>\r
999       <policyFqdns>GN_EVPN_Test</policyFqdns>\r
1000       <routeTableFqdns>refFQDN1</routeTableFqdns>\r
1001       <routeTableFqdns>refFQDN2</routeTableFqdns>\r
1002    </contrailNetwork>\r
1003    <subnets>\r
1004       <allocationPools>\r
1005          <start/>\r
1006          <end/>\r
1007       </allocationPools>\r
1008       <cidr>107.239.52.0/24</cidr>\r
1009       <enableDHCP>true</enableDHCP>\r
1010       <gatewayIp>107.239.52.1</gatewayIp>\r
1011       <ipVersion>4</ipVersion>\r
1012       <subnetId>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnetId>\r
1013       <subnetName>subnetName</subnetName>\r
1014       <addrFromStart>true</addrFromStart>\r
1015       <hostRoutes>\r
1016          <prefix>172.20.1.0/24</prefix>\r
1017          <nextHop>10.102.200.1</nextHop>\r
1018       </hostRoutes>\r
1019       <hostRoutes>\r
1020          <prefix>10.102.0.0/16</prefix>\r
1021          <nextHop>10.102.200.1</nextHop>\r
1022       </hostRoutes>\r
1023       <hostRoutes>\r
1024          <prefix>192.168.2.0/25</prefix>\r
1025          <nextHop>10.102.200.1</nextHop>\r
1026       </hostRoutes>\r
1027    </subnets>\r
1028    <skipAAI>true</skipAAI>\r
1029    <backout>true</backout>\r
1030    <failIfExists>false</failIfExists>\r
1031    <msoRequest>\r
1032       <requestId>88f65519-9a38-4c4b-8445-9eb4a5a5af56</requestId>\r
1033       <serviceInstanceId>f70e927b-6087-4974-9ef8-c5e4d5847ca4</serviceInstanceId>\r
1034    </msoRequest>\r
1035    <messageId>messageId_generated</messageId>\r
1036    <notificationUrl/>\r
1037 </updateNetworkRequest>"""\r
1038 \r
1039 String updateNetworkRequest_noPhysicalName =\r
1040 """<updateNetworkRequest>\r
1041    <cloudSiteId>RDM2WAGPLCP</cloudSiteId>\r
1042    <tenantId>7dd5365547234ee8937416c65507d266</tenantId>\r
1043    <networkId>49c86598-f766-46f8-84f8-8d1c1b10f9b4</networkId>\r
1044    <networkStackId>ST_2Bindings_6006/55288ef0-595c-47d3-819e-cf93aaac6326</networkStackId>\r
1045    <networkName>MNS-25180-L-01-dmz_direct_net_1</networkName>\r
1046    <networkType>CONTRAIL_EXTERNAL</networkType>\r
1047    <modelCustomizationUuid/>\r
1048    <networkTypeVersion/>\r
1049    <networkTechnology>CONTRAIL</networkTechnology>\r
1050    <providerVlanNetwork>\r
1051       <physicalNetworkName>networkName</physicalNetworkName>\r
1052       <vlans>414,415</vlans>\r
1053    </providerVlanNetwork>\r
1054    <contrailNetwork>\r
1055       <shared>true</shared>\r
1056       <external>false</external>\r
1057       <routeTargets>13979:105757</routeTargets>\r
1058       <routeTargets>13979:105757</routeTargets>\r
1059       <policyFqdns>GN_EVPN_Test</policyFqdns>\r
1060    </contrailNetwork>\r
1061    <subnets>\r
1062       <allocationPools>\r
1063          <start/>\r
1064          <end/>\r
1065       </allocationPools>\r
1066       <cidr>107.239.52.0/24</cidr>\r
1067       <enableDHCP>true</enableDHCP>\r
1068       <gatewayIp>107.239.52.1</gatewayIp>\r
1069       <ipVersion>4</ipVersion>\r
1070       <subnetId>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnetId>\r
1071       <subnetName>subnetName</subnetName>\r
1072       <addrFromStart>true</addrFromStart>\r
1073       <hostRoutes>\r
1074          <prefix>172.20.1.0/24</prefix>\r
1075          <nextHop>10.102.200.1</nextHop>\r
1076       </hostRoutes>\r
1077       <hostRoutes>\r
1078          <prefix>10.102.0.0/16</prefix>\r
1079          <nextHop>10.102.200.1</nextHop>\r
1080       </hostRoutes>\r
1081       <hostRoutes>\r
1082          <prefix>192.168.2.0/25</prefix>\r
1083          <nextHop>10.102.200.1</nextHop>\r
1084       </hostRoutes>\r
1085    </subnets>\r
1086    <skipAAI>true</skipAAI>\r
1087    <backout>true</backout>\r
1088    <failIfExists>false</failIfExists>\r
1089    <networkParams>\r
1090       <dhcp-enabled>true</dhcp-enabled>\r
1091       <serviceId>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</serviceId>\r
1092       <cidr-mask>true</cidr-mask>\r
1093       <backoutOnFailure>true</backoutOnFailure>\r
1094       <gateway-address>10.10.125.1</gateway-address>\r
1095    </networkParams>\r
1096    <msoRequest>\r
1097       <requestId>88f65519-9a38-4c4b-8445-9eb4a5a5af56</requestId>\r
1098       <serviceInstanceId>null</serviceInstanceId>\r
1099    </msoRequest>\r
1100    <messageId>messageId_generated</messageId>\r
1101    <notificationUrl/>\r
1102 </updateNetworkRequest>"""\r
1103 \r
1104           String updateNetworkResponseREST =\r
1105   """<ns2:updateNetworkContrailResponse xmlns:ns2="http://org.openecomp.mso/network">\r
1106         <networkId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkId>\r
1107         <neutronNetworkId>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutronNetworkId>\r
1108     <networkFqdn>default-domain:MSOTest:GN_EVPN_direct_net_0_ST1</networkFqdn>\r
1109         <networkStackId></networkStackId>\r
1110         <subnetMap>\r
1111                 <entry>\r
1112                         <key>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</key>\r
1113                         <value>bd8e87c6-f4e2-41b8-b0bc-9596aa00cd73</value>\r
1114                 </entry>\r
1115                 <entry>\r
1116                         <key>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</key>\r
1117                         <value>bd8e87c6-f4e2-41b8-b0bc-9596aa00cd73</value>\r
1118                 </entry>\r
1119         </subnetMap>\r
1120         <rollback>\r
1121                 <networkId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkId>\r
1122                 <neutronNetworkId>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutronNetworkId>\r
1123                 <networkStackId></networkStackId>\r
1124                 <networkType>CONTRAIL_EXTERNAL</networkType>\r
1125                 <networkUpdated>true</networkUpdated>\r
1126                 <tenantId>7dd5365547234ee8937416c65507d266</tenantId>\r
1127                 <cloudSiteId>RDM2WAGPLCP</cloudSiteId>\r
1128                 <msoRequest>\r
1129                         <requestId>1ef47428-cade-45bd-a103-0751e8b2deb0</requestId>\r
1130                         <serviceInstanceId></serviceInstanceId>\r
1131                 </msoRequest>\r
1132         </rollback>\r
1133         <messageId>messageId_generated</messageId>\r
1134 </ns2:updateNetworkContrailResponse>"""\r
1135 \r
1136           String updateRollbackNetworkRequest =\r
1137           """<rollbackNetworkRequest>\r
1138    <networkRollback>\r
1139       <networkId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkId>\r
1140       <neutronNetworkId>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutronNetworkId>\r
1141       <networkStackId/>\r
1142       <networkType>CONTRAIL_EXTERNAL</networkType>\r
1143       <networkUpdated>true</networkUpdated>\r
1144       <tenantId>7dd5365547234ee8937416c65507d266</tenantId>\r
1145       <cloudSiteId>RDM2WAGPLCP</cloudSiteId>\r
1146       <msoRequest>\r
1147          <requestId>1ef47428-cade-45bd-a103-0751e8b2deb0</requestId>\r
1148          <serviceInstanceId/>\r
1149       </msoRequest>\r
1150    </networkRollback>\r
1151 </rollbackNetworkRequest>"""\r
1152 \r
1153           String updateNetworkResponse =\r
1154           """<ns2:updateNetworkContrailResponse xmlns:ns2="http://org.openecomp.mso/network"\r
1155                                     xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">\r
1156    <networkId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkId>\r
1157    <neutronNetworkId>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutronNetworkId>\r
1158    <networkStackId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkStackId>\r
1159         <networkFqdn>default-domain:MSOTest:GN_EVPN_direct_net_0_ST1</networkFqdn>\r
1160    <subnetIdMap>\r
1161       <entry>\r
1162          <key>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</key>\r
1163          <value>bd8e87c6-f4e2-41b8-b0bc-9596aa00cd73</value>\r
1164       </entry>\r
1165    </subnetIdMap>\r
1166    <rollback>\r
1167       <cloudId>RDM2WAGPLCP</cloudId>\r
1168       <msoRequest>\r
1169          <requestId>1ef47428-cade-45bd-a103-0751e8b2deb0</requestId>\r
1170          <serviceInstanceId/>\r
1171       </msoRequest>\r
1172       <networkUpdated>true</networkUpdated>\r
1173       <networkId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkId>\r
1174       <networkType>CONTRAIL_EXTERNAL</networkType>\r
1175       <networkUpdated>false</networkUpdated>\r
1176       <neutronNetworkId>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutronNetworkId>\r
1177       <tenantId>7dd5365547234ee8937416c65507d266</tenantId>\r
1178    </rollback>\r
1179 </ns2:updateNetworkContrailResponse>"""\r
1180 \r
1181           String updateContrailAAIPayloadRequest =\r
1182   """<l3-network xmlns="http://org.openecomp.aai.inventory/v9">\r
1183    <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
1184    <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
1185    <network-type>CONTRAIL_EXTERNAL</network-type>\r
1186    <network-role>dmz_direct</network-role>\r
1187    <network-technology>contrail</network-technology>\r
1188    <neutron-network-id>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutron-network-id>\r
1189    <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
1190    <network-role-instance>0</network-role-instance>\r
1191    <resource-version>l3-version</resource-version>\r
1192    <orchestration-status>Active</orchestration-status>\r
1193    <heat-stack-id>ST_2Bindings_6006/55288ef0-595c-47d3-819e-cf93aaac6326</heat-stack-id>\r
1194    <contrail-network-fqdn>default-domain:MSOTest:GN_EVPN_direct_net_0_ST1</contrail-network-fqdn>\r
1195    <physical-network-name>networkName</physical-network-name>\r
1196    <is-provider-network>false</is-provider-network>\r
1197    <is-shared-network>true</is-shared-network>\r
1198    <is-external-network>false</is-external-network>\r
1199    <subnets>\r
1200       <subnet>\r
1201          <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>\r
1202          <neutron-subnet-id>bd8e87c6-f4e2-41b8-b0bc-9596aa00cd73</neutron-subnet-id>\r
1203          <gateway-address>107.239.52.1</gateway-address>\r
1204          <network-start-address>107.239.52.0</network-start-address>\r
1205          <cidr-mask>24</cidr-mask>\r
1206          <ip-version>4</ip-version>\r
1207          <orchestration-status>Active</orchestration-status>\r
1208          <dhcp-enabled>true</dhcp-enabled>\r
1209          <resource-version>1505857300987</resource-version>\r
1210          <subnet-name>subnetName</subnet-name>\r
1211          <ip-assignment-direction>true</ip-assignment-direction>\r
1212          <host-routes>\r
1213             <host-route>\r
1214                <host-route-id>400d286b-7e44-4514-b9b3-f70f7360ff32</host-route-id>\r
1215                <route-prefix>172.20.1.0/24</route-prefix>\r
1216                <next-hop>10.102.200.1</next-hop>\r
1217                <next-hop-type>ip-address</next-hop-type>\r
1218                <resource-version>1505857300987</resource-version>\r
1219             </host-route>\r
1220             <host-route>\r
1221                <host-route-id>6f038013-8b15-4eb8-914b-507489fbc8ee</host-route-id>\r
1222                <route-prefix>10.102.0.0/16</route-prefix>\r
1223                <next-hop>10.102.200.1</next-hop>\r
1224                <next-hop-type>ip-address</next-hop-type>\r
1225                <resource-version>1505857301151</resource-version>\r
1226             </host-route>\r
1227             <host-route>\r
1228                <host-route-id>8811c5f8-f1ed-4fa0-a505-e1be60396e28</host-route-id>\r
1229                <route-prefix>192.168.2.0/25</route-prefix>\r
1230                <next-hop>10.102.200.1</next-hop>\r
1231                <next-hop-type/>\r
1232                <resource-version>1505857301954</resource-version>\r
1233             </host-route>\r
1234          </host-routes>\r
1235       </subnet>\r
1236    </subnets>\r
1237    <segmentation-assignments>\r
1238       <segmentation-id>414</segmentation-id>\r
1239       <resource-version>4132176</resource-version>\r
1240    </segmentation-assignments>\r
1241    <segmentation-assignments>\r
1242       <segmentation-id>415</segmentation-id>\r
1243       <resource-version>4132176</resource-version>\r
1244    </segmentation-assignments>\r
1245    <ctag-assignments>\r
1246       <ctag-assignment>\r
1247          <vlan-id-inner>inner</vlan-id-inner>\r
1248          <resource-version>ctag-version</resource-version>\r
1249          <relationship-list>\r
1250             <relationship>\r
1251                <related-to>tenant</related-to>\r
1252                <related-link>https://aai-ext1.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/897deadc2b954a6bac6d3c197fb3525e/</related-link>\r
1253                <relationship-data>\r
1254                   <relationship-key>tenant.tenant-id</relationship-key>\r
1255                   <relationship-value>897deadc2b954a6bac6d3c197fb3525e</relationship-value>\r
1256                </relationship-data>\r
1257                <related-to-property>\r
1258                   <property-key>tenant.tenant-name</property-key>\r
1259                   <property-value>MSOTest1</property-value>\r
1260                </related-to-property>\r
1261             </relationship>\r
1262             <relationship>\r
1263                <related-to>vpn-binding</related-to>\r
1264                <related-link>https://aai-ext1.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/a290b841-f672-44dd-b9cd-6f8c20d7d8c8/</related-link>\r
1265                <relationship-data>\r
1266                   <relationship-key>vpn-binding.vpn-id</relationship-key>\r
1267                   <relationship-value>a290b841-f672-44dd-b9cd-6f8c20d7d8c8</relationship-value>\r
1268                </relationship-data>\r
1269                <related-to-property>\r
1270                   <property-key>vpn-binding.vpn-name</property-key>\r
1271                   <property-value>oam_protected_net_6_MTN5_msotest2</property-value>\r
1272                </related-to-property>\r
1273             </relationship>\r
1274             <relationship>\r
1275                <related-to>vpn-binding</related-to>\r
1276                <related-link>https://aai-ext1.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/24a4b507-853a-4a38-99aa-05fcc54be24d/</related-link>\r
1277                <relationship-data>\r
1278                   <relationship-key>vpn-binding.vpn-id</relationship-key>\r
1279                   <relationship-value>24a4b507-853a-4a38-99aa-05fcc54be24d</relationship-value>\r
1280                </relationship-data>\r
1281                <related-to-property>\r
1282                   <property-key>vpn-binding.vpn-name</property-key>\r
1283                   <property-value>oam_protected_net_6_MTN5_msotest1</property-value>\r
1284                </related-to-property>\r
1285             </relationship>\r
1286          </relationship-list>\r
1287       </ctag-assignment>\r
1288    </ctag-assignments>\r
1289    <relationship-list>\r
1290       <relationship>\r
1291          <related-to>vpn-binding</related-to>\r
1292          <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>\r
1293          <relationship-data>\r
1294             <relationship-key>vpn-binding.vpn-id</relationship-key>\r
1295             <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>\r
1296          </relationship-data>\r
1297       </relationship>\r
1298       <relationship>\r
1299          <related-to>vpn-binding</related-to>\r
1300          <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>\r
1301          <relationship-data>\r
1302             <relationship-key>vpn-binding.vpn-id</relationship-key>\r
1303             <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>\r
1304          </relationship-data>\r
1305       </relationship>\r
1306       <relationship>\r
1307          <related-to>tenant</related-to>\r
1308          <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>\r
1309          <relationship-data>\r
1310             <relationship-key>tenant.tenant-id</relationship-key>\r
1311             <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>\r
1312          </relationship-data>\r
1313       </relationship>\r
1314       <relationship>\r
1315          <related-to>network-policy</related-to>\r
1316          <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg</related-link>\r
1317          <relationship-data>\r
1318             <relationship-key>network-policy.network-policy-id</relationship-key>\r
1319             <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0cg</relationship-value>\r
1320          </relationship-data>\r
1321       </relationship>\r
1322       <relationship>\r
1323          <related-to>route-table-reference</related-to>\r
1324          <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN1</related-link>\r
1325          <relationship-data>\r
1326             <relationship-key>route-table-reference.route-table-reference-id</relationship-key>\r
1327             <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>\r
1328          </relationship-data>\r
1329       </relationship>\r
1330       <relationship>\r
1331          <related-to>route-table-reference</related-to>\r
1332          <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN2</related-link>\r
1333          <relationship-data>\r
1334             <relationship-key>route-table-reference.route-table-reference-id</relationship-key>\r
1335             <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>\r
1336          </relationship-data>\r
1337       </relationship>\r
1338    </relationship-list>\r
1339 </l3-network>"""\r
1340 \r
1341 \r
1342           String updateContrailAAIResponse =\r
1343   """<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"\r
1344                    statusCode="200">\r
1345    <rest:headers>\r
1346       <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>\r
1347       <rest:header name="Content-Length" value="0"/>\r
1348       <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>\r
1349       <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:551-132672"/>\r
1350       <rest:header name="Server" value="Apache-Coyote/1.1"/>\r
1351       <rest:header name="Cache-Control" value="private"/>\r
1352    </rest:headers>\r
1353 </rest:RESTResponse>"""\r
1354 \r
1355           String updateNetworkErrorResponse =\r
1356           """<updateNetworkError>\r
1357                  <messageId>680bd458-5ec1-4a16-b77c-509022e53450</messageId><category>INTERNAL</category>\r
1358                  <message>400 Bad Request: The server could not comply with the request since it is either malformed or otherwise incorrect., error.type=StackValidationFailed, error.message=Property error: : resources.network.properties: : Unknown Property network_ipam_refs_data</message>\r
1359                  <rolledBack>true</rolledBack>\r
1360            </updateNetworkError>"""\r
1361 \r
1362 \r
1363   String networkException500 =\r
1364   """<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><soap:Fault><faultcode>soap:VersionMismatch</faultcode><faultstring>"http://org.openecomp.mso/network", the namespace on the "updateNetworkContrail" element, is not a valid SOAP version.</faultstring></soap:Fault></soap:Body></soap:Envelope>"""\r
1365 \r
1366         String aaiResponse =\r
1367    """<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"\r
1368                                          statusCode="200">\r
1369          <rest:headers>\r
1370                 <rest:header name="Transfer-Encoding" value="chunked"/>\r
1371                 <rest:header name="Date" value="Sat,30 Jan 2016 20:09:24 GMT"/>\r
1372                 <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>\r
1373                 <rest:header name="X-AAI-TXID"\r
1374                                          value="mtcnjv9aaas01.mtcnj.aic.cip.com-20160130-20:09:24:814-165843"/>\r
1375                 <rest:header name="Content-Type" value="application/xml"/>\r
1376                 <rest:header name="Server" value="Apache-Coyote/1.1"/>\r
1377                 <rest:header name="Cache-Control" value="private"/>\r
1378          </rest:headers>\r
1379          <rest:payload contentType="text/xml">\r
1380                 <l3-network xmlns="http://org.openecomp.aai.inventory/v3">\r
1381                    <network-id>bdc5efe8-404a-409b-85f6-0dcc9eebae30</network-id>\r
1382                    <network-name>HSL_direct_net_2</network-name>\r
1383                    <network-type>CONTRAIL_BASIC</network-type>\r
1384                    <network-role>HSL_direct</network-role>\r
1385                    <network-technology>contrail</network-technology>\r
1386                    <neutron-network-id>8bbd3edf-b835-4610-96a2-a5cafa029042</neutron-network-id>\r
1387                    <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
1388                    <orchestration-status>active</orchestration-status>\r
1389                    <heat-stack-id>HSL_direct_net_2/57594a56-1c92-4a38-9caa-641c1fa3d4b6</heat-stack-id>\r
1390                    <subnets>\r
1391                           <subnet>\r
1392                                  <subnet-id>ea5f2a2c-604f-47ff-a9c5-253ee4f0ef0a</subnet-id>\r
1393                                  <neutron-subnet-id>5a77fdc2-7789-4649-a1b9-6eaf1db1813a</neutron-subnet-id>\r
1394                                  <gateway-address>172.16.34.1</gateway-address>\r
1395                                  <network-start-address>172.16.34.0</network-start-address>\r
1396                                  <cidr-mask>28</cidr-mask>\r
1397                                  <ip-version>4</ip-version>\r
1398                                  <orchestration-status>active</orchestration-status>\r
1399                                  <dhcp-enabled>true</dhcp-enabled>\r
1400                                  <relationship-list/>\r
1401                           </subnet>\r
1402                    </subnets>\r
1403                    <relationship-list>\r
1404                           <relationship>\r
1405                                  <related-to>tenant</related-to>\r
1406                                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/cloud-infrastructure/tenants/tenant/e81d842d3e8b45c5a59f57cd76af3aaf/</related-link>\r
1407                                  <relationship-data>\r
1408                                         <relationship-key>tenant.tenant-id</relationship-key>\r
1409                                         <relationship-value>e81d842d3e8b45c5a59f57cd76af3aaf</relationship-value>\r
1410                                  </relationship-data>\r
1411                           </relationship>\r
1412                    </relationship-list>\r
1413                 </l3-network>\r
1414          </rest:payload>\r
1415   </rest:RESTResponse>"""\r
1416 \r
1417         String changeAssignSDNCRequest =\r
1418     """<aetgt:SDNCAdapterWorkflowRequest xmlns:aetgt="http://org.openecomp/mso/workflow/schema/v1"\r
1419                                   xmlns:ns5="http://org.openecomp/mso/request/types/v1"\r
1420                                   xmlns:sdncadapter="http://org.openecomp.mso/workflow/sdnc/adapter/schema/v1">\r
1421    <sdncadapter:RequestHeader>\r
1422       <sdncadapter:RequestId>88f65519-9a38-4c4b-8445-9eb4a5a5af56</sdncadapter:RequestId>\r
1423       <sdncadapter:SvcInstanceId>f70e927b-6087-4974-9ef8-c5e4d5847ca4</sdncadapter:SvcInstanceId>\r
1424       <sdncadapter:SvcAction>changeassign</sdncadapter:SvcAction>\r
1425       <sdncadapter:SvcOperation>network-topology-operation</sdncadapter:SvcOperation>\r
1426       <sdncadapter:CallbackUrl>sdncCallback</sdncadapter:CallbackUrl>\r
1427    </sdncadapter:RequestHeader>\r
1428    <aetgt:SDNCRequestData>\r
1429       <request-information>\r
1430          <request-id>88f65519-9a38-4c4b-8445-9eb4a5a5af56</request-id>\r
1431          <request-action>NetworkActivateRequest</request-action>\r
1432          <source>VID</source>\r
1433          <notification-url/>\r
1434          <order-number/>\r
1435          <order-version/>\r
1436       </request-information>\r
1437       <service-information>\r
1438          <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
1439          <service-type>MSO-dev-service-type</service-type>\r
1440          <service-instance-id>f70e927b-6087-4974-9ef8-c5e4d5847ca4</service-instance-id>\r
1441          <subscriber-name>MSO_1610_dev</subscriber-name>\r
1442       </service-information>\r
1443       <network-request-information>\r
1444          <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
1445          <network-type>CONTRAIL_EXTERNAL</network-type>\r
1446          <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
1447          <tenant>7dd5365547234ee8937416c65507d266</tenant>\r
1448          <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
1449       </network-request-information>\r
1450    </aetgt:SDNCRequestData>\r
1451 </aetgt:SDNCAdapterWorkflowRequest>"""\r
1452 \r
1453 String assignResponse =\r
1454 """<sdncadapterworkflow:SDNCAdapterWorkflowResponse xmlns:sdncadapterworkflow="http://org.openecomp/mso/workflow/schema/v1" xmlns:tag0="http://org.openecomp.mso/workflow/sdnc/adapter/schema/v1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <sdncadapterworkflow:response-data> <tag0:CallbackHeader> <tag0:RequestId>006927ca-f5a3-47fd-880c-dfcbcd81a093</tag0:RequestId> <tag0:ResponseCode>200</tag0:ResponseCode> <tag0:ResponseMessage>OK</tag0:ResponseMessage> </tag0:CallbackHeader> <tag0:RequestData xsi:type="xs:string"><output xmlns="com:att:sdnctl:vnf"><response-code>200</response-code><svc-request-id>006927ca-f5a3-47fd-880c-dfcbcd81a093</svc-request-id><ack-final-indicator>Y</ack-final-indicator><service-information><subscriber-name>notsurewecare</subscriber-name><service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id><service-instance-id>GN_EVPN_direct_net_0_ST_noGW</service-instance-id></service-information><network-information><network-id>8abc633a-810b-4ca5-8b3a-09511d13a2ce</network-id></network-information></output></tag0:RequestData> </sdncadapterworkflow:response-data> </sdncadapterworkflow:SDNCAdapterWorkflowResponse>"""\r
1455 \r
1456   String sdncRollbackRequest =\r
1457                           """<aetgt:SDNCAdapterWorkflowRequest xmlns:aetgt="http://org.openecomp/mso/workflow/schema/v1"\r
1458                                   xmlns:ns5="http://org.openecomp/mso/request/types/v1"\r
1459                                   xmlns:sdncadapter="http://org.openecomp.mso/workflow/sdnc/adapter/schema/v1">\r
1460    <sdncadapter:RequestHeader>\r
1461       <sdncadapter:RequestId>88f65519-9a38-4c4b-8445-9eb4a5a5af56</sdncadapter:RequestId>\r
1462       <sdncadapter:SvcInstanceId>f70e927b-6087-4974-9ef8-c5e4d5847ca4</sdncadapter:SvcInstanceId>\r
1463       <sdncadapter:SvcAction>rollback</sdncadapter:SvcAction>\r
1464       <sdncadapter:SvcOperation>network-topology-operation</sdncadapter:SvcOperation>\r
1465       <sdncadapter:CallbackUrl>sdncCallback</sdncadapter:CallbackUrl>\r
1466    </sdncadapter:RequestHeader>\r
1467    <aetgt:SDNCRequestData>\r
1468       <request-information>\r
1469          <request-id>88f65519-9a38-4c4b-8445-9eb4a5a5af56</request-id>\r
1470          <request-action>NetworkActivateRequest</request-action>\r
1471          <source>VID</source>\r
1472          <notification-url/>\r
1473          <order-number/>\r
1474          <order-version/>\r
1475       </request-information>\r
1476       <service-information>\r
1477          <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
1478          <service-type>MSO-dev-service-type</service-type>\r
1479          <service-instance-id>f70e927b-6087-4974-9ef8-c5e4d5847ca4</service-instance-id>\r
1480          <subscriber-name>MSO_1610_dev</subscriber-name>\r
1481       </service-information>\r
1482       <network-request-information>\r
1483          <network-id>8abc633a-810b-4ca5-8b3a-09511d13a2ce</network-id>\r
1484          <network-type>CONTRAIL_EXTERNAL</network-type>\r
1485          <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
1486          <tenant>7dd5365547234ee8937416c65507d266</tenant>\r
1487          <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
1488       </network-request-information>\r
1489    </aetgt:SDNCRequestData>\r
1490 </aetgt:SDNCAdapterWorkflowRequest>"""\r
1491 \r
1492            String sdncAdapterWorkflowResponse =\r
1493           """<aetgt:SDNCAdapterWorkflowResponse xmlns:aetgt="http://org.openecomp/mso/workflow/schema/v1"\r
1494                                    xmlns:sdncadapterworkflow="http://org.openecomp/mso/workflow/schema/v1">\r
1495    <sdncadapterworkflow:response-data>\r
1496 <tag0:CallbackHeader xmlns:tag0="http://org.openecomp.mso/workflow/sdnc/adapter/schema/v1">\r
1497    <tag0:RequestId>745b1b50-e39e-4685-9cc8-c71f0bde8bf0</tag0:RequestId>\r
1498    <tag0:ResponseCode>200</tag0:ResponseCode>\r
1499    <tag0:ResponseMessage>OK</tag0:ResponseMessage>\r
1500 </tag0:CallbackHeader>\r
1501    <tag0:RequestData xmlns:tag0="http://org.openecomp.mso/workflow/sdnc/adapter/schema/v1"\r
1502                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
1503                   xsi:type="xs:string">&lt;output xmlns="com:att:sdnctl:vnf"&gt;&lt;svc-request-id&gt;00703dc8-71ff-442d-a4a8-3adc5beef6a9&lt;/svc-request-id&gt;&lt;response-code&gt;200&lt;/response-code&gt;&lt;ack-final-indicator&gt;Y&lt;/ack-final-indicator&gt;&lt;network-information&gt;&lt;network-id&gt;49c86598-f766-46f8-84f8-8d1c1b10f9b4&lt;/network-id&gt;&lt;/network-information&gt;&lt;service-information&gt;&lt;service-type&gt;a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb&lt;/service-type&gt;&lt;service-instance-id&gt;MNS-25180-L-01-dmz_direct_net_1&lt;/service-instance-id&gt;&lt;subscriber-name&gt;notsurewecare&lt;/subscriber-name&gt;&lt;/service-information&gt;&lt;/output&gt;</tag0:RequestData>\r
1504    </sdncadapterworkflow:response-data>\r
1505 </aetgt:SDNCAdapterWorkflowResponse>"""\r
1506 \r
1507 \r
1508           String sdncAdapterWorkflowResponse_Error =\r
1509           """<sdncadapterworkflow:SDNCAdapterWorkflowResponse xmlns:sdncadapterworkflow="http://org.openecomp/mso/workflow/schema/v1"\r
1510                                                  xmlns:tag0="http://org.openecomp.mso/workflow/sdnc/adapter/schema/v1"\r
1511                                                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
1512                                                  xmlns="com:att:sdnctl:vnf">\r
1513    <sdncadapterworkflow:response-data>\r
1514       <tag0:RequestData xsi:type="xs:string">\r
1515          <output>\r
1516             <response-code>400</response-code>\r
1517             <response-message>Error writing to l3-netework</response-message>\r
1518             <ack-final-indicator>Y</ack-final-indicator>\r
1519             <svc-request-id>c79240d8-34b5-4853-af69-2021928dba00</svc-request-id>\r
1520          </output>\r
1521       </tag0:RequestData>\r
1522    </sdncadapterworkflow:response-data>\r
1523 </sdncadapterworkflow:SDNCAdapterWorkflowResponse>"""\r
1524 \r
1525           String expected_sdncAdapterWorkflowResponse_Error =\r
1526   """<sdncadapterworkflow:SDNCAdapterWorkflowResponse xmlns="com:att:sdnctl:vnf"\r
1527                                                  xmlns:sdncadapterworkflow="http://org.openecomp/mso/workflow/schema/v1"\r
1528                                                  xmlns:tag0="http://org.openecomp.mso/workflow/sdnc/adapter/schema/v1"\r
1529                                                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\r
1530    <sdncadapterworkflow:response-data>\r
1531       <tag0:RequestData xsi:type="xs:string">\r
1532          <output>\r
1533             <response-code>400</response-code>\r
1534             <response-message>Error writing to l3-netework</response-message>\r
1535             <ack-final-indicator>Y</ack-final-indicator>\r
1536             <svc-request-id>c79240d8-34b5-4853-af69-2021928dba00</svc-request-id>\r
1537          </output>\r
1538       </tag0:RequestData>\r
1539    </sdncadapterworkflow:response-data>\r
1540 </sdncadapterworkflow:SDNCAdapterWorkflowResponse>"""\r
1541 \r
1542           String sdncAdapterWorkflowFormattedResponse =\r
1543           """<aetgt:SDNCAdapterWorkflowResponse xmlns:aetgt="http://org.openecomp/mso/workflow/schema/v1"\r
1544                                    xmlns="com:att:sdnctl:vnf">\r
1545    <aetgt:response-data>\r
1546       <output>\r
1547          <svc-request-id>00703dc8-71ff-442d-a4a8-3adc5beef6a9</svc-request-id>\r
1548          <response-code>200</response-code>\r
1549          <ack-final-indicator>Y</ack-final-indicator>\r
1550          <network-information>\r
1551             <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>\r
1552          </network-information>\r
1553          <service-information>\r
1554             <service-type>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-type>\r
1555             <service-instance-id>f70e927b-6087-4974-9ef8-c5e4d5847ca4</service-instance-id>\r
1556             <subscriber-name>notsurewecare</subscriber-name>\r
1557          </service-information>\r
1558       </output>\r
1559    </aetgt:response-data>\r
1560 </aetgt:SDNCAdapterWorkflowResponse>"""\r
1561 \r
1562 String rollbackSDNCRequest =\r
1563 """<aetgt:SDNCAdapterWorkflowRequest xmlns:aetgt="http://org.openecomp/mso/workflow/schema/v1"\r
1564                                   xmlns:ns5="http://org.openecomp/mso/request/types/v1"\r
1565                                   xmlns:sdncadapter="http://org.openecomp.mso/workflow/sdnc/adapter/schema/v1">\r
1566    <sdncadapter:RequestHeader>\r
1567       <sdncadapter:RequestId>88f65519-9a38-4c4b-8445-9eb4a5a5af56</sdncadapter:RequestId>\r
1568       <sdncadapter:SvcInstanceId>f70e927b-6087-4974-9ef8-c5e4d5847ca4</sdncadapter:SvcInstanceId>\r
1569       <sdncadapter:SvcAction>rollback</sdncadapter:SvcAction>\r
1570       <sdncadapter:SvcOperation>network-topology-operation</sdncadapter:SvcOperation>\r
1571       <sdncadapter:CallbackUrl>sdncCallback</sdncadapter:CallbackUrl>\r
1572    </sdncadapter:RequestHeader>\r
1573    <aetgt:SDNCRequestData>\r
1574       <request-information>\r
1575          <request-id>88f65519-9a38-4c4b-8445-9eb4a5a5af56</request-id>\r
1576          <request-action>CreateNetworkInstance</request-action>\r
1577          <source>VID</source>\r
1578          <notification-url/>\r
1579          <order-number/>\r
1580          <order-version/>\r
1581       </request-information>\r
1582       <service-information>\r
1583          <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>\r
1584          <service-type>MSO-dev-service-type</service-type>\r
1585          <service-instance-id>f70e927b-6087-4974-9ef8-c5e4d5847ca4</service-instance-id>\r
1586          <subscriber-name>MSO_1610_dev</subscriber-name>\r
1587       </service-information>\r
1588       <network-information>\r
1589          <network-id>8abc633a-810b-4ca5-8b3a-09511d13a2ce</network-id>\r
1590          <network-type>CONTRAIL_EXTERNAL</network-type>\r
1591          <ecomp-model-information>\r
1592             <model-invariant-uuid>invariant-uuid</model-invariant-uuid>\r
1593             <model-customization-uuid>customization-uuid</model-customization-uuid>\r
1594             <model-uuid>uuid</model-uuid>\r
1595             <model-version>version</model-version>\r
1596             <model-name>CONTRAIL_EXTERNAL</model-name>\r
1597          </ecomp-model-information>\r
1598       </network-information>\r
1599       <network-request-information>\r
1600          <network-id>8abc633a-810b-4ca5-8b3a-09511d13a2ce</network-id>\r
1601          <network-type>CONTRAIL_EXTERNAL</network-type>\r
1602          <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>\r
1603          <tenant>7dd5365547234ee8937416c65507d266</tenant>\r
1604          <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>\r
1605       </network-request-information>\r
1606    </aetgt:SDNCRequestData>\r
1607 </aetgt:SDNCAdapterWorkflowRequest>"""\r
1608 \r
1609 String rollbackNetworkRequest =\r
1610 """<NetworkAdapter:rollbackNetwork xmlns:NetworkAdapter="http://org.openecomp.mso/network">\r
1611    <rollback>\r
1612       <networkId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkId>\r
1613       <neutronNetworkId>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutronNetworkId>\r
1614       <networkStackId/>\r
1615       <networkType>CONTRAIL_EXTERNAL</networkType>\r
1616       <networkCreated>true</networkCreated>\r
1617       <tenantId>7dd5365547234ee8937416c65507d266</tenantId>\r
1618       <cloudSiteId>RDM2WAGPLCP</cloudSiteId>\r
1619       <msoRequest>\r
1620          <requestId>1ef47428-cade-45bd-a103-0751e8b2deb0</requestId>\r
1621          <serviceInstanceId/>\r
1622       </msoRequest>\r
1623    </rollback>\r
1624 </NetworkAdapter:rollbackNetwork>"""\r
1625 \r
1626 // - - - - - - - -\r
1627 \r
1628 \r
1629             @Before\r
1630                 public void init()\r
1631                 {\r
1632                         MockitoAnnotations.initMocks(this)\r
1633 \r
1634                 }\r
1635 \r
1636                 public void initializeVariables (DelegateExecution mockExecution) {\r
1637 \r
1638                         verify(mockExecution).setVariable(Prefix + "messageId", "")\r
1639                         verify(mockExecution).setVariable("BasicAuthHeaderValuePO", "")\r
1640                         verify(mockExecution).setVariable("BasicAuthHeaderValueSDNC", "")\r
1641                         verify(mockExecution).setVariable(Prefix + "networkRequest", "")\r
1642                         verify(mockExecution).setVariable(Prefix + "networkInputs", "")\r
1643                         verify(mockExecution).setVariable(Prefix + "networkOutputs", "")\r
1644                         verify(mockExecution).setVariable(Prefix + "requestId", "")\r
1645                         verify(mockExecution).setVariable(Prefix + "source", "")\r
1646                         verify(mockExecution).setVariable(Prefix + "networkId", "")\r
1647 \r
1648                         verify(mockExecution).setVariable(Prefix + "isPONR", false)\r
1649 \r
1650                         // AAI query Cloud Region\r
1651                         verify(mockExecution).setVariable(Prefix + "queryCloudRegionRequest","")\r
1652                         verify(mockExecution).setVariable(Prefix + "queryCloudRegionReturnCode","")\r
1653                         verify(mockExecution).setVariable(Prefix + "queryCloudRegionResponse","")\r
1654                         verify(mockExecution).setVariable(Prefix + "cloudRegionPo","")\r
1655                         verify(mockExecution).setVariable(Prefix + "cloudRegionSdnc","")\r
1656                         verify(mockExecution).setVariable(Prefix + "isCloudRegionGood", false)\r
1657 \r
1658                         // AAI query Id\r
1659                         verify(mockExecution).setVariable(Prefix + "queryIdAAIRequest","")\r
1660                         verify(mockExecution).setVariable(Prefix + "queryIdAAIResponse", "")\r
1661                         verify(mockExecution).setVariable(Prefix + "aaiIdReturnCode", "")\r
1662 \r
1663                         // AAI query vpn binding\r
1664                         verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIRequest","")\r
1665                         verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIResponse", "")\r
1666                         verify(mockExecution).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "")\r
1667                         verify(mockExecution).setVariable(Prefix + "vpnBindings", null)\r
1668                         verify(mockExecution).setVariable(Prefix + "vpnCount", 0)\r
1669                         verify(mockExecution).setVariable(Prefix + "routeCollection", "")\r
1670 \r
1671                         // AAI query network policy\r
1672                         verify(mockExecution).setVariable(Prefix + "queryNetworkPolicyAAIRequest","")\r
1673                         verify(mockExecution).setVariable(Prefix + "queryNetworkPolicyAAIResponse", "")\r
1674                         verify(mockExecution).setVariable(Prefix + "aaiQqueryNetworkPolicyReturnCode", "")\r
1675                         verify(mockExecution).setVariable(Prefix + "networkPolicyUriList", null)\r
1676                         verify(mockExecution).setVariable(Prefix + "networkPolicyCount", 0)\r
1677                         verify(mockExecution).setVariable(Prefix + "networkCollection", "")\r
1678 \r
1679                         // AAI query route table reference\r
1680                         verify(mockExecution).setVariable(Prefix + "queryNetworkTableRefAAIRequest","")\r
1681                         verify(mockExecution).setVariable(Prefix + "queryNetworkTableRefAAIResponse", "")\r
1682                         verify(mockExecution).setVariable(Prefix + "aaiQqueryNetworkTableRefReturnCode", "")\r
1683                         verify(mockExecution).setVariable(Prefix + "networkTableRefUriList", null)\r
1684                         verify(mockExecution).setVariable(Prefix + "networkTableRefCount", 0)\r
1685                         verify(mockExecution).setVariable(Prefix + "tableRefCollection", "")\r
1686 \r
1687 \r
1688                         // AAI requery Id\r
1689                         verify(mockExecution).setVariable(Prefix + "requeryIdAAIRequest","")\r
1690                         verify(mockExecution).setVariable(Prefix + "requeryIdAAIResponse", "")\r
1691                         verify(mockExecution).setVariable(Prefix + "aaiRequeryIdReturnCode", "")\r
1692 \r
1693                         // AAI update contrail\r
1694                         verify(mockExecution).setVariable(Prefix + "updateContrailAAIUrlRequest","")\r
1695                         verify(mockExecution).setVariable(Prefix + "updateContrailAAIPayloadRequest","")\r
1696                         verify(mockExecution).setVariable(Prefix + "updateContrailAAIResponse", "")\r
1697                         verify(mockExecution).setVariable(Prefix + "aaiUpdateContrailReturnCode", "")\r
1698 \r
1699                         verify(mockExecution).setVariable(Prefix + "updateNetworkRequest", "")\r
1700                         verify(mockExecution).setVariable(Prefix + "updateNetworkResponse", "")\r
1701                         verify(mockExecution).setVariable(Prefix + "rollbackNetworkRequest", "")\r
1702                         //verify(mockExecution).setVariable(Prefix + "rollbackNetworkResponse", "")\r
1703                         verify(mockExecution).setVariable(Prefix + "networkReturnCode", "")\r
1704                         //verify(mockExecution).setVariable(Prefix + "rollbackNetworkReturnCode", "")\r
1705                         verify(mockExecution).setVariable(Prefix + "isNetworkRollbackNeeded", false)\r
1706 \r
1707                         verify(mockExecution).setVariable(Prefix + "changeAssignSDNCRequest", "")\r
1708                         verify(mockExecution).setVariable(Prefix + "changeAssignSDNCResponse", "")\r
1709                         verify(mockExecution).setVariable(Prefix + "rollbackSDNCRequest", "")\r
1710                         //verify(mockExecution).setVariable(Prefix + "rollbackSDNCResponse", "")\r
1711                         verify(mockExecution).setVariable(Prefix + "sdncReturnCode", "")\r
1712                         //verify(mockExecution).setVariable(Prefix + "rollbackSDNCReturnCode", "")\r
1713                         verify(mockExecution).setVariable(Prefix + "isSdncRollbackNeeded", false)\r
1714                         verify(mockExecution).setVariable(Prefix + "sdncResponseSuccess", false)\r
1715 \r
1716                         verify(mockExecution).setVariable(Prefix + "isVnfBindingPresent", false)\r
1717                         verify(mockExecution).setVariable(Prefix + "Success", false)\r
1718                         verify(mockExecution).setVariable(Prefix + "serviceInstanceId", "")\r
1719 \r
1720                         verify(mockExecution).setVariable(Prefix + "isException", false)\r
1721 \r
1722                 }\r
1723 \r
1724                 @Test\r
1725                 //@Ignore\r
1726                 public void preProcessRequest_NetworkRequest() {\r
1727 \r
1728                         println "************ preProcessRequest_Payload ************* "\r
1729                         ExecutionEntity mockExecution = setupMock()\r
1730                         // Initialize prerequisite variables\r
1731                         when(mockExecution.getVariable("mso-request-id")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1732                         when(mockExecution.getVariable("requestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1733                         when(mockExecution.getVariable("isBaseVfModule")).thenReturn(true)\r
1734                         when(mockExecution.getVariable("recipeTimeout")).thenReturn(0)\r
1735                         when(mockExecution.getVariable("requestAction")).thenReturn("UPDATE")\r
1736                         when(mockExecution.getVariable("serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")\r
1737                         when(mockExecution.getVariable("vnfId")).thenReturn("")\r
1738                         when(mockExecution.getVariable("volumeGroupId")).thenReturn("")\r
1739                         when(mockExecution.getVariable("networkId")).thenReturn("49c86598-f766-46f8-84f8-8d1c1b10f9b4")\r
1740                         when(mockExecution.getVariable("serviceType")).thenReturn("MOG")\r
1741                         when(mockExecution.getVariable("networkType")).thenReturn("modelName")\r
1742                         when(mockExecution.getVariable("bpmnRequest")).thenReturn(jsonIncomingRequest)\r
1743                         when(mockExecution.getVariable("sdncVersion")).thenReturn("1610")\r
1744                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1745                         when(mockExecution.getVariable("URN_mso_adapters_po_auth")).thenReturn("3141634BF7E070AA289CF2892C986C0B")\r
1746                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
1747                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
1748                         when(mockExecution.getVariable("URN_mso_rollback")).thenReturn("true")\r
1749                         when(mockExecution.getVariable("disableRollback")).thenReturn("true")\r
1750 \r
1751                         // preProcessRequest(DelegateExecution execution)\r
1752                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
1753                         DoUpdateNetworkInstance.preProcessRequest(mockExecution)\r
1754 \r
1755                         verify(mockExecution).getVariable("isDebugLogEnabled")\r
1756                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
1757 \r
1758                         //verify variable initialization\r
1759                         initializeVariables(mockExecution)\r
1760 \r
1761                         // Authentications\r
1762                         verify(mockExecution).setVariable("action", "UPDATE")\r
1763                         verify(mockExecution).setVariable(Prefix + "networkRequest", expectedNetworkRequest)\r
1764                         verify(mockExecution).setVariable(Prefix + "rollbackEnabled", false)\r
1765                         verify(mockExecution).setVariable(Prefix + "networkInputs", expectedNetworkInputs)\r
1766                         verify(mockExecution).setVariable("BasicAuthHeaderValuePO", "Basic cGFzc3dvcmQ=")\r
1767                         verify(mockExecution).setVariable("BasicAuthHeaderValueSDNC", "Basic cGFzc3dvcmQ=")\r
1768                         verify(mockExecution).setVariable(Prefix + "networkOutputs", "")\r
1769 \r
1770                 }\r
1771 \r
1772                 @Test\r
1773                 //@Ignore\r
1774                 public void preProcessRequest_vPERNetworkRequest() {\r
1775 \r
1776                         def networkModelInfo = """{"modelUuid": "sn5256d1-5a33-55df-13ab-12abad84e111",\r
1777                                      "modelName": "CONTRAIL_EXTERNAL",\r
1778                                                                          "modelType": "CONTRAIL_EXTERNAL",\r
1779                                                                          "modelVersion": "1",\r
1780                                                                          "modelCustomizationUuid": "sn5256d1-5a33-55df-13ab-12abad84e222",\r
1781                                                                          "modelInvariantUuid": "sn5256d1-5a33-55df-13ab-12abad84e764"\r
1782                                                                         }""".trim()\r
1783                         \r
1784                         println "************ preProcessRequest_Payload ************* "\r
1785                         ExecutionEntity mockExecution = setupMock()\r
1786                         // Initialize prerequisite variables\r
1787                         when(mockExecution.getVariable("msoRequestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1788                         when(mockExecution.getVariable("disableRollback")).thenReturn("true")\r
1789                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
1790                         when(mockExecution.getVariable("serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")\r
1791                         when(mockExecution.getVariable("networkId")).thenReturn("49c86598-f766-46f8-84f8-8d1c1b10f9b4")     // optional\r
1792                         when(mockExecution.getVariable("networkName")).thenReturn("MNS-25180-L-01-dmz_direct_net_1")        // optional\r
1793                         when(mockExecution.getVariable("productFamilyId")).thenReturn("a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb")\r
1794                         when(mockExecution.getVariable("networkModelInfo")).thenReturn("CONTRAIL_EXTERNAL")\r
1795                         when(mockExecution.getVariable("lcpCloudRegionId")).thenReturn("RDM2WAGPLCP")\r
1796                         when(mockExecution.getVariable("tenantId")).thenReturn("7dd5365547234ee8937416c65507d266")\r
1797                         when(mockExecution.getVariable("failIfExists")).thenReturn("false")\r
1798                         when(mockExecution.getVariable("networkModelInfo")).thenReturn(networkModelInfo)\r
1799                         when(mockExecution.getVariable("sdncVersion")).thenReturn("1702")\r
1800                         when(mockExecution.getVariable("action")).thenReturn("UPDATE")\r
1801                         when(mockExecution.getVariable("subscriptionServiceType")).thenReturn("MSO-dev-service-type")\r
1802                         when(mockExecution.getVariable("globalSubscriberId")).thenReturn("globalId_45678905678")\r
1803                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1804                         \r
1805                         when(mockExecution.getVariable("URN_mso_adapters_po_auth")).thenReturn("3141634BF7E070AA289CF2892C986C0B")\r
1806                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
1807 \r
1808                         when(mockExecution.getVariable("URN_mso_rollback")).thenReturn("true")\r
1809                         when(mockExecution.getVariable("URN_mso_adapters_sdnc_endpoint")).thenReturn("http://localhost:8090/SDNCAdapter")\r
1810                         when(mockExecution.getVariable("URN_mso_adapters_network_rest_endpoint")).thenReturn("http://localhost:8090/networks/NetworkAdapter")\r
1811                         when(mockExecution.getVariable("URN_mso_adapters_sdnc_resource_endpoint")).thenReturn("http://localhost:8090/SDNCAdapterRpc")\r
1812                         \r
1813                         // preProcessRequest(DelegateExecution execution)\r
1814                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
1815                         DoUpdateNetworkInstance.preProcessRequest(mockExecution)\r
1816 \r
1817                         verify(mockExecution).getVariable("isDebugLogEnabled")\r
1818                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
1819 \r
1820                         //verify variable initialization\r
1821                         initializeVariables(mockExecution)\r
1822 \r
1823                         // Authentications\r
1824                         verify(mockExecution).setVariable("action", "UPDATE")\r
1825                         verify(mockExecution).setVariable(Prefix + "networkRequest", expectedVperNetworkRequest)\r
1826                         verify(mockExecution).setVariable(Prefix + "rollbackEnabled", false)\r
1827                         verify(mockExecution).setVariable(Prefix + "networkInputs", expectedVperNetworkInputs)\r
1828                         verify(mockExecution).setVariable("BasicAuthHeaderValuePO", "Basic cGFzc3dvcmQ=")\r
1829                         verify(mockExecution).setVariable("BasicAuthHeaderValueSDNC", "Basic cGFzc3dvcmQ=")\r
1830                         verify(mockExecution).setVariable(Prefix + "networkOutputs", "")\r
1831 \r
1832                 }\r
1833 \r
1834                 @Test\r
1835                 //@Ignore\r
1836                 public void preProcessRequest_MissingNetworkId() {\r
1837 \r
1838                         println "************ preProcessRequest_MissingName() ************* "\r
1839 \r
1840                         WorkflowException missingNameWorkflowException = new WorkflowException("DoUpdateNetworkInstance", 2500, "Variable 'network-id' value/element is missing.")\r
1841 \r
1842                         ExecutionEntity mockExecution = setupMock()\r
1843                         // Initialize prerequisite variables\r
1844                         when(mockExecution.getVariable("mso-request-id")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1845                         when(mockExecution.getVariable("requestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1846                         when(mockExecution.getVariable("isBaseVfModule")).thenReturn(true)\r
1847                         when(mockExecution.getVariable("recipeTimeout")).thenReturn(0)\r
1848                         when(mockExecution.getVariable("requestAction")).thenReturn("UPDATE")\r
1849                         when(mockExecution.getVariable("serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")\r
1850                         when(mockExecution.getVariable("vnfId")).thenReturn("")\r
1851                         when(mockExecution.getVariable("volumeGroupId")).thenReturn("")\r
1852                         //when(mockExecution.getVariable("networkId")).thenReturn("49c86598-f766-46f8-84f8-8d1c1b10f9b4")\r
1853                         when(mockExecution.getVariable("serviceType")).thenReturn("MOG")\r
1854                         when(mockExecution.getVariable("networkType")).thenReturn("modelName")\r
1855                         when(mockExecution.getVariable("bpmnRequest")).thenReturn(jsonIncomingRequest)\r
1856                         when(mockExecution.getVariable("sdncVersion")).thenReturn("1610")\r
1857 \r
1858                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1859                         when(mockExecution.getVariable("URN_mso_adapters_po_auth")).thenReturn("3141634BF7E070AA289CF2892C986C0B")\r
1860                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
1861                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
1862                         when(mockExecution.getVariable("URN_mso_rollback")).thenReturn("true")\r
1863                         when(mockExecution.getVariable("disableRollback")).thenReturn("true")\r
1864 \r
1865                         // preProcessRequest(DelegateExecution execution)\r
1866                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
1867                         try {\r
1868                                 DoUpdateNetworkInstance.preProcessRequest(mockExecution)\r
1869                         } catch (Exception ex) {\r
1870                                 println " Test End - Handle catch-throw BpmnError()! "\r
1871                         }\r
1872 \r
1873                         verify(mockExecution, atLeast(1)).getVariable("isDebugLogEnabled")\r
1874                         verify(mockExecution, atLeast(1)).setVariable("prefix", Prefix + "")\r
1875 \r
1876                         //verify variable initialization\r
1877                         initializeVariables(mockExecution)\r
1878 \r
1879                         verify(mockExecution).setVariable("action", "UPDATE")\r
1880                         verify(mockExecution).setVariable(Prefix + "networkRequest", expectedNetworkRequestMissingNetworkId)\r
1881                         verify(mockExecution).setVariable(Prefix + "rollbackEnabled", false)\r
1882                         verify(mockExecution).setVariable(Prefix + "networkInputs", expectedNetworkInputsMissingNetworkId)\r
1883                         verify(mockExecution).setVariable(Prefix + "messageId", "88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1884                         verify(mockExecution).setVariable(Prefix + "source", "VID")\r
1885                         verify(mockExecution).setVariable(Prefix + "networkOutputs", "")\r
1886 \r
1887                         verify(mockExecution).setVariable(eq("WorkflowException"), refEq(missingNameWorkflowException))\r
1888 \r
1889                 }\r
1890 \r
1891                 @Test\r
1892                 //@Ignore\r
1893                 public void preProcessRequest_MissingCloudRegion() {\r
1894 \r
1895                         println "************ preProcessRequest_MissingCloudRegion() ************* "\r
1896 \r
1897                         WorkflowException missingCloudRegionWorkflowException = new WorkflowException("DoUpdateNetworkInstance", 2500, "requestDetails has missing 'aic-cloud-region' value/element.")\r
1898 \r
1899                         ExecutionEntity mockExecution = setupMock()\r
1900                         // Initialize prerequisite variables\r
1901                         when(mockExecution.getVariable("mso-request-id")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1902                         when(mockExecution.getVariable("requestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1903                         when(mockExecution.getVariable("isBaseVfModule")).thenReturn(true)\r
1904                         when(mockExecution.getVariable("recipeTimeout")).thenReturn(0)\r
1905                         when(mockExecution.getVariable("requestAction")).thenReturn("UPDATE")\r
1906                         when(mockExecution.getVariable("serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")\r
1907                         when(mockExecution.getVariable("vnfId")).thenReturn("")\r
1908                         when(mockExecution.getVariable("volumeGroupId")).thenReturn("")\r
1909                         when(mockExecution.getVariable("networkId")).thenReturn("networkId")\r
1910                         when(mockExecution.getVariable("serviceType")).thenReturn("MOG")\r
1911                         when(mockExecution.getVariable("networkType")).thenReturn("modelName")\r
1912 \r
1913                         when(mockExecution.getVariable("bpmnRequest")).thenReturn(jsonIncomingRequest_MissingCloudRegion)\r
1914                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1915                         when(mockExecution.getVariable("URN_mso_adapters_po_auth")).thenReturn("3141634BF7E070AA289CF2892C986C0B")\r
1916                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
1917                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
1918                         when(mockExecution.getVariable("URN_mso_rollback")).thenReturn("true")\r
1919                         when(mockExecution.getVariable("disableRollback")).thenReturn("true")\r
1920 \r
1921                         // preProcessRequest(DelegateExecution execution)\r
1922                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
1923                         try {\r
1924                                 DoUpdateNetworkInstance.preProcessRequest(mockExecution)\r
1925                         } catch (Exception ex) {\r
1926                                 println " Test End - Handle catch-throw BpmnError()! "\r
1927                         }\r
1928                         // check the sequence of variable invocation\r
1929                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
1930                         //preDebugger.printInvocations(mockExecution)\r
1931 \r
1932                         verify(mockExecution, atLeast(1)).getVariable("isDebugLogEnabled")\r
1933                         verify(mockExecution, atLeast(1)).setVariable("prefix", Prefix + "")\r
1934 \r
1935                         //verify variable initialization\r
1936                         initializeVariables(mockExecution)\r
1937 \r
1938                         verify(mockExecution).setVariable("action", "UPDATE")\r
1939                         verify(mockExecution).setVariable(Prefix + "networkRequest", expectedNetworkRequestMissingCloudRegion)\r
1940                         verify(mockExecution).setVariable(Prefix + "rollbackEnabled", false)\r
1941                         verify(mockExecution).setVariable(Prefix + "networkInputs", expectedNetworkInputMissingCloudRegion)\r
1942                         verify(mockExecution).setVariable(Prefix + "messageId", "88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1943                         verify(mockExecution).setVariable(Prefix + "source", "VID")\r
1944 \r
1945                         verify(mockExecution).setVariable(eq("WorkflowException"), refEq(missingCloudRegionWorkflowException))\r
1946 \r
1947                 }\r
1948 \r
1949                 @Test\r
1950                 //@Ignore\r
1951                 public void prepareUpdateNetworkRequest() {\r
1952 \r
1953                         println "************ prepareNetworkRequest ************* "\r
1954                                                 ExecutionEntity mockExecution = setupMock()\r
1955                         // Initialize prerequisite variables\r
1956                         when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedVperNetworkRequest)\r
1957                         when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)\r
1958                         when(mockExecution.getVariable(Prefix + "cloudRegionPo")).thenReturn("RDM2WAGPLCP")\r
1959                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("messageId_generated")\r
1960                         when(mockExecution.getVariable(Prefix + "source")).thenReturn("VID")\r
1961                         //when(mockExecution.getVariable(Prefix + "queryVpnBindingAAIResponse")).thenReturn(queryVpnBindingAAIResponse)\r
1962                         when(mockExecution.getVariable(Prefix + "routeCollection")).thenReturn("<routeTargets>13979:105757</routeTargets><routeTargets>13979:105757</routeTargets>")\r
1963                         when(mockExecution.getVariable(Prefix + "networkCollection")).thenReturn("<policyFqdns>GN_EVPN_Test</policyFqdns>")\r
1964                         when(mockExecution.getVariable(Prefix + "tableRefCollection")).thenReturn("<routeTableFqdns>refFQDN1</routeTableFqdns><routeTableFqdns>refFQDN2</routeTableFqdns>")\r
1965                         when(mockExecution.getVariable(Prefix + "requestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
1966                         //when(mockExecution.getVariable("URN_?????")).thenReturn("")   // notificationUrl, //TODO - is this coming from URN? What variable/value to use?\r
1967                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
1968                         when(mockExecution.getVariable(Prefix + "rollbackEnabled")).thenReturn("true")\r
1969 \r
1970                         // preProcessRequest(DelegateExecution execution)\r
1971                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
1972                         DoUpdateNetworkInstance.prepareUpdateNetworkRequest(mockExecution)\r
1973 \r
1974                         // check the sequence of variable invocation\r
1975                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
1976                         //preDebugger.printInvocations(mockExecution)\r
1977 \r
1978                         // verify set prefix = Prefix + ""\r
1979                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
1980 \r
1981                         verify(mockExecution).setVariable(Prefix + "updateNetworkRequest", updateNetworkRequest)\r
1982 \r
1983                 }\r
1984 \r
1985 \r
1986                 @Test\r
1987                 //@Ignore\r
1988                 public void prepareUpdateNetworkRequest_NoPhysicalname() {\r
1989 \r
1990                         println "************ prepareNetworkRequest ************* "\r
1991                         ExecutionEntity mockExecution = mock(ExecutionEntity.class)\r
1992                         // Initialize prerequisite variables\r
1993                         when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(NetworkRequest_noPhysicalName)\r
1994                         when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)\r
1995                         when(mockExecution.getVariable(Prefix + "cloudRegionPo")).thenReturn("RDM2WAGPLCP")\r
1996                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("messageId_generated")\r
1997                         when(mockExecution.getVariable(Prefix + "source")).thenReturn("VID")\r
1998                         //when(mockExecution.getVariable(Prefix + "queryVpnBindingAAIResponse")).thenReturn(queryVpnBindingAAIResponse)\r
1999                         when(mockExecution.getVariable(Prefix + "routeCollection")).thenReturn("<routeTargets>13979:105757</routeTargets><routeTargets>13979:105757</routeTargets>")\r
2000                         when(mockExecution.getVariable(Prefix + "networkCollection")).thenReturn("<policyFqdns>GN_EVPN_Test</policyFqdns>")\r
2001                         when(mockExecution.getVariable(Prefix + "tableRefCollection")).thenReturn("")\r
2002                         when(mockExecution.getVariable(Prefix + "requestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
2003                         //when(mockExecution.getVariable("URN_?????")).thenReturn("")   // notificationUrl, //TODO - is this coming from URN? What variable/value to use?\r
2004                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2005                         when(mockExecution.getVariable(Prefix + "rollbackEnabled")).thenReturn("true")\r
2006 \r
2007                         // preProcessRequest(DelegateExecution execution)\r
2008                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2009                         DoUpdateNetworkInstance.prepareUpdateNetworkRequest(mockExecution)\r
2010 \r
2011                         // check the sequence of variable invocation\r
2012                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2013                         //preDebugger.printInvocations(mockExecution)\r
2014 \r
2015                         // verify set prefix = Prefix + ""\r
2016                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2017 \r
2018                         verify(mockExecution).setVariable(Prefix + "updateNetworkRequest", updateNetworkRequest_noPhysicalName)\r
2019 \r
2020                 }\r
2021 \r
2022                 @Test\r
2023                 //@Ignore\r
2024                 public void prepareSDNCRequest() {\r
2025 \r
2026                         println "************ prepareSDNCRequest ************* "\r
2027 \r
2028                         ExecutionEntity mockExecution = mock(ExecutionEntity.class)\r
2029                         // Initialize prerequisite variables\r
2030                         when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)\r
2031                         when(mockExecution.getVariable(Prefix + "cloudRegionSdnc")).thenReturn("RDM2WAGPLCP")\r
2032                         when(mockExecution.getVariable(Prefix + "serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")\r
2033                         when(mockExecution.getVariable("mso-request-id")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
2034                         when(mockExecution.getVariable("testMessageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
2035                         when(mockExecution.getVariable("URN_mso_workflow_sdncadapter_callback")).thenReturn("http://localhost:8090/SDNCAdapterCallback")\r
2036                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2037                         when(mockExecution.getVariable("GENGSI_siResourceLink")).thenReturn("https://aai-int1.test.com:8443/aai/v8/business/customers/customer/MSO_1610_dev/service-subscriptions/service-subscription/MSO-dev-service-type/service-instances/service-instance/6d4eb22a-82f1-4257-9f80-4176262cfe69/")\r
2038 \r
2039 \r
2040                         // preProcessRequest(DelegateExecution execution)\r
2041                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2042                         DoUpdateNetworkInstance.prepareSDNCRequest(mockExecution)\r
2043 \r
2044                         // verify set prefix = Prefix + ""\r
2045                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2046                         verify(mockExecution).setVariable(Prefix + "changeAssignSDNCRequest", changeAssignSDNCRequest)\r
2047 \r
2048                 }\r
2049 \r
2050                 @Test\r
2051                 //@Ignore\r
2052                 public void prepareSDNCRollbackRequest() {\r
2053 \r
2054                         println "************ prepareSDNCRollbackRequest ************* "\r
2055 \r
2056 \r
2057 \r
2058                         ExecutionEntity mockExecution = mock(ExecutionEntity.class)\r
2059                         // Initialize prerequisite variables\r
2060                         when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)\r
2061                         when(mockExecution.getVariable(Prefix + "cloudRegionSdnc")).thenReturn("RDM2WAGPLCP")\r
2062                         when(mockExecution.getVariable(Prefix + "serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")\r
2063                         when(mockExecution.getVariable(Prefix + "changeAssignSDNCResponse")).thenReturn(assignResponse)\r
2064                         when(mockExecution.getVariable("mso-request-id")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
2065                         when(mockExecution.getVariable("testMessageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")\r
2066                         when(mockExecution.getVariable("URN_mso_workflow_sdncadapter_callback")).thenReturn("http://localhost:8090/SDNCAdapterCallback")\r
2067                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2068                         when(mockExecution.getVariable("GENGSI_siResourceLink")).thenReturn("https://aai-int1.test.com:8443/aai/v8/business/customers/customer/MSO_1610_dev/service-subscriptions/service-subscription/MSO-dev-service-type/service-instances/service-instance/6d4eb22a-82f1-4257-9f80-4176262cfe69/")\r
2069 \r
2070                         // preProcessRequest(DelegateExecution execution)\r
2071                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2072                         DoUpdateNetworkInstance.prepareSDNCRollbackRequest(mockExecution)\r
2073 \r
2074                         // verify set prefix = Prefix + ""\r
2075                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2076                         verify(mockExecution).setVariable(Prefix + "rollbackSDNCRequest", sdncRollbackRequest)\r
2077 \r
2078                 }\r
2079 \r
2080                 @Test\r
2081                 //@Ignore\r
2082                 public void callRESTQueryAAINetworkId_200() {\r
2083 \r
2084                         println "************ callRESTQueryAAINetworkId ************* "\r
2085 \r
2086                         WireMock.reset();\r
2087                         MockGetNetworkByIdWithDepth("49c86598-f766-46f8-84f8-8d1c1b10f9b4", "UpdateNetworkV2/updateNetwork_queryNetworkId_AAIResponse_Success.xml", "all");\r
2088 \r
2089                         ExecutionEntity mockExecution = setupMock()\r
2090                         when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)\r
2091                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
2092                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2093                         when(mockExecution.getVariable("URN_mso_workflow_DoUpdateNetworkInstance_aai_l3_network_uri")).thenReturn("/aai/v9/network/l3-networks/l3-network")\r
2094                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2095                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2096                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2097                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2098                         \r
2099                         // preProcessRequest(DelegateExecution execution)\r
2100                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2101                         DoUpdateNetworkInstance.callRESTQueryAAINetworkId(mockExecution)\r
2102 \r
2103                         // check the sequence of variable invocation\r
2104                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2105                         //preDebugger.printInvocations(mockExecution)\r
2106 \r
2107                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2108                         verify(mockExecution).setVariable(Prefix + "queryIdAAIRequest", "http://localhost:8090/aai/v9/network/l3-networks/l3-network/49c86598-f766-46f8-84f8-8d1c1b10f9b4"+"?depth=all")\r
2109                         verify(mockExecution).setVariable(Prefix + "aaiIdReturnCode", "200")\r
2110 \r
2111                 }\r
2112 \r
2113                 @Test\r
2114                 //@Ignore\r
2115                 public void callRESTQueryAAICloudRegion30_200() {\r
2116 \r
2117                         println "************ callRESTQueryAAICloudRegion30_200 ************* "\r
2118 \r
2119                         WireMock.reset();\r
2120                         MockGetNetworkCloudRegion("CreateNetworkV2/cloudRegion30_AAIResponse_Success.xml", "RDM2WAGPLCP");\r
2121 \r
2122                         ExecutionEntity mockExecution = setupMock()\r
2123                         when(mockExecution.getVariable("prefix")).thenReturn(Prefix + "")\r
2124                         when(mockExecution.getVariable(Prefix + "networkInputs")).thenReturn(expectedNetworkRequest)\r
2125                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2126                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")\r
2127                         when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_cloud_region_uri")).thenReturn("/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic")\r
2128                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2129                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2130                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2131                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2132                         \r
2133                         // preProcessRequest(DelegateExecution execution)\r
2134                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2135                         DoUpdateNetworkInstance.callRESTQueryAAICloudRegion(mockExecution)\r
2136 \r
2137                         // check the sequence of variable invocation\r
2138                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2139                         //preDebugger.printInvocations(mockExecution)\r
2140 \r
2141                         verify(mockExecution, atLeast(1)).setVariable("prefix", Prefix + "")\r
2142                         verify(mockExecution).setVariable(Prefix + "queryCloudRegionRequest", "http://localhost:8090/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/RDM2WAGPLCP")\r
2143                         verify(mockExecution, atLeast(2)).setVariable(Prefix + "queryCloudRegionReturnCode", "200")\r
2144                         verify(mockExecution).setVariable(Prefix + "isCloudRegionGood", true)\r
2145 \r
2146                 }\r
2147 \r
2148                 @Test\r
2149                 //@Ignore\r
2150                 public void callRESTQueryAAICloudRegion25_200() {\r
2151 \r
2152                         println "************ callRESTQueryAAICloudRegion25_200 ************* "\r
2153 \r
2154                         WireMock.reset();\r
2155                     MockGetNetworkCloudRegion("CreateNetworkV2/cloudRegion25_AAIResponse_Success.xml", "RDM2WAGPLCP");\r
2156 \r
2157                         ExecutionEntity mockExecution = setupMock()\r
2158                         when(mockExecution.getVariable("prefix")).thenReturn(Prefix + "")\r
2159                         when(mockExecution.getVariable(Prefix + "networkInputs")).thenReturn(expectedNetworkRequest)\r
2160                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2161                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")\r
2162                         when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_cloud_region_uri")).thenReturn("/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic")\r
2163                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2164                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2165                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2166                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2167 \r
2168                         // preProcessRequest(DelegateExecution execution)\r
2169                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2170                         DoUpdateNetworkInstance.callRESTQueryAAICloudRegion(mockExecution)\r
2171 \r
2172                         // check the sequence of variable invocation\r
2173                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2174                         //preDebugger.printInvocations(mockExecution)\r
2175 \r
2176                         verify(mockExecution, atLeast(1)).setVariable("prefix", Prefix + "")\r
2177                         verify(mockExecution).setVariable(Prefix + "queryCloudRegionRequest", "http://localhost:8090/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/RDM2WAGPLCP")\r
2178                         verify(mockExecution, atLeast(2)).setVariable(Prefix + "queryCloudRegionReturnCode", "200")\r
2179                         verify(mockExecution).setVariable(Prefix + "isCloudRegionGood", true)\r
2180 \r
2181                 }\r
2182 \r
2183                 @Test\r
2184                 //@Ignore\r
2185                 public void callRESTQueryAAICloudRegion_NotFound() {\r
2186 \r
2187                         println "************ callRESTQueryAAICloudRegionFake ************* "\r
2188 \r
2189                         WireMock.reset();\r
2190                         MockGetNetworkCloudRegion_404("MDTWNJ21");\r
2191 \r
2192                         ExecutionEntity mockExecution = setupMock()\r
2193                         when(mockExecution.getVariable("prefix")).thenReturn(Prefix + "")\r
2194                         when(mockExecution.getVariable(Prefix + "networkInputs")).thenReturn(vnfRequestFakeRegion)\r
2195                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2196                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")\r
2197                         when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_cloud_region_uri")).thenReturn("/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic")\r
2198                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2199                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2200                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2201                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2202 \r
2203                         // preProcessRequest(DelegateExecution execution)\r
2204                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2205                         DoUpdateNetworkInstance.callRESTQueryAAICloudRegion(mockExecution)\r
2206 \r
2207                         // check the sequence of variable invocation\r
2208                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2209                         //preDebugger.printInvocations(mockExecution)\r
2210 \r
2211                         verify(mockExecution, atLeast(1)).setVariable("prefix", Prefix + "")\r
2212                         verify(mockExecution).setVariable(Prefix + "queryCloudRegionRequest", "http://localhost:8090/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/MDTWNJ21")\r
2213                         verify(mockExecution, atLeast(1)).setVariable(Prefix + "queryCloudRegionReturnCode", "404")\r
2214                         verify(mockExecution).setVariable(Prefix + "cloudRegionPo", "MDTWNJ21")\r
2215                         verify(mockExecution).setVariable(Prefix + "cloudRegionSdnc", "AAIAIC25")\r
2216                         verify(mockExecution).setVariable(Prefix + "isCloudRegionGood", true)\r
2217 \r
2218                 }\r
2219 \r
2220                 @Test\r
2221                 //@Ignore\r
2222                 public void callRESTQueryAAINetworkVpnBinding_200() {\r
2223 \r
2224                         println "************ callRESTQueryAAINetworkVpnBinding_200 ************* "\r
2225 \r
2226                         WireMock.reset();\r
2227                         MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "85f015d0-2e32-4c30-96d2-87a1a27f8017");\r
2228                         MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "c980a6ef-3b88-49f0-9751-dbad8608d0a6");\r
2229 \r
2230                         ExecutionEntity mockExecution = setupMock()\r
2231                         when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse) // v6\r
2232                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
2233                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2234                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")\r
2235                         when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_vpn_binding_uri")).thenReturn("/aai/v8/network/vpn-bindings/vpn-binding")\r
2236                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2237                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2238                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2239                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2240 \r
2241                         // preProcessRequest(DelegateExecution execution)\r
2242                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2243                         DoUpdateNetworkInstance.callRESTQueryAAINetworkVpnBinding(mockExecution)\r
2244 \r
2245                         // check the sequence of variable invocation\r
2246                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2247                         //preDebugger.printInvocations(mockExecution)\r
2248 \r
2249                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2250                         verify(mockExecution).setVariable(Prefix + "vpnCount", 2)\r
2251                         verify(mockExecution).setVariable(Prefix + "vpnBindings", ['/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/', '/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/'])\r
2252                         // the last vpnBinding value is saved.\r
2253                         verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIRequest", "http://localhost:8090/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017?depth=all")\r
2254                         verify(mockExecution, atLeast(2)).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "200")\r
2255 \r
2256                 }\r
2257 \r
2258                 @Test\r
2259                 //@Ignore\r
2260                 public void callRESTQueryAAINetworkVpnBindingList_200() {\r
2261 \r
2262                         println "************ callRESTQueryAAINetworkVpnBinding_200 ************* "\r
2263 \r
2264                         WireMock.reset();\r
2265                         MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBindingList_AAIResponse_Success.xml", "85f015d0-2e32-4c30-96d2-87a1a27f8017");\r
2266                         MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBindingList_AAIResponse_Success.xml", "c980a6ef-3b88-49f0-9751-dbad8608d0a6");\r
2267 \r
2268                         ExecutionEntity mockExecution = setupMock()\r
2269                         when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse) // v6\r
2270                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
2271                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2272                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")\r
2273                         when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_vpn_binding_uri")).thenReturn("/aai/v8/network/vpn-bindings/vpn-binding")\r
2274                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2275                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2276                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2277                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2278 \r
2279                         // preProcessRequest(DelegateExecution execution)\r
2280                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2281                         DoUpdateNetworkInstance.callRESTQueryAAINetworkVpnBinding(mockExecution)\r
2282 \r
2283                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2284                         verify(mockExecution).setVariable(Prefix + "vpnCount", 2)\r
2285                         verify(mockExecution).setVariable(Prefix + "vpnBindings", ['/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/', '/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/'])\r
2286                         // the last vpnBinding value is saved.\r
2287                         verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIRequest", "http://localhost:8090/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017?depth=all")\r
2288                         verify(mockExecution, atLeast(2)).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "200")\r
2289 \r
2290                 }\r
2291 \r
2292                 \r
2293                 @Test\r
2294                 //@Ignore\r
2295                 public void callRESTQueryAAINetworkVpnBinding_TestScenario01_200() {\r
2296 \r
2297                         println "************ callRESTQueryAAINetworkVpnBinding_200 ************* "\r
2298 \r
2299                         WireMock.reset();\r
2300                         MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "85f015d0-2e32-4c30-96d2-87a1a27f8017");\r
2301 \r
2302                         ExecutionEntity mockExecution = setupMock()\r
2303                         when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponseTestScenario01)\r
2304                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
2305                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2306                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")\r
2307                         when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_vpn_binding_uri")).thenReturn("/aai/v8/network/vpn-bindings/vpn-binding")\r
2308                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2309                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2310                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2311                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2312 \r
2313                         // preProcessRequest(DelegateExecution execution)\r
2314                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2315                         DoUpdateNetworkInstance.callRESTQueryAAINetworkVpnBinding(mockExecution)\r
2316 \r
2317                         // check the sequence of variable invocation\r
2318                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2319                         //preDebugger.printInvocations(mockExecution)\r
2320 \r
2321                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2322                         verify(mockExecution).setVariable(Prefix + "vpnCount", 1)\r
2323                         verify(mockExecution).setVariable(Prefix + "vpnBindings", ['/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/'])\r
2324                         // the last vpnBinding value is saved.\r
2325                         verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIRequest", "http://localhost:8090/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017?depth=all")\r
2326                         verify(mockExecution).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "200")\r
2327 \r
2328                 }\r
2329 \r
2330                 @Test\r
2331                 //@Ignore\r
2332                 public void callRESTQueryAAINetworkVpnBinding_200_URN_Uri() {\r
2333 \r
2334                         println "************ callRESTQueryAAINetworkVpnBinding_200 ************* "\r
2335 \r
2336                         WireMock.reset();\r
2337                         MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "85f015d0-2e32-4c30-96d2-87a1a27f8017");\r
2338                         MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "c980a6ef-3b88-49f0-9751-dbad8608d0a6");\r
2339 \r
2340                         ExecutionEntity mockExecution = setupMock()\r
2341                         when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)\r
2342                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
2343                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2344                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")\r
2345                         when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_vpn_binding_uri")).thenReturn("/aai/v8/network/vpn-bindings/vpn-binding")\r
2346                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2347                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2348                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2349                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2350 \r
2351                         // preProcessRequest(DelegateExecution execution)\r
2352                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2353                         DoUpdateNetworkInstance.callRESTQueryAAINetworkVpnBinding(mockExecution)\r
2354 \r
2355                         // check the sequence of variable invocation\r
2356                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2357                         //preDebugger.printInvocations(mockExecution)\r
2358 \r
2359                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2360                         verify(mockExecution).setVariable(Prefix + "vpnCount", 2)\r
2361                         verify(mockExecution).setVariable(Prefix + "vpnBindings", ['/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/', '/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/'])\r
2362                         // the last vpnBinding value is saved.\r
2363                         verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIRequest", "http://localhost:8090/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017?depth=all")\r
2364                         verify(mockExecution, atLeast(2)).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "200")\r
2365 \r
2366                 }\r
2367 \r
2368                 @Test\r
2369                 //@Ignore\r
2370                 public void callRESTQueryAAINetworkVpnBinding_NotPresent() {\r
2371 \r
2372                         println "************ callRESTQueryAAINetworkVpnBinding_NotPresent ************* "\r
2373 \r
2374                         WireMock.reset();\r
2375                         MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "85f015d0-2e32-4c30-96d2-87a1a27f8017");\r
2376 \r
2377                         ExecutionEntity mockExecution = setupMock()\r
2378                         // Initialize prerequisite variables\r
2379 \r
2380                         when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponseVpnNotPresent)\r
2381                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
2382                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2383                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")\r
2384                         when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_l3_network_uri")).thenReturn("/aai/v8/network/l3-networks/l3-network")\r
2385                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2386                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2387                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2388                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2389 \r
2390                         // preProcessRequest(DelegateExecution execution)\r
2391                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2392                         DoUpdateNetworkInstance.callRESTQueryAAINetworkVpnBinding(mockExecution)\r
2393 \r
2394                         // check the sequence of variable invocation\r
2395                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2396                         //preDebugger.printInvocations(mockExecution)\r
2397 \r
2398                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2399                         verify(mockExecution).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "200")\r
2400                         verify(mockExecution).setVariable(Prefix + "vpnCount", 0)\r
2401                         verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIResponse", aaiVpnResponseStub)\r
2402 \r
2403                 }\r
2404 \r
2405                 @Test\r
2406                 //@Ignore\r
2407                 public void callRESTQueryAAINetworkTableRef_200() {\r
2408 \r
2409                         println "************ callRESTQueryAAINetworkTableRef_200 ************* "\r
2410 \r
2411                         WireMock.reset();\r
2412                         MockGetNetworkTableReference("UpdateNetworkV2/updateNetwork_queryNetworkTableRef1_AAIResponse_Success.xml", "refFQDN1");\r
2413                         MockGetNetworkTableReference("UpdateNetworkV2/updateNetwork_queryNetworkTableRef2_AAIResponse_Success.xml", "refFQDN2");\r
2414 \r
2415                         ExecutionEntity mockExecution = setupMock()\r
2416                         when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)\r
2417                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
2418                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2419                         when(mockExecution.getVariable("URN_mso_workflow_default_aai_network_table_reference_uri")).thenReturn("")\r
2420                         when(mockExecution.getVariable("URN_mso_workflow_DoUpdateNetworkInstance_aai_route_table_reference_uri")).thenReturn("/aai/v8/network/route-table-references/route-table-reference")\r
2421                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2422                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2423                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2424                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2425 \r
2426                         // preProcessRequest(DelegateExecution execution)\r
2427                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2428                         DoUpdateNetworkInstance.callRESTQueryAAINetworkTableRef(mockExecution)\r
2429 \r
2430                         // check the sequence of variable invocation\r
2431                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2432                         //preDebugger.printInvocations(mockExecution)\r
2433 \r
2434                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2435                         verify(mockExecution).setVariable(Prefix + "networkTableRefCount", 2)\r
2436                         verify(mockExecution).setVariable(Prefix + "networkTableRefUriList", ['/aai/v8/network/route-table-references/route-table-reference/refFQDN1','/aai/v8/network/route-table-references/route-table-reference/refFQDN2'])\r
2437                         // the last vpnBinding value is saved.\r
2438                         verify(mockExecution).setVariable(Prefix + "queryNetworkTableRefAAIRequest", "http://localhost:8090/aai/v8/network/route-table-references/route-table-reference/refFQDN1?depth=all")\r
2439                         verify(mockExecution, atLeast(2)).setVariable(Prefix + "aaiQqueryNetworkTableRefReturnCode", "200")\r
2440 \r
2441                 }\r
2442 \r
2443                 @Test\r
2444                 //@Ignore\r
2445                 public void callRESTQueryAAINetworkPolicy_200() {\r
2446 \r
2447                         println "************ callRESTQueryAAINetworkPolicy_200 ************* "\r
2448 \r
2449                         WireMock.reset();\r
2450                         MockGetNetworkPolicy("UpdateNetworkV2/updateNetwork_queryNetworkPolicy_AAIResponse_Success.xml", "cee6d136-e378-4678-a024-2cd15f0ee0cg");\r
2451 \r
2452                         ExecutionEntity mockExecution = setupMock()\r
2453                         when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)\r
2454                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
2455                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2456                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")\r
2457                         when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_network_policy_uri")).thenReturn("/aai/v8/network/network-policies/network-policy")\r
2458                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2459                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2460                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2461                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2462 \r
2463                         // preProcessRequest(DelegateExecution execution)\r
2464                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2465                         DoUpdateNetworkInstance.callRESTQueryAAINetworkPolicy(mockExecution)\r
2466 \r
2467                         // check the sequence of variable invocation\r
2468                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2469                         //preDebugger.printInvocations(mockExecution)\r
2470 \r
2471                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2472                         verify(mockExecution).setVariable(Prefix + "networkPolicyCount", 1)\r
2473                         verify(mockExecution).setVariable(Prefix + "networkPolicyUriList", ['/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg'])\r
2474                         // the last vpnBinding value is saved.\r
2475                         verify(mockExecution).setVariable(Prefix + "queryNetworkPolicyAAIRequest", "http://localhost:8090/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg?depth=all")\r
2476                         verify(mockExecution).setVariable(Prefix + "aaiQqueryNetworkPolicyReturnCode", "200")\r
2477 \r
2478                 }\r
2479 \r
2480 \r
2481                 @Test\r
2482                 //@Ignore\r
2483                 public void callRESTReQueryAAINetworkId_200() {\r
2484 \r
2485                         println "************ callRESTReQueryAAINetworkId ************* "\r
2486 \r
2487                         WireMock.reset();\r
2488                         MockGetNetworkByIdWithDepth("49c86598-f766-46f8-84f8-8d1c1b10f9b4", "UpdateNetworkV2/updateNetwork_queryNetworkId_AAIResponse_Success.xml", "all");\r
2489 \r
2490                         ExecutionEntity mockExecution = setupMock()\r
2491                         when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)\r
2492                         when(mockExecution.getVariable(Prefix + "changeAssignSDNCResponse")).thenReturn(sdncAdapterWorkflowFormattedResponse)\r
2493                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
2494                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2495                         when(mockExecution.getVariable("URN_mso_workflow_DoUpdateNetworkInstance_aai_l3_network_uri")).thenReturn("/aai/v9/network/l3-networks/l3-network")\r
2496                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2497                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2498                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2499                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2500 \r
2501                         // preProcessRequest(DelegateExecution execution)\r
2502                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2503                         DoUpdateNetworkInstance.callRESTReQueryAAINetworkId(mockExecution)\r
2504 \r
2505                         // check the sequence of variable invocation\r
2506                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2507                         //preDebugger.printInvocations(mockExecution)\r
2508 \r
2509                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2510                         verify(mockExecution).setVariable(Prefix + "requeryIdAAIRequest", "http://localhost:8090/aai/v9/network/l3-networks/l3-network/49c86598-f766-46f8-84f8-8d1c1b10f9b4"+"?depth=all")\r
2511                         verify(mockExecution).setVariable(Prefix + "aaiRequeryIdReturnCode", "200")\r
2512 \r
2513                 }\r
2514 \r
2515 \r
2516                 @Test\r
2517                 //@Ignore\r
2518                 public void callRESTUpdateContrailAAINetworkREST_200() {\r
2519 \r
2520                         println "************ callRESTUpdateContrailAAINetwork ************* "\r
2521 \r
2522                         WireMock.reset();\r
2523                         MockPutNetworkIdWithDepth("UpdateNetworkV2/updateNetwork_updateContrail_AAIResponse_Success.xml", "49c86598-f766-46f8-84f8-8d1c1b10f9b4", "all");\r
2524                         \r
2525                         ExecutionEntity mockExecution = setupMock()\r
2526                         when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)\r
2527                         when(mockExecution.getVariable(Prefix + "changeAssignSDNCResponse")).thenReturn(sdncAdapterWorkflowFormattedResponse)\r
2528                         when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)\r
2529                         when(mockExecution.getVariable(Prefix + "updateNetworkResponse")).thenReturn(updateNetworkResponseREST)\r
2530                         when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
2531                         when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")\r
2532                         when(mockExecution.getVariable("URN_mso_workflow_DoUpdateNetworkInstance_aai_l3_network_uri")).thenReturn("/aai/v9/network/l3-networks/l3-network")\r
2533                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2534                         when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')\r
2535                         when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")\r
2536                         when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")\r
2537 \r
2538                         // preProcessRequest(DelegateExecution execution)\r
2539                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2540                         DoUpdateNetworkInstance.callRESTUpdateContrailAAINetwork(mockExecution)\r
2541 \r
2542                         // check the sequence of variable invocation\r
2543                         //MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()\r
2544                         //preDebugger.printInvocations(mockExecution)\r
2545 \r
2546                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2547                         verify(mockExecution).setVariable(Prefix + "updateContrailAAIUrlRequest", "http://localhost:8090/aai/v9/network/l3-networks/l3-network/49c86598-f766-46f8-84f8-8d1c1b10f9b4"+"?depth=all")\r
2548                         verify(mockExecution).setVariable(Prefix + "updateContrailAAIPayloadRequest", updateContrailAAIPayloadRequest)\r
2549                         verify(mockExecution).setVariable(Prefix + "aaiUpdateContrailReturnCode", "200")\r
2550                         //verify(mockExecution).setVariable(Prefix + "updateContrailAAIResponse", updateContrailAAIResponse)\r
2551                         verify(mockExecution).setVariable(Prefix + "isPONR", true)\r
2552 \r
2553                 }\r
2554 \r
2555 \r
2556 \r
2557                 @Test\r
2558                 //@Ignore\r
2559                 public void validateUpdateNetworkResponseREST() {\r
2560 \r
2561                         println "************ validateNetworkResponse ************* "\r
2562 \r
2563                         ExecutionEntity mockExecution = mock(ExecutionEntity.class)\r
2564                         // Initialize prerequisite variables\r
2565                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2566                         when(mockExecution.getVariable(Prefix + "updateNetworkResponse")).thenReturn(updateNetworkResponseREST)\r
2567                         when(mockExecution.getVariable(Prefix + "networkReturnCode")).thenReturn('200')\r
2568 \r
2569                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2570                         DoUpdateNetworkInstance.validateUpdateNetworkResponse(mockExecution)\r
2571 \r
2572                         //MockitoDebuggerImpl debugger = new MockitoDebuggerImpl()\r
2573                         //debugger.printInvocations(mockExecution)\r
2574 \r
2575                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2576                         verify(mockExecution).setVariable(Prefix + "updateNetworkResponse", updateNetworkResponseREST)\r
2577                         verify(mockExecution).setVariable(Prefix + "isNetworkRollbackNeeded", true)\r
2578                         verify(mockExecution).setVariable(Prefix + "rollbackNetworkRequest", updateRollbackNetworkRequest)\r
2579 \r
2580                 }\r
2581 \r
2582                 @Test\r
2583                 //@Ignore\r
2584                 public void validateUpdateNetworkResponseREST_Error() {\r
2585 \r
2586                         println "************ validateNetworkResponse ************* "\r
2587 \r
2588                         WorkflowException workflowException = new WorkflowException("DoUpdateNetworkInstance", 2500, "Received error from Network Adapter: JBWEB000065: HTTP Status 500.")\r
2589 \r
2590                         ExecutionEntity mockExecution = setupMock()\r
2591                         // Initialize prerequisite variables\r
2592                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2593                         when(mockExecution.getVariable(Prefix + "updateNetworkResponse")).thenReturn(networkException500)\r
2594                         when(mockExecution.getVariable(Prefix + "networkReturnCode")).thenReturn('500')\r
2595 \r
2596                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2597                         try {\r
2598                                 DoUpdateNetworkInstance.validateUpdateNetworkResponse(mockExecution)\r
2599                         } catch (Exception ex) {\r
2600                                 println " Test End - Handle catch-throw BpmnError()! "\r
2601                         }\r
2602 \r
2603                         verify(mockExecution).setVariable("prefix", Prefix + "")\r
2604                         verify(mockExecution, atLeast(1)).setVariable("WorkflowException", refEq(workflowException, any(WorkflowException.class)))\r
2605 \r
2606                 }\r
2607 \r
2608                 @Test\r
2609                 //@Ignore\r
2610                 public void validateSDNCResponse() {\r
2611 \r
2612                         println "************ validateSDNCResponse ************* "\r
2613 \r
2614                         ExecutionEntity mockExecution = setupMock()\r
2615                         // Initialize prerequisite variables\r
2616                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2617                         when(mockExecution.getVariable(Prefix + "changeAssignSDNCResponse")).thenReturn(sdncAdapterWorkflowResponse)\r
2618                         when(mockExecution.getVariable("prefix")).thenReturn(Prefix + "")\r
2619                         when(mockExecution.getVariable("SDNCA_SuccessIndicator")).thenReturn(true)\r
2620                         when(mockExecution.getVariable(Prefix + "sdncReturnCode")).thenReturn("200")\r
2621                         when(mockExecution.getVariable(Prefix + "isResponseGood")).thenReturn(true)\r
2622 \r
2623                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2624                         try {\r
2625                           DoUpdateNetworkInstance.validateSDNCResponse(mockExecution)\r
2626                           verify(mockExecution).setVariable(Prefix + "isSdncRollbackNeeded", true)\r
2627                           verify(mockExecution).setVariable(Prefix + "rollbackSDNCRequest", "")\r
2628 \r
2629                         } catch (Exception ex) {\r
2630                                 println " Graceful Exit - " + ex.getMessage()\r
2631                         }\r
2632                         //MockitoDebuggerImpl debugger = new MockitoDebuggerImpl()\r
2633                         //debugger.printInvocations(mockExecution)\r
2634 \r
2635                         //verify(mockExecution).setVariable(Prefix + "isSdncRollbackNeeded", true)\r
2636 \r
2637                 }\r
2638 \r
2639                 @Test\r
2640                 //@Ignore\r
2641                 public void validateSDNCResponse_Error() {\r
2642 \r
2643                         println "************ validateSDNCResponse ************* "\r
2644                         //ExecutionEntity mockExecution = mock(ExecutionEntity.class)\r
2645                         ExecutionEntity mockExecution = setupMock()\r
2646                         // Initialize prerequisite variables\r
2647                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2648                         when(mockExecution.getVariable(Prefix + "changeAssignSDNCResponse")).thenReturn(sdncAdapterWorkflowResponse_Error)\r
2649                         when(mockExecution.getVariable("prefix")).thenReturn(Prefix + "")\r
2650                         when(mockExecution.getVariable("SDNCA_SuccessIndicator")).thenReturn(false)\r
2651                         when(mockExecution.getVariable(Prefix + "sdncReturnCode")).thenReturn("200")\r
2652                         when(mockExecution.getVariable(Prefix + "isResponseGood")).thenReturn(true)\r
2653 \r
2654                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2655                         try {\r
2656                                 DoUpdateNetworkInstance.validateSDNCResponse(mockExecution)\r
2657                         } catch (Exception ex) {\r
2658                                 println " Graceful Exit! - " + ex.getMessage()\r
2659                         }\r
2660                         //MockitoDebuggerImpl debugger = new MockitoDebuggerImpl()\r
2661                         //debugger.printInvocations(mockExecution)\r
2662 \r
2663                         // verify set prefix = Prefix + ""\r
2664                         //verify(mockExecution).setVariable(Prefix + "sdncResponseSuccess", false)\r
2665 \r
2666                 }\r
2667 \r
2668                 @Test\r
2669                 //@Ignore\r
2670                 public void prepareRollbackData() {\r
2671 \r
2672                         println "************ prepareRollbackData() ************* "\r
2673 \r
2674 \r
2675 \r
2676                         WorkflowException workflowException = new WorkflowException("DoUpdateNetworkInstance", 2500, "Received error from Network Adapter: JBWEB000065: HTTP Status 500.")\r
2677 \r
2678                         ExecutionEntity mockExecution = mock(ExecutionEntity.class)\r
2679                         // Initialize prerequisite variables\r
2680                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2681                         when(mockExecution.getVariable(Prefix + "rollbackSDNCRequest")).thenReturn(rollbackSDNCRequest)\r
2682                         when(mockExecution.getVariable(Prefix + "rollbackNetworkRequest")).thenReturn(rollbackNetworkRequest)\r
2683                         when(mockExecution.getVariable("WorkflowException")).thenReturn(workflowException)\r
2684 \r
2685                         // preProcessRequest(DelegateExecution execution)\r
2686                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2687                         DoUpdateNetworkInstance.prepareRollbackData(mockExecution)\r
2688 \r
2689                         verify(mockExecution).getVariable("isDebugLogEnabled")\r
2690                         verify(mockExecution).setVariable("prefix", Prefix)\r
2691 \r
2692                 }\r
2693 \r
2694                 @Test\r
2695                 //@Ignore\r
2696                 public void postProcessResponse() {\r
2697 \r
2698                         println "************ postProcessResponse() ************* "\r
2699                         ExecutionEntity mockExecution = mock(ExecutionEntity.class)\r
2700                         // Initialize prerequisite variables\r
2701                         when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
2702                         when(mockExecution.getVariable(Prefix + "isException")).thenReturn(false)\r
2703                         when(mockExecution.getVariable("sdncVersion")).thenReturn("1610")\r
2704                         when(mockExecution.getVariable(Prefix + "rollbackSDNCRequest")).thenReturn(rollbackSDNCRequest)\r
2705                         when(mockExecution.getVariable(Prefix + "rollbackNetworkRequest")).thenReturn(rollbackSDNCRequest)\r
2706                         when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)\r
2707                         when(mockExecution.getVariable("mso-request-id")).thenReturn("requestId")\r
2708 \r
2709                         // preProcessRequest(DelegateExecution execution)\r
2710                         DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()\r
2711                         DoUpdateNetworkInstance.postProcessResponse(mockExecution)\r
2712 \r
2713                         verify(mockExecution, atLeast(3)).getVariable("isDebugLogEnabled")\r
2714                         verify(mockExecution, atLeast(3)).setVariable("prefix", Prefix)\r
2715                         verify(mockExecution).setVariable(Prefix + "Success", true)\r
2716 \r
2717                 }\r
2718 \r
2719                 private ExecutionEntity setupMock() {\r
2720 \r
2721                         ProcessDefinition mockProcessDefinition = mock(ProcessDefinition.class)\r
2722                         when(mockProcessDefinition.getKey()).thenReturn("DoUpdateNetworkInstance")\r
2723                         RepositoryService mockRepositoryService = mock(RepositoryService.class)\r
2724                         when(mockRepositoryService.getProcessDefinition()).thenReturn(mockProcessDefinition)\r
2725                         when(mockRepositoryService.getProcessDefinition().getKey()).thenReturn("DoUpdateNetworkInstance")\r
2726                         when(mockRepositoryService.getProcessDefinition().getId()).thenReturn("100")\r
2727                         ProcessEngineServices mockProcessEngineServices = mock(ProcessEngineServices.class)\r
2728                         when(mockProcessEngineServices.getRepositoryService()).thenReturn(mockRepositoryService)\r
2729 \r
2730                         ExecutionEntity mockExecution = mock(ExecutionEntity.class)\r
2731                         // Initialize prerequisite variables\r
2732 \r
2733                         when(mockExecution.getId()).thenReturn("100")\r
2734                         when(mockExecution.getProcessDefinitionId()).thenReturn("DoUpdateNetworkInstance")\r
2735                         when(mockExecution.getProcessInstanceId()).thenReturn("DoUpdateNetworkInstance")\r
2736                         when(mockExecution.getProcessEngineServices()).thenReturn(mockProcessEngineServices)\r
2737                         when(mockExecution.getProcessEngineServices().getRepositoryService().getProcessDefinition(mockExecution.getProcessDefinitionId())).thenReturn(mockProcessDefinition)\r
2738 \r
2739                         return mockExecution\r
2740                 }\r
2741 \r
2742 \r
2743 }\r