package org.openecomp.mso.bpmn.infrastructure.scripts
import static org.mockito.Mockito.*
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkByIdWithDepth;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkCloudRegion;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkCloudRegion_404;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkVpnBinding;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkTableReference;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetNetworkPolicy;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockPutNetworkIdWithDepth;
import org.camunda.bpm.engine.ProcessEngineServices
import org.camunda.bpm.engine.RepositoryService
import org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity
import org.camunda.bpm.engine.repository.ProcessDefinition
import org.camunda.bpm.engine.delegate.DelegateExecution
import org.junit.Before
import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
import org.mockito.MockitoAnnotations
import org.mockito.runners.MockitoJUnitRunner
import org.openecomp.mso.bpmn.common.scripts.MsoUtils
import org.openecomp.mso.bpmn.core.WorkflowException
import com.github.tomakehurst.wiremock.client.WireMock
import com.github.tomakehurst.wiremock.junit.WireMockRule
import org.apache.commons.lang3.*
@RunWith(MockitoJUnitRunner.class)
class DoUpdateNetworkInstanceTest {
@Rule
public WireMockRule wireMockRule = new WireMockRule(8090);
def utils = new MsoUtils()
String Prefix="UPDNETI_"
String jsonIncomingRequest =
"""{ "requestDetails": {
"modelInfo": {
"modelType": "network",
"modelCustomizationId": "f21df226-8093-48c3-be7e-0408fcda0422",
"modelName": "CONTRAIL_EXTERNAL",
"modelVersion": "1.0"
},
"cloudConfiguration": {
"lcpCloudRegionId": "RDM2WAGPLCP",
"tenantId": "7dd5365547234ee8937416c65507d266"
},
"requestInfo": {
"instanceName": "MNS-25180-L-01-dmz_direct_net_1",
"source": "VID",
"callbackUrl": "",
"suppressRollback": true,
"productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"
},
"relatedInstanceList": [
{
"relatedInstance": {
"instanceId": "f70e927b-6087-4974-9ef8-c5e4d5847ca4",
"modelInfo": {
"modelType": "serviceT",
"modelId": "modelI",
"modelNameVersionId": "modelNameVersionI",
"modelName": "modleNam",
"modelVersion": "1"
}
}
}
],
"requestParameters": {
"userParams": [
{
"name": "someUserParam1",
"value": "someValue1"
}
]
}
}}"""
String jsonIncomingRequest_MissingCloudRegion =
"""{ "requestDetails": {
"modelInfo": {
"modelType": "network",
"modelCustomizationId": "f21df226-8093-48c3-be7e-0408fcda0422",
"modelName": "CONTRAIL_EXTERNAL",
"modelVersion": "1.0"
},
"cloudConfiguration": {
"tenantId": "7dd5365547234ee8937416c65507d266"
},
"requestInfo": {
"instanceName": "MNS-25180-L-01-dmz_direct_net_1",
"source": "VID",
"callbackUrl": "",
"suppressRollback": true,
"productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"
},
"relatedInstanceList": [
{
"relatedInstance": {
"instanceId": "f70e927b-6087-4974-9ef8-c5e4d5847ca4",
"modelInfo": {
"modelType": "serviceT",
"modelId": "modelI",
"modelNameVersionId": "modelNameVersionI",
"modelName": "modleNam",
"modelVersion": "1"
}
}
}
],
"requestParameters": {
"userParams": []
}
}}"""
String expectedNetworkRequestMissingNetworkId =
"""
88f65519-9a38-4c4b-8445-9eb4a5a5af56
UPDATE
f70e927b-6087-4974-9ef8-c5e4d5847ca4
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
f21df226-8093-48c3-be7e-0408fcda0422
RDM2WAGPLCP
7dd5365547234ee8937416c65507d266
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
false
1610
someValue1
"""
String expectedNetworkRequestMissingCloudRegion =
"""
88f65519-9a38-4c4b-8445-9eb4a5a5af56
UPDATE
f70e927b-6087-4974-9ef8-c5e4d5847ca4
networkId
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
f21df226-8093-48c3-be7e-0408fcda0422
null
7dd5365547234ee8937416c65507d266
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
false
null
"""
String expectedNetworkInputMissingCloudRegion =
"""
networkId
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
f21df226-8093-48c3-be7e-0408fcda0422
null
7dd5365547234ee8937416c65507d266
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
false
null
"""
String networkInputsMissingName =
"""
CONTRAIL_EXTERNAL
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
RDM2WAGPLCP
e81d842d3e8b45c5a59f57cd76af3aaf
"""
String networkInputsMissingCloudRegion =
"""
HSL_direct_net_2
CONTRAIL_EXTERNAL
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
e81d842d3e8b45c5a59f57cd76af3aaf
"""
// expectedNetworkRequest
String expectedNetworkRequest =
"""
88f65519-9a38-4c4b-8445-9eb4a5a5af56
UPDATE
f70e927b-6087-4974-9ef8-c5e4d5847ca4
49c86598-f766-46f8-84f8-8d1c1b10f9b4
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
f21df226-8093-48c3-be7e-0408fcda0422
RDM2WAGPLCP
7dd5365547234ee8937416c65507d266
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
false
1610
someValue1
"""
String expectedNetworkInputs =
"""
49c86598-f766-46f8-84f8-8d1c1b10f9b4
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
f21df226-8093-48c3-be7e-0408fcda0422
RDM2WAGPLCP
7dd5365547234ee8937416c65507d266
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
false
1610
"""
String expectedVperNetworkRequest =
"""
88f65519-9a38-4c4b-8445-9eb4a5a5af56
UPDATE
f70e927b-6087-4974-9ef8-c5e4d5847ca4
49c86598-f766-46f8-84f8-8d1c1b10f9b4
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
MSO-dev-service-type
globalId_45678905678
RDM2WAGPLCP
7dd5365547234ee8937416c65507d266
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
false
false
CONTRAIL_EXTERNAL
sn5256d1-5a33-55df-13ab-12abad84e111
sn5256d1-5a33-55df-13ab-12abad84e764
1
sn5256d1-5a33-55df-13ab-12abad84e222
1702
"""
String expectedVperNetworkInputs =
"""
49c86598-f766-46f8-84f8-8d1c1b10f9b4
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
MSO-dev-service-type
globalId_45678905678
RDM2WAGPLCP
7dd5365547234ee8937416c65507d266
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
false
false
CONTRAIL_EXTERNAL
sn5256d1-5a33-55df-13ab-12abad84e111
sn5256d1-5a33-55df-13ab-12abad84e764
1
sn5256d1-5a33-55df-13ab-12abad84e222
1702
"""
String expectedNetworkInputsMissingNetworkId =
"""
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
f21df226-8093-48c3-be7e-0408fcda0422
RDM2WAGPLCP
7dd5365547234ee8937416c65507d266
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
false
1610
"""
String NetworkRequest_noPhysicalName =
"""
1ef47428-cade-45bd-a103-0751e8b2deb0
UPDATE
PORTAL
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
RDM2WAGPLCP
7dd5365547234ee8937416c65507d266
3008
true
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
true
true
10.10.125.1
"""
String vnfRequestFakeRegion =
"""
1ef47428-cade-45bd-a103-0751e8b2deb0
UPDATE
PORTAL
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
MDTWNJ21
7dd5365547234ee8937416c65507d266
1
0
"""
// expectedNetworkRequest
String expectedNetworkRequest_Outputs =
"""
1ef47428-cade-45bd-a103-0751e8b2deb0
UPDATE
PORTAL
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
RDM2WAGPLCP
7dd5365547234ee8937416c65507d266
MNS-25180-L-01-dmz_direct_net_1
bdc5efe8-404a-409b-85f6-0dcc9eebae30
1
0
"""
String networkInputs =
"""
bdc5efe8-404a-409b-85f6-0dcc9eebae30
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
RDM2WAGPLCP
e81d842d3e8b45c5a59f57cd76af3aaf
"""
String networkOutputs =
"""
49c86598-f766-46f8-84f8-8d1c1b10f9b4
MNS-25180-L-01-dmz_direct_net_1
"""
String queryAAIResponse =
"""
bdc5efe8-404a-409b-85f6-0dcc9eebae30
HSL_direct_net_2
CONTRAIL_EXTERNAL
dmz_direct
contrail
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
0
pending-delete
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
107.239.52.1
107.239.52.0
24
4
pending-delete
true
vpn-binding
https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/
vpn-binding.vpn-id
85f015d0-2e32-4c30-96d2-87a1a27f8017
vpn-binding
https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/
vpn-binding.vpn-id
c980a6ef-3b88-49f0-9751-dbad8608d0a6
tenant
https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/
tenant.tenant-id
7dd5365547234ee8937416c65507d266
"""
String queryIdAIIResponse =
"""
49c86598-f766-46f8-84f8-8d1c1b10f9b4
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
dmz_direct
contrail
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
0
l3-version
pending-delete
ST_2Bindings_6006/55288ef0-595c-47d3-819e-cf93aaac6326
networkName
false
true
false
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
107.239.52.1
107.239.52.0
24
4
pending-update
true
subnetName
true
400d286b-7e44-4514-b9b3-f70f7360ff32
172.20.1.0/24
10.102.200.1
ip-address
1505857300987
6f038013-8b15-4eb8-914b-507489fbc8ee
10.102.0.0/16
10.102.200.1
ip-address
1505857301151
8811c5f8-f1ed-4fa0-a505-e1be60396e28
192.168.2.0/25
10.102.200.1
1505857301954
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
107.239.52.1
107.239.52.0
24
4
pending-delete
true
subnetName
true
400d286b-7e44-4514-b9b3-f70f7360ff32
172.20.1.0/24
10.102.200.1
1505857300987
414
4132176
415
4132176
inner
ctag-version
tenant
https://aai-ext1.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/897deadc2b954a6bac6d3c197fb3525e/
tenant.tenant-id
897deadc2b954a6bac6d3c197fb3525e
tenant.tenant-name
MSOTest1
vpn-binding
https://aai-ext1.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/a290b841-f672-44dd-b9cd-6f8c20d7d8c8/
vpn-binding.vpn-id
a290b841-f672-44dd-b9cd-6f8c20d7d8c8
vpn-binding.vpn-name
oam_protected_net_6_MTN5_msotest2
vpn-binding
https://aai-ext1.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/24a4b507-853a-4a38-99aa-05fcc54be24d/
vpn-binding.vpn-id
24a4b507-853a-4a38-99aa-05fcc54be24d
vpn-binding.vpn-name
oam_protected_net_6_MTN5_msotest1
vpn-binding
https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/
vpn-binding.vpn-id
85f015d0-2e32-4c30-96d2-87a1a27f8017
vpn-binding
https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/
vpn-binding.vpn-id
c980a6ef-3b88-49f0-9751-dbad8608d0a6
tenant
https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/
tenant.tenant-id
7dd5365547234ee8937416c65507d266
network-policy
https://aai-app-e2e.test.com:8443/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg
network-policy.network-policy-id
cee6d136-e378-4678-a024-2cd15f0ee0cg
route-table-reference
https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN1
route-table-reference.route-table-reference-id
cee6d136-e378-4678-a024-2cd15f0ee0hi
route-table-reference
https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN2
route-table-reference.route-table-reference-id
cee6d136-e378-4678-a024-2cd15f0ee0hi
"""
String queryIdAIIResponseTestScenario01 =
"""
4da55fe4-7a9e-478c-a434-8a98d62265ab
GN_EVPN_direct_net_0_ST1
CONTRAIL30_BASIC
GN_EVPN_direct
contrail
false
9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
0
1465398611
pending-delete
networkName
false
true
false
cb1a7b47-5428-44c9-89c2-8b17541c3228
108.239.40.1
108.239.40.0
28
4
pending-delete
true
108.239.40.0
108.239.40.0
1465398611
subnetName
e2cc7c14-90f0-4205-840d-b4e07f04e621
2606:ae00:2e01:604::1
2606:ae00:2e01:604::
64
6
pending-delete
true
2606:ae00:2e01:604::
2606:ae00:2e01:604::
1465398611
subnetName
416
4132176
cloud-region
https://mtanjv9aaas03.aic.cip.com:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/
cloud-region.cloud-region-id
AAIAIC25
cloud-region.cloud-owner
att-aic
cloud-region.owner-defined-type
tenant
https://mtanjv9aaas03.aic.cip.com:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant/4ae1d3446a4c48b2bec44b6cfba06d68/
tenant.tenant-id
4ae1d3446a4c48b2bec44b6cfba06d68
cloud-region.cloud-owner
att-aic
cloud-region.cloud-region-id
AAIAIC25
tenant.tenant-name
Ruchira Contrail 3.0 test
vpn-binding
https://mtanjv9aaas03.aic.cip.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/
vpn-binding.vpn-id
9a7b327d9-287aa00-82c4b0-100001
vpn-binding.vpn-name
GN_EVPN_direct_net_0_ST1
route-table-reference
route-table-reference.route-table-reference-id
cee6d136-e378-4678-a024-2cd15f0ee0hi
"""
String queryIdAIIResponseVpnNotPresent =
"""
49c86598-f766-46f8-84f8-8d1c1b10f9b4
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
dmz_direct
contrail
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
0
pending-delete
networkName
false
true
false
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
107.239.52.1
107.239.52.0
24
4
pending-delete
true
subnetName
"""
String queryNameAIIResponse =
"""
49c86598-f766-46f8-84f8-8d1c1b10f9b4
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
dmz_direct
contrail
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
0
pending-delete
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
107.239.52.1
107.239.52.0
24
4
pending-delete
true
vpn-binding
https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/
vpn-binding.vpn-id
85f015d0-2e32-4c30-96d2-87a1a27f8017
vpn-binding
https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/
vpn-binding.vpn-id
c980a6ef-3b88-49f0-9751-dbad8608d0a6
tenant
https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/
tenant.tenant-id
7dd5365547234ee8937416c65507d266
"""
String queryNameAIIResponseVpnNotPresent =
"""
"""
String queryVpnBindingAAIResponse =
"""
9a7b327d9-287aa00-82c4b0-105757
GN_EVPN_Test
13979:105757
l3-network
https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/689ec39e-c5fc-4462-8db2-4f760763ad28/
l3-network.network-id
689ec39e-c5fc-4462-8db2-4f760763ad28
l3-network
https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/1a49396b-19b3-40a4-8792-aa2fbd0f0704/
l3-network.network-id
1a49396b-19b3-40a4-8792-aa2fbd0f0704
l3-network
https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/774f3329-3c83-4771-86c7-9e6207cd50fd/
l3-network.network-id
774f3329-3c83-4771-86c7-9e6207cd50fd
"""
String updateNetworkRequest =
"""
RDM2WAGPLCP
7dd5365547234ee8937416c65507d266
49c86598-f766-46f8-84f8-8d1c1b10f9b4
ST_2Bindings_6006/55288ef0-595c-47d3-819e-cf93aaac6326
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
sn5256d1-5a33-55df-13ab-12abad84e222
CONTRAIL
networkName
414,415
true
false
13979:105757
13979:105757
GN_EVPN_Test
refFQDN1
refFQDN2
107.239.52.0/24
true
107.239.52.1
4
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
subnetName
true
172.20.1.0/24
10.102.200.1
10.102.0.0/16
10.102.200.1
192.168.2.0/25
10.102.200.1
true
true
false
88f65519-9a38-4c4b-8445-9eb4a5a5af56
f70e927b-6087-4974-9ef8-c5e4d5847ca4
messageId_generated
"""
String updateNetworkRequest_noPhysicalName =
"""
RDM2WAGPLCP
7dd5365547234ee8937416c65507d266
49c86598-f766-46f8-84f8-8d1c1b10f9b4
ST_2Bindings_6006/55288ef0-595c-47d3-819e-cf93aaac6326
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
CONTRAIL
networkName
414,415
true
false
13979:105757
13979:105757
GN_EVPN_Test
107.239.52.0/24
true
107.239.52.1
4
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
subnetName
true
172.20.1.0/24
10.102.200.1
10.102.0.0/16
10.102.200.1
192.168.2.0/25
10.102.200.1
true
true
false
true
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
true
true
10.10.125.1
88f65519-9a38-4c4b-8445-9eb4a5a5af56
null
messageId_generated
"""
String updateNetworkResponseREST =
"""
MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641
c4f4e878-cde0-4b15-ae9a-bda857759cea
default-domain:MSOTest:GN_EVPN_direct_net_0_ST1
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
bd8e87c6-f4e2-41b8-b0bc-9596aa00cd73
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
bd8e87c6-f4e2-41b8-b0bc-9596aa00cd73
MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641
c4f4e878-cde0-4b15-ae9a-bda857759cea
CONTRAIL_EXTERNAL
true
7dd5365547234ee8937416c65507d266
RDM2WAGPLCP
1ef47428-cade-45bd-a103-0751e8b2deb0
messageId_generated
"""
String updateRollbackNetworkRequest =
"""
MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641
c4f4e878-cde0-4b15-ae9a-bda857759cea
CONTRAIL_EXTERNAL
true
7dd5365547234ee8937416c65507d266
RDM2WAGPLCP
1ef47428-cade-45bd-a103-0751e8b2deb0
"""
String updateNetworkResponse =
"""
MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641
c4f4e878-cde0-4b15-ae9a-bda857759cea
MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641
default-domain:MSOTest:GN_EVPN_direct_net_0_ST1
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
bd8e87c6-f4e2-41b8-b0bc-9596aa00cd73
RDM2WAGPLCP
1ef47428-cade-45bd-a103-0751e8b2deb0
true
MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641
CONTRAIL_EXTERNAL
false
c4f4e878-cde0-4b15-ae9a-bda857759cea
7dd5365547234ee8937416c65507d266
"""
String updateContrailAAIPayloadRequest =
"""
49c86598-f766-46f8-84f8-8d1c1b10f9b4
MNS-25180-L-01-dmz_direct_net_1
CONTRAIL_EXTERNAL
dmz_direct
contrail
c4f4e878-cde0-4b15-ae9a-bda857759cea
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
0
l3-version
Active
ST_2Bindings_6006/55288ef0-595c-47d3-819e-cf93aaac6326
default-domain:MSOTest:GN_EVPN_direct_net_0_ST1
networkName
false
true
false
57e9a1ff-d14f-4071-a828-b19ae98eb2fc
bd8e87c6-f4e2-41b8-b0bc-9596aa00cd73
107.239.52.1
107.239.52.0
24
4
Active
true
1505857300987
subnetName
true
400d286b-7e44-4514-b9b3-f70f7360ff32
172.20.1.0/24
10.102.200.1
ip-address
1505857300987
6f038013-8b15-4eb8-914b-507489fbc8ee
10.102.0.0/16
10.102.200.1
ip-address
1505857301151
8811c5f8-f1ed-4fa0-a505-e1be60396e28
192.168.2.0/25
10.102.200.1
1505857301954
414
4132176
415
4132176
inner
ctag-version
tenant
https://aai-ext1.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/897deadc2b954a6bac6d3c197fb3525e/
tenant.tenant-id
897deadc2b954a6bac6d3c197fb3525e
tenant.tenant-name
MSOTest1
vpn-binding
https://aai-ext1.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/a290b841-f672-44dd-b9cd-6f8c20d7d8c8/
vpn-binding.vpn-id
a290b841-f672-44dd-b9cd-6f8c20d7d8c8
vpn-binding.vpn-name
oam_protected_net_6_MTN5_msotest2
vpn-binding
https://aai-ext1.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/24a4b507-853a-4a38-99aa-05fcc54be24d/
vpn-binding.vpn-id
24a4b507-853a-4a38-99aa-05fcc54be24d
vpn-binding.vpn-name
oam_protected_net_6_MTN5_msotest1
vpn-binding
https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/
vpn-binding.vpn-id
85f015d0-2e32-4c30-96d2-87a1a27f8017
vpn-binding
https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/
vpn-binding.vpn-id
c980a6ef-3b88-49f0-9751-dbad8608d0a6
tenant
https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/
tenant.tenant-id
7dd5365547234ee8937416c65507d266
network-policy
https://aai-app-e2e.test.com:8443/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg
network-policy.network-policy-id
cee6d136-e378-4678-a024-2cd15f0ee0cg
route-table-reference
https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN1
route-table-reference.route-table-reference-id
cee6d136-e378-4678-a024-2cd15f0ee0hi
route-table-reference
https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN2
route-table-reference.route-table-reference-id
cee6d136-e378-4678-a024-2cd15f0ee0hi
"""
String updateContrailAAIResponse =
"""
"""
String updateNetworkErrorResponse =
"""
680bd458-5ec1-4a16-b77c-509022e53450INTERNAL
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
true
"""
String networkException500 =
"""soap:VersionMismatch"http://org.openecomp.mso/network", the namespace on the "updateNetworkContrail" element, is not a valid SOAP version."""
String aaiResponse =
"""
bdc5efe8-404a-409b-85f6-0dcc9eebae30
HSL_direct_net_2
CONTRAIL_BASIC
HSL_direct
contrail
8bbd3edf-b835-4610-96a2-a5cafa029042
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
active
HSL_direct_net_2/57594a56-1c92-4a38-9caa-641c1fa3d4b6
ea5f2a2c-604f-47ff-a9c5-253ee4f0ef0a
5a77fdc2-7789-4649-a1b9-6eaf1db1813a
172.16.34.1
172.16.34.0
28
4
active
true
tenant
https://aai-app-e2e.test.com:8443/aai/v3/cloud-infrastructure/tenants/tenant/e81d842d3e8b45c5a59f57cd76af3aaf/
tenant.tenant-id
e81d842d3e8b45c5a59f57cd76af3aaf
"""
String changeAssignSDNCRequest =
"""
88f65519-9a38-4c4b-8445-9eb4a5a5af56
f70e927b-6087-4974-9ef8-c5e4d5847ca4
changeassign
network-topology-operation
sdncCallback
88f65519-9a38-4c4b-8445-9eb4a5a5af56
NetworkActivateRequest
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
MSO-dev-service-type
f70e927b-6087-4974-9ef8-c5e4d5847ca4
MSO_1610_dev
49c86598-f766-46f8-84f8-8d1c1b10f9b4
CONTRAIL_EXTERNAL
MNS-25180-L-01-dmz_direct_net_1
7dd5365547234ee8937416c65507d266
RDM2WAGPLCP
"""
String assignResponse =
""" 006927ca-f5a3-47fd-880c-dfcbcd81a093 200 OK """
String sdncRollbackRequest =
"""
88f65519-9a38-4c4b-8445-9eb4a5a5af56
f70e927b-6087-4974-9ef8-c5e4d5847ca4
rollback
network-topology-operation
sdncCallback
88f65519-9a38-4c4b-8445-9eb4a5a5af56
NetworkActivateRequest
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
MSO-dev-service-type
f70e927b-6087-4974-9ef8-c5e4d5847ca4
MSO_1610_dev
8abc633a-810b-4ca5-8b3a-09511d13a2ce
CONTRAIL_EXTERNAL
MNS-25180-L-01-dmz_direct_net_1
7dd5365547234ee8937416c65507d266
RDM2WAGPLCP
"""
String sdncAdapterWorkflowResponse =
"""
745b1b50-e39e-4685-9cc8-c71f0bde8bf0
200
OK
<output xmlns="com:att:sdnctl:vnf"><svc-request-id>00703dc8-71ff-442d-a4a8-3adc5beef6a9</svc-request-id><response-code>200</response-code><ack-final-indicator>Y</ack-final-indicator><network-information><network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id></network-information><service-information><service-type>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-type><service-instance-id>MNS-25180-L-01-dmz_direct_net_1</service-instance-id><subscriber-name>notsurewecare</subscriber-name></service-information></output>
"""
String sdncAdapterWorkflowResponse_Error =
"""
"""
String expected_sdncAdapterWorkflowResponse_Error =
"""
"""
String sdncAdapterWorkflowFormattedResponse =
"""
"""
String rollbackSDNCRequest =
"""
88f65519-9a38-4c4b-8445-9eb4a5a5af56
f70e927b-6087-4974-9ef8-c5e4d5847ca4
rollback
network-topology-operation
sdncCallback
88f65519-9a38-4c4b-8445-9eb4a5a5af56
CreateNetworkInstance
a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb
MSO-dev-service-type
f70e927b-6087-4974-9ef8-c5e4d5847ca4
MSO_1610_dev
8abc633a-810b-4ca5-8b3a-09511d13a2ce
CONTRAIL_EXTERNAL
invariant-uuid
customization-uuid
uuid
version
CONTRAIL_EXTERNAL
8abc633a-810b-4ca5-8b3a-09511d13a2ce
CONTRAIL_EXTERNAL
MNS-25180-L-01-dmz_direct_net_1
7dd5365547234ee8937416c65507d266
RDM2WAGPLCP
"""
String rollbackNetworkRequest =
"""
MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641
c4f4e878-cde0-4b15-ae9a-bda857759cea
CONTRAIL_EXTERNAL
true
7dd5365547234ee8937416c65507d266
RDM2WAGPLCP
1ef47428-cade-45bd-a103-0751e8b2deb0
"""
// - - - - - - - -
@Before
public void init()
{
MockitoAnnotations.initMocks(this)
}
public void initializeVariables (DelegateExecution mockExecution) {
verify(mockExecution).setVariable(Prefix + "messageId", "")
verify(mockExecution).setVariable("BasicAuthHeaderValuePO", "")
verify(mockExecution).setVariable("BasicAuthHeaderValueSDNC", "")
verify(mockExecution).setVariable(Prefix + "networkRequest", "")
verify(mockExecution).setVariable(Prefix + "networkInputs", "")
verify(mockExecution).setVariable(Prefix + "networkOutputs", "")
verify(mockExecution).setVariable(Prefix + "requestId", "")
verify(mockExecution).setVariable(Prefix + "source", "")
verify(mockExecution).setVariable(Prefix + "networkId", "")
verify(mockExecution).setVariable(Prefix + "isPONR", false)
// AAI query Cloud Region
verify(mockExecution).setVariable(Prefix + "queryCloudRegionRequest","")
verify(mockExecution).setVariable(Prefix + "queryCloudRegionReturnCode","")
verify(mockExecution).setVariable(Prefix + "queryCloudRegionResponse","")
verify(mockExecution).setVariable(Prefix + "cloudRegionPo","")
verify(mockExecution).setVariable(Prefix + "cloudRegionSdnc","")
verify(mockExecution).setVariable(Prefix + "isCloudRegionGood", false)
// AAI query Id
verify(mockExecution).setVariable(Prefix + "queryIdAAIRequest","")
verify(mockExecution).setVariable(Prefix + "queryIdAAIResponse", "")
verify(mockExecution).setVariable(Prefix + "aaiIdReturnCode", "")
// AAI query vpn binding
verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIRequest","")
verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIResponse", "")
verify(mockExecution).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "")
verify(mockExecution).setVariable(Prefix + "vpnBindings", null)
verify(mockExecution).setVariable(Prefix + "vpnCount", 0)
verify(mockExecution).setVariable(Prefix + "routeCollection", "")
// AAI query network policy
verify(mockExecution).setVariable(Prefix + "queryNetworkPolicyAAIRequest","")
verify(mockExecution).setVariable(Prefix + "queryNetworkPolicyAAIResponse", "")
verify(mockExecution).setVariable(Prefix + "aaiQqueryNetworkPolicyReturnCode", "")
verify(mockExecution).setVariable(Prefix + "networkPolicyUriList", null)
verify(mockExecution).setVariable(Prefix + "networkPolicyCount", 0)
verify(mockExecution).setVariable(Prefix + "networkCollection", "")
// AAI query route table reference
verify(mockExecution).setVariable(Prefix + "queryNetworkTableRefAAIRequest","")
verify(mockExecution).setVariable(Prefix + "queryNetworkTableRefAAIResponse", "")
verify(mockExecution).setVariable(Prefix + "aaiQqueryNetworkTableRefReturnCode", "")
verify(mockExecution).setVariable(Prefix + "networkTableRefUriList", null)
verify(mockExecution).setVariable(Prefix + "networkTableRefCount", 0)
verify(mockExecution).setVariable(Prefix + "tableRefCollection", "")
// AAI requery Id
verify(mockExecution).setVariable(Prefix + "requeryIdAAIRequest","")
verify(mockExecution).setVariable(Prefix + "requeryIdAAIResponse", "")
verify(mockExecution).setVariable(Prefix + "aaiRequeryIdReturnCode", "")
// AAI update contrail
verify(mockExecution).setVariable(Prefix + "updateContrailAAIUrlRequest","")
verify(mockExecution).setVariable(Prefix + "updateContrailAAIPayloadRequest","")
verify(mockExecution).setVariable(Prefix + "updateContrailAAIResponse", "")
verify(mockExecution).setVariable(Prefix + "aaiUpdateContrailReturnCode", "")
verify(mockExecution).setVariable(Prefix + "updateNetworkRequest", "")
verify(mockExecution).setVariable(Prefix + "updateNetworkResponse", "")
verify(mockExecution).setVariable(Prefix + "rollbackNetworkRequest", "")
//verify(mockExecution).setVariable(Prefix + "rollbackNetworkResponse", "")
verify(mockExecution).setVariable(Prefix + "networkReturnCode", "")
//verify(mockExecution).setVariable(Prefix + "rollbackNetworkReturnCode", "")
verify(mockExecution).setVariable(Prefix + "isNetworkRollbackNeeded", false)
verify(mockExecution).setVariable(Prefix + "changeAssignSDNCRequest", "")
verify(mockExecution).setVariable(Prefix + "changeAssignSDNCResponse", "")
verify(mockExecution).setVariable(Prefix + "rollbackSDNCRequest", "")
//verify(mockExecution).setVariable(Prefix + "rollbackSDNCResponse", "")
verify(mockExecution).setVariable(Prefix + "sdncReturnCode", "")
//verify(mockExecution).setVariable(Prefix + "rollbackSDNCReturnCode", "")
verify(mockExecution).setVariable(Prefix + "isSdncRollbackNeeded", false)
verify(mockExecution).setVariable(Prefix + "sdncResponseSuccess", false)
verify(mockExecution).setVariable(Prefix + "isVnfBindingPresent", false)
verify(mockExecution).setVariable(Prefix + "Success", false)
verify(mockExecution).setVariable(Prefix + "serviceInstanceId", "")
verify(mockExecution).setVariable(Prefix + "isException", false)
}
@Test
//@Ignore
public void preProcessRequest_NetworkRequest() {
println "************ preProcessRequest_Payload ************* "
ExecutionEntity mockExecution = setupMock()
// Initialize prerequisite variables
when(mockExecution.getVariable("mso-request-id")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("requestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("isBaseVfModule")).thenReturn(true)
when(mockExecution.getVariable("recipeTimeout")).thenReturn(0)
when(mockExecution.getVariable("requestAction")).thenReturn("UPDATE")
when(mockExecution.getVariable("serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")
when(mockExecution.getVariable("vnfId")).thenReturn("")
when(mockExecution.getVariable("volumeGroupId")).thenReturn("")
when(mockExecution.getVariable("networkId")).thenReturn("49c86598-f766-46f8-84f8-8d1c1b10f9b4")
when(mockExecution.getVariable("serviceType")).thenReturn("MOG")
when(mockExecution.getVariable("networkType")).thenReturn("modelName")
when(mockExecution.getVariable("bpmnRequest")).thenReturn(jsonIncomingRequest)
when(mockExecution.getVariable("sdncVersion")).thenReturn("1610")
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("URN_mso_adapters_po_auth")).thenReturn("3141634BF7E070AA289CF2892C986C0B")
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_rollback")).thenReturn("true")
when(mockExecution.getVariable("disableRollback")).thenReturn("true")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.preProcessRequest(mockExecution)
verify(mockExecution).getVariable("isDebugLogEnabled")
verify(mockExecution).setVariable("prefix", Prefix + "")
//verify variable initialization
initializeVariables(mockExecution)
// Authentications
verify(mockExecution).setVariable("action", "UPDATE")
verify(mockExecution).setVariable(Prefix + "networkRequest", expectedNetworkRequest)
verify(mockExecution).setVariable(Prefix + "rollbackEnabled", false)
verify(mockExecution).setVariable(Prefix + "networkInputs", expectedNetworkInputs)
verify(mockExecution).setVariable("BasicAuthHeaderValuePO", "Basic cGFzc3dvcmQ=")
verify(mockExecution).setVariable("BasicAuthHeaderValueSDNC", "Basic cGFzc3dvcmQ=")
verify(mockExecution).setVariable(Prefix + "networkOutputs", "")
}
@Test
//@Ignore
public void preProcessRequest_vPERNetworkRequest() {
def networkModelInfo = """{"modelUuid": "sn5256d1-5a33-55df-13ab-12abad84e111",
"modelName": "CONTRAIL_EXTERNAL",
"modelType": "CONTRAIL_EXTERNAL",
"modelVersion": "1",
"modelCustomizationUuid": "sn5256d1-5a33-55df-13ab-12abad84e222",
"modelInvariantUuid": "sn5256d1-5a33-55df-13ab-12abad84e764"
}""".trim()
println "************ preProcessRequest_Payload ************* "
ExecutionEntity mockExecution = setupMock()
// Initialize prerequisite variables
when(mockExecution.getVariable("msoRequestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("disableRollback")).thenReturn("true")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")
when(mockExecution.getVariable("networkId")).thenReturn("49c86598-f766-46f8-84f8-8d1c1b10f9b4") // optional
when(mockExecution.getVariable("networkName")).thenReturn("MNS-25180-L-01-dmz_direct_net_1") // optional
when(mockExecution.getVariable("productFamilyId")).thenReturn("a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb")
when(mockExecution.getVariable("networkModelInfo")).thenReturn("CONTRAIL_EXTERNAL")
when(mockExecution.getVariable("lcpCloudRegionId")).thenReturn("RDM2WAGPLCP")
when(mockExecution.getVariable("tenantId")).thenReturn("7dd5365547234ee8937416c65507d266")
when(mockExecution.getVariable("failIfExists")).thenReturn("false")
when(mockExecution.getVariable("networkModelInfo")).thenReturn(networkModelInfo)
when(mockExecution.getVariable("sdncVersion")).thenReturn("1702")
when(mockExecution.getVariable("action")).thenReturn("UPDATE")
when(mockExecution.getVariable("subscriptionServiceType")).thenReturn("MSO-dev-service-type")
when(mockExecution.getVariable("globalSubscriberId")).thenReturn("globalId_45678905678")
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("URN_mso_adapters_po_auth")).thenReturn("3141634BF7E070AA289CF2892C986C0B")
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_mso_rollback")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_adapters_sdnc_endpoint")).thenReturn("http://localhost:8090/SDNCAdapter")
when(mockExecution.getVariable("URN_mso_adapters_network_rest_endpoint")).thenReturn("http://localhost:8090/networks/NetworkAdapter")
when(mockExecution.getVariable("URN_mso_adapters_sdnc_resource_endpoint")).thenReturn("http://localhost:8090/SDNCAdapterRpc")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.preProcessRequest(mockExecution)
verify(mockExecution).getVariable("isDebugLogEnabled")
verify(mockExecution).setVariable("prefix", Prefix + "")
//verify variable initialization
initializeVariables(mockExecution)
// Authentications
verify(mockExecution).setVariable("action", "UPDATE")
verify(mockExecution).setVariable(Prefix + "networkRequest", expectedVperNetworkRequest)
verify(mockExecution).setVariable(Prefix + "rollbackEnabled", false)
verify(mockExecution).setVariable(Prefix + "networkInputs", expectedVperNetworkInputs)
verify(mockExecution).setVariable("BasicAuthHeaderValuePO", "Basic cGFzc3dvcmQ=")
verify(mockExecution).setVariable("BasicAuthHeaderValueSDNC", "Basic cGFzc3dvcmQ=")
verify(mockExecution).setVariable(Prefix + "networkOutputs", "")
}
@Test
//@Ignore
public void preProcessRequest_MissingNetworkId() {
println "************ preProcessRequest_MissingName() ************* "
WorkflowException missingNameWorkflowException = new WorkflowException("DoUpdateNetworkInstance", 2500, "Variable 'network-id' value/element is missing.")
ExecutionEntity mockExecution = setupMock()
// Initialize prerequisite variables
when(mockExecution.getVariable("mso-request-id")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("requestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("isBaseVfModule")).thenReturn(true)
when(mockExecution.getVariable("recipeTimeout")).thenReturn(0)
when(mockExecution.getVariable("requestAction")).thenReturn("UPDATE")
when(mockExecution.getVariable("serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")
when(mockExecution.getVariable("vnfId")).thenReturn("")
when(mockExecution.getVariable("volumeGroupId")).thenReturn("")
//when(mockExecution.getVariable("networkId")).thenReturn("49c86598-f766-46f8-84f8-8d1c1b10f9b4")
when(mockExecution.getVariable("serviceType")).thenReturn("MOG")
when(mockExecution.getVariable("networkType")).thenReturn("modelName")
when(mockExecution.getVariable("bpmnRequest")).thenReturn(jsonIncomingRequest)
when(mockExecution.getVariable("sdncVersion")).thenReturn("1610")
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("URN_mso_adapters_po_auth")).thenReturn("3141634BF7E070AA289CF2892C986C0B")
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_rollback")).thenReturn("true")
when(mockExecution.getVariable("disableRollback")).thenReturn("true")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
try {
DoUpdateNetworkInstance.preProcessRequest(mockExecution)
} catch (Exception ex) {
println " Test End - Handle catch-throw BpmnError()! "
}
verify(mockExecution, atLeast(1)).getVariable("isDebugLogEnabled")
verify(mockExecution, atLeast(1)).setVariable("prefix", Prefix + "")
//verify variable initialization
initializeVariables(mockExecution)
verify(mockExecution).setVariable("action", "UPDATE")
verify(mockExecution).setVariable(Prefix + "networkRequest", expectedNetworkRequestMissingNetworkId)
verify(mockExecution).setVariable(Prefix + "rollbackEnabled", false)
verify(mockExecution).setVariable(Prefix + "networkInputs", expectedNetworkInputsMissingNetworkId)
verify(mockExecution).setVariable(Prefix + "messageId", "88f65519-9a38-4c4b-8445-9eb4a5a5af56")
verify(mockExecution).setVariable(Prefix + "source", "VID")
verify(mockExecution).setVariable(Prefix + "networkOutputs", "")
verify(mockExecution).setVariable(eq("WorkflowException"), refEq(missingNameWorkflowException))
}
@Test
//@Ignore
public void preProcessRequest_MissingCloudRegion() {
println "************ preProcessRequest_MissingCloudRegion() ************* "
WorkflowException missingCloudRegionWorkflowException = new WorkflowException("DoUpdateNetworkInstance", 2500, "requestDetails has missing 'aic-cloud-region' value/element.")
ExecutionEntity mockExecution = setupMock()
// Initialize prerequisite variables
when(mockExecution.getVariable("mso-request-id")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("requestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("isBaseVfModule")).thenReturn(true)
when(mockExecution.getVariable("recipeTimeout")).thenReturn(0)
when(mockExecution.getVariable("requestAction")).thenReturn("UPDATE")
when(mockExecution.getVariable("serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")
when(mockExecution.getVariable("vnfId")).thenReturn("")
when(mockExecution.getVariable("volumeGroupId")).thenReturn("")
when(mockExecution.getVariable("networkId")).thenReturn("networkId")
when(mockExecution.getVariable("serviceType")).thenReturn("MOG")
when(mockExecution.getVariable("networkType")).thenReturn("modelName")
when(mockExecution.getVariable("bpmnRequest")).thenReturn(jsonIncomingRequest_MissingCloudRegion)
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("URN_mso_adapters_po_auth")).thenReturn("3141634BF7E070AA289CF2892C986C0B")
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_rollback")).thenReturn("true")
when(mockExecution.getVariable("disableRollback")).thenReturn("true")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
try {
DoUpdateNetworkInstance.preProcessRequest(mockExecution)
} catch (Exception ex) {
println " Test End - Handle catch-throw BpmnError()! "
}
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution, atLeast(1)).getVariable("isDebugLogEnabled")
verify(mockExecution, atLeast(1)).setVariable("prefix", Prefix + "")
//verify variable initialization
initializeVariables(mockExecution)
verify(mockExecution).setVariable("action", "UPDATE")
verify(mockExecution).setVariable(Prefix + "networkRequest", expectedNetworkRequestMissingCloudRegion)
verify(mockExecution).setVariable(Prefix + "rollbackEnabled", false)
verify(mockExecution).setVariable(Prefix + "networkInputs", expectedNetworkInputMissingCloudRegion)
verify(mockExecution).setVariable(Prefix + "messageId", "88f65519-9a38-4c4b-8445-9eb4a5a5af56")
verify(mockExecution).setVariable(Prefix + "source", "VID")
verify(mockExecution).setVariable(eq("WorkflowException"), refEq(missingCloudRegionWorkflowException))
}
@Test
//@Ignore
public void prepareUpdateNetworkRequest() {
println "************ prepareNetworkRequest ************* "
ExecutionEntity mockExecution = setupMock()
// Initialize prerequisite variables
when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedVperNetworkRequest)
when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)
when(mockExecution.getVariable(Prefix + "cloudRegionPo")).thenReturn("RDM2WAGPLCP")
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("messageId_generated")
when(mockExecution.getVariable(Prefix + "source")).thenReturn("VID")
//when(mockExecution.getVariable(Prefix + "queryVpnBindingAAIResponse")).thenReturn(queryVpnBindingAAIResponse)
when(mockExecution.getVariable(Prefix + "routeCollection")).thenReturn("13979:10575713979:105757")
when(mockExecution.getVariable(Prefix + "networkCollection")).thenReturn("GN_EVPN_Test")
when(mockExecution.getVariable(Prefix + "tableRefCollection")).thenReturn("refFQDN1refFQDN2")
when(mockExecution.getVariable(Prefix + "requestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
//when(mockExecution.getVariable("URN_?????")).thenReturn("") // notificationUrl, //TODO - is this coming from URN? What variable/value to use?
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable(Prefix + "rollbackEnabled")).thenReturn("true")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.prepareUpdateNetworkRequest(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
// verify set prefix = Prefix + ""
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "updateNetworkRequest", updateNetworkRequest)
}
@Test
//@Ignore
public void prepareUpdateNetworkRequest_NoPhysicalname() {
println "************ prepareNetworkRequest ************* "
ExecutionEntity mockExecution = mock(ExecutionEntity.class)
// Initialize prerequisite variables
when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(NetworkRequest_noPhysicalName)
when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)
when(mockExecution.getVariable(Prefix + "cloudRegionPo")).thenReturn("RDM2WAGPLCP")
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("messageId_generated")
when(mockExecution.getVariable(Prefix + "source")).thenReturn("VID")
//when(mockExecution.getVariable(Prefix + "queryVpnBindingAAIResponse")).thenReturn(queryVpnBindingAAIResponse)
when(mockExecution.getVariable(Prefix + "routeCollection")).thenReturn("13979:10575713979:105757")
when(mockExecution.getVariable(Prefix + "networkCollection")).thenReturn("GN_EVPN_Test")
when(mockExecution.getVariable(Prefix + "tableRefCollection")).thenReturn("")
when(mockExecution.getVariable(Prefix + "requestId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
//when(mockExecution.getVariable("URN_?????")).thenReturn("") // notificationUrl, //TODO - is this coming from URN? What variable/value to use?
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable(Prefix + "rollbackEnabled")).thenReturn("true")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.prepareUpdateNetworkRequest(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
// verify set prefix = Prefix + ""
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "updateNetworkRequest", updateNetworkRequest_noPhysicalName)
}
@Test
//@Ignore
public void prepareSDNCRequest() {
println "************ prepareSDNCRequest ************* "
ExecutionEntity mockExecution = mock(ExecutionEntity.class)
// Initialize prerequisite variables
when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)
when(mockExecution.getVariable(Prefix + "cloudRegionSdnc")).thenReturn("RDM2WAGPLCP")
when(mockExecution.getVariable(Prefix + "serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")
when(mockExecution.getVariable("mso-request-id")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("testMessageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("URN_mso_workflow_sdncadapter_callback")).thenReturn("http://localhost:8090/SDNCAdapterCallback")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
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/")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.prepareSDNCRequest(mockExecution)
// verify set prefix = Prefix + ""
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "changeAssignSDNCRequest", changeAssignSDNCRequest)
}
@Test
//@Ignore
public void prepareSDNCRollbackRequest() {
println "************ prepareSDNCRollbackRequest ************* "
ExecutionEntity mockExecution = mock(ExecutionEntity.class)
// Initialize prerequisite variables
when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)
when(mockExecution.getVariable(Prefix + "cloudRegionSdnc")).thenReturn("RDM2WAGPLCP")
when(mockExecution.getVariable(Prefix + "serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")
when(mockExecution.getVariable(Prefix + "changeAssignSDNCResponse")).thenReturn(assignResponse)
when(mockExecution.getVariable("mso-request-id")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("testMessageId")).thenReturn("88f65519-9a38-4c4b-8445-9eb4a5a5af56")
when(mockExecution.getVariable("URN_mso_workflow_sdncadapter_callback")).thenReturn("http://localhost:8090/SDNCAdapterCallback")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
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/")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.prepareSDNCRollbackRequest(mockExecution)
// verify set prefix = Prefix + ""
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "rollbackSDNCRequest", sdncRollbackRequest)
}
@Test
//@Ignore
public void callRESTQueryAAINetworkId_200() {
println "************ callRESTQueryAAINetworkId ************* "
WireMock.reset();
MockGetNetworkByIdWithDepth("49c86598-f766-46f8-84f8-8d1c1b10f9b4", "UpdateNetworkV2/updateNetwork_queryNetworkId_AAIResponse_Success.xml", "all");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_DoUpdateNetworkInstance_aai_l3_network_uri")).thenReturn("/aai/v9/network/l3-networks/l3-network")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAINetworkId(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "queryIdAAIRequest", "http://localhost:8090/aai/v9/network/l3-networks/l3-network/49c86598-f766-46f8-84f8-8d1c1b10f9b4"+"?depth=all")
verify(mockExecution).setVariable(Prefix + "aaiIdReturnCode", "200")
}
@Test
//@Ignore
public void callRESTQueryAAICloudRegion30_200() {
println "************ callRESTQueryAAICloudRegion30_200 ************* "
WireMock.reset();
MockGetNetworkCloudRegion("CreateNetworkV2/cloudRegion30_AAIResponse_Success.xml", "RDM2WAGPLCP");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable("prefix")).thenReturn(Prefix + "")
when(mockExecution.getVariable(Prefix + "networkInputs")).thenReturn(expectedNetworkRequest)
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")
when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_cloud_region_uri")).thenReturn("/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAICloudRegion(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution, atLeast(1)).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "queryCloudRegionRequest", "http://localhost:8090/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/RDM2WAGPLCP")
verify(mockExecution, atLeast(2)).setVariable(Prefix + "queryCloudRegionReturnCode", "200")
verify(mockExecution).setVariable(Prefix + "isCloudRegionGood", true)
}
@Test
//@Ignore
public void callRESTQueryAAICloudRegion25_200() {
println "************ callRESTQueryAAICloudRegion25_200 ************* "
WireMock.reset();
MockGetNetworkCloudRegion("CreateNetworkV2/cloudRegion25_AAIResponse_Success.xml", "RDM2WAGPLCP");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable("prefix")).thenReturn(Prefix + "")
when(mockExecution.getVariable(Prefix + "networkInputs")).thenReturn(expectedNetworkRequest)
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")
when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_cloud_region_uri")).thenReturn("/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAICloudRegion(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution, atLeast(1)).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "queryCloudRegionRequest", "http://localhost:8090/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/RDM2WAGPLCP")
verify(mockExecution, atLeast(2)).setVariable(Prefix + "queryCloudRegionReturnCode", "200")
verify(mockExecution).setVariable(Prefix + "isCloudRegionGood", true)
}
@Test
//@Ignore
public void callRESTQueryAAICloudRegion_NotFound() {
println "************ callRESTQueryAAICloudRegionFake ************* "
WireMock.reset();
MockGetNetworkCloudRegion_404("MDTWNJ21");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable("prefix")).thenReturn(Prefix + "")
when(mockExecution.getVariable(Prefix + "networkInputs")).thenReturn(vnfRequestFakeRegion)
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")
when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_cloud_region_uri")).thenReturn("/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAICloudRegion(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution, atLeast(1)).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "queryCloudRegionRequest", "http://localhost:8090/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/MDTWNJ21")
verify(mockExecution, atLeast(1)).setVariable(Prefix + "queryCloudRegionReturnCode", "404")
verify(mockExecution).setVariable(Prefix + "cloudRegionPo", "MDTWNJ21")
verify(mockExecution).setVariable(Prefix + "cloudRegionSdnc", "AAIAIC25")
verify(mockExecution).setVariable(Prefix + "isCloudRegionGood", true)
}
@Test
//@Ignore
public void callRESTQueryAAINetworkVpnBinding_200() {
println "************ callRESTQueryAAINetworkVpnBinding_200 ************* "
WireMock.reset();
MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "85f015d0-2e32-4c30-96d2-87a1a27f8017");
MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "c980a6ef-3b88-49f0-9751-dbad8608d0a6");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse) // v6
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")
when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_vpn_binding_uri")).thenReturn("/aai/v8/network/vpn-bindings/vpn-binding")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAINetworkVpnBinding(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "vpnCount", 2)
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/'])
// the last vpnBinding value is saved.
verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIRequest", "http://localhost:8090/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017?depth=all")
verify(mockExecution, atLeast(2)).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "200")
}
@Test
//@Ignore
public void callRESTQueryAAINetworkVpnBindingList_200() {
println "************ callRESTQueryAAINetworkVpnBinding_200 ************* "
WireMock.reset();
MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBindingList_AAIResponse_Success.xml", "85f015d0-2e32-4c30-96d2-87a1a27f8017");
MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBindingList_AAIResponse_Success.xml", "c980a6ef-3b88-49f0-9751-dbad8608d0a6");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse) // v6
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")
when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_vpn_binding_uri")).thenReturn("/aai/v8/network/vpn-bindings/vpn-binding")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAINetworkVpnBinding(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "vpnCount", 2)
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/'])
// the last vpnBinding value is saved.
verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIRequest", "http://localhost:8090/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017?depth=all")
verify(mockExecution, atLeast(2)).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "200")
}
@Test
//@Ignore
public void callRESTQueryAAINetworkVpnBinding_TestScenario01_200() {
println "************ callRESTQueryAAINetworkVpnBinding_200 ************* "
WireMock.reset();
MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "85f015d0-2e32-4c30-96d2-87a1a27f8017");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponseTestScenario01)
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")
when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_vpn_binding_uri")).thenReturn("/aai/v8/network/vpn-bindings/vpn-binding")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAINetworkVpnBinding(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "vpnCount", 1)
verify(mockExecution).setVariable(Prefix + "vpnBindings", ['/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/'])
// the last vpnBinding value is saved.
verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIRequest", "http://localhost:8090/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017?depth=all")
verify(mockExecution).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "200")
}
@Test
//@Ignore
public void callRESTQueryAAINetworkVpnBinding_200_URN_Uri() {
println "************ callRESTQueryAAINetworkVpnBinding_200 ************* "
WireMock.reset();
MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "85f015d0-2e32-4c30-96d2-87a1a27f8017");
MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "c980a6ef-3b88-49f0-9751-dbad8608d0a6");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")
when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_vpn_binding_uri")).thenReturn("/aai/v8/network/vpn-bindings/vpn-binding")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAINetworkVpnBinding(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "vpnCount", 2)
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/'])
// the last vpnBinding value is saved.
verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIRequest", "http://localhost:8090/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017?depth=all")
verify(mockExecution, atLeast(2)).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "200")
}
@Test
//@Ignore
public void callRESTQueryAAINetworkVpnBinding_NotPresent() {
println "************ callRESTQueryAAINetworkVpnBinding_NotPresent ************* "
WireMock.reset();
MockGetNetworkVpnBinding("UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml", "85f015d0-2e32-4c30-96d2-87a1a27f8017");
ExecutionEntity mockExecution = setupMock()
// Initialize prerequisite variables
when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponseVpnNotPresent)
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")
when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_l3_network_uri")).thenReturn("/aai/v8/network/l3-networks/l3-network")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAINetworkVpnBinding(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "aaiQqueryVpnBindingReturnCode", "200")
verify(mockExecution).setVariable(Prefix + "vpnCount", 0)
verify(mockExecution).setVariable(Prefix + "queryVpnBindingAAIResponse", aaiVpnResponseStub)
}
@Test
//@Ignore
public void callRESTQueryAAINetworkTableRef_200() {
println "************ callRESTQueryAAINetworkTableRef_200 ************* "
WireMock.reset();
MockGetNetworkTableReference("UpdateNetworkV2/updateNetwork_queryNetworkTableRef1_AAIResponse_Success.xml", "refFQDN1");
MockGetNetworkTableReference("UpdateNetworkV2/updateNetwork_queryNetworkTableRef2_AAIResponse_Success.xml", "refFQDN2");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_default_aai_network_table_reference_uri")).thenReturn("")
when(mockExecution.getVariable("URN_mso_workflow_DoUpdateNetworkInstance_aai_route_table_reference_uri")).thenReturn("/aai/v8/network/route-table-references/route-table-reference")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAINetworkTableRef(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "networkTableRefCount", 2)
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'])
// the last vpnBinding value is saved.
verify(mockExecution).setVariable(Prefix + "queryNetworkTableRefAAIRequest", "http://localhost:8090/aai/v8/network/route-table-references/route-table-reference/refFQDN1?depth=all")
verify(mockExecution, atLeast(2)).setVariable(Prefix + "aaiQqueryNetworkTableRefReturnCode", "200")
}
@Test
//@Ignore
public void callRESTQueryAAINetworkPolicy_200() {
println "************ callRESTQueryAAINetworkPolicy_200 ************* "
WireMock.reset();
MockGetNetworkPolicy("UpdateNetworkV2/updateNetwork_queryNetworkPolicy_AAIResponse_Success.xml", "cee6d136-e378-4678-a024-2cd15f0ee0cg");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_version")).thenReturn("8")
when(mockExecution.getVariable("URN_mso_workflow_default_aai_v8_network_policy_uri")).thenReturn("/aai/v8/network/network-policies/network-policy")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTQueryAAINetworkPolicy(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "networkPolicyCount", 1)
verify(mockExecution).setVariable(Prefix + "networkPolicyUriList", ['/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg'])
// the last vpnBinding value is saved.
verify(mockExecution).setVariable(Prefix + "queryNetworkPolicyAAIRequest", "http://localhost:8090/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg?depth=all")
verify(mockExecution).setVariable(Prefix + "aaiQqueryNetworkPolicyReturnCode", "200")
}
@Test
//@Ignore
public void callRESTReQueryAAINetworkId_200() {
println "************ callRESTReQueryAAINetworkId ************* "
WireMock.reset();
MockGetNetworkByIdWithDepth("49c86598-f766-46f8-84f8-8d1c1b10f9b4", "UpdateNetworkV2/updateNetwork_queryNetworkId_AAIResponse_Success.xml", "all");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)
when(mockExecution.getVariable(Prefix + "changeAssignSDNCResponse")).thenReturn(sdncAdapterWorkflowFormattedResponse)
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_DoUpdateNetworkInstance_aai_l3_network_uri")).thenReturn("/aai/v9/network/l3-networks/l3-network")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTReQueryAAINetworkId(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "requeryIdAAIRequest", "http://localhost:8090/aai/v9/network/l3-networks/l3-network/49c86598-f766-46f8-84f8-8d1c1b10f9b4"+"?depth=all")
verify(mockExecution).setVariable(Prefix + "aaiRequeryIdReturnCode", "200")
}
@Test
//@Ignore
public void callRESTUpdateContrailAAINetworkREST_200() {
println "************ callRESTUpdateContrailAAINetwork ************* "
WireMock.reset();
MockPutNetworkIdWithDepth("UpdateNetworkV2/updateNetwork_updateContrail_AAIResponse_Success.xml", "49c86598-f766-46f8-84f8-8d1c1b10f9b4", "all");
ExecutionEntity mockExecution = setupMock()
when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)
when(mockExecution.getVariable(Prefix + "changeAssignSDNCResponse")).thenReturn(sdncAdapterWorkflowFormattedResponse)
when(mockExecution.getVariable(Prefix + "requeryIdAAIResponse")).thenReturn(queryIdAIIResponse)
when(mockExecution.getVariable(Prefix + "updateNetworkResponse")).thenReturn(updateNetworkResponseREST)
when(mockExecution.getVariable(Prefix + "messageId")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")
when(mockExecution.getVariable("URN_aai_endpoint")).thenReturn("http://localhost:8090")
when(mockExecution.getVariable("URN_mso_workflow_DoUpdateNetworkInstance_aai_l3_network_uri")).thenReturn("/aai/v9/network/l3-networks/l3-network")
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable("URN_mso_workflow_global_default_aai_namespace")).thenReturn('http://org.openecomp.aai.inventory/')
when(mockExecution.getVariable("URN_mso_msoKey")).thenReturn("07a7159d3bf51a0e53be7a8f89699be7")
when(mockExecution.getVariable("URN_aai_auth")).thenReturn("757A94191D685FD2092AC1490730A4FC")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.callRESTUpdateContrailAAINetwork(mockExecution)
// check the sequence of variable invocation
//MockitoDebuggerImpl preDebugger = new MockitoDebuggerImpl()
//preDebugger.printInvocations(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "updateContrailAAIUrlRequest", "http://localhost:8090/aai/v9/network/l3-networks/l3-network/49c86598-f766-46f8-84f8-8d1c1b10f9b4"+"?depth=all")
verify(mockExecution).setVariable(Prefix + "updateContrailAAIPayloadRequest", updateContrailAAIPayloadRequest)
verify(mockExecution).setVariable(Prefix + "aaiUpdateContrailReturnCode", "200")
//verify(mockExecution).setVariable(Prefix + "updateContrailAAIResponse", updateContrailAAIResponse)
verify(mockExecution).setVariable(Prefix + "isPONR", true)
}
@Test
//@Ignore
public void validateUpdateNetworkResponseREST() {
println "************ validateNetworkResponse ************* "
ExecutionEntity mockExecution = mock(ExecutionEntity.class)
// Initialize prerequisite variables
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable(Prefix + "updateNetworkResponse")).thenReturn(updateNetworkResponseREST)
when(mockExecution.getVariable(Prefix + "networkReturnCode")).thenReturn('200')
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.validateUpdateNetworkResponse(mockExecution)
//MockitoDebuggerImpl debugger = new MockitoDebuggerImpl()
//debugger.printInvocations(mockExecution)
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution).setVariable(Prefix + "updateNetworkResponse", updateNetworkResponseREST)
verify(mockExecution).setVariable(Prefix + "isNetworkRollbackNeeded", true)
verify(mockExecution).setVariable(Prefix + "rollbackNetworkRequest", updateRollbackNetworkRequest)
}
@Test
//@Ignore
public void validateUpdateNetworkResponseREST_Error() {
println "************ validateNetworkResponse ************* "
WorkflowException workflowException = new WorkflowException("DoUpdateNetworkInstance", 2500, "Received error from Network Adapter: JBWEB000065: HTTP Status 500.")
ExecutionEntity mockExecution = setupMock()
// Initialize prerequisite variables
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable(Prefix + "updateNetworkResponse")).thenReturn(networkException500)
when(mockExecution.getVariable(Prefix + "networkReturnCode")).thenReturn('500')
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
try {
DoUpdateNetworkInstance.validateUpdateNetworkResponse(mockExecution)
} catch (Exception ex) {
println " Test End - Handle catch-throw BpmnError()! "
}
verify(mockExecution).setVariable("prefix", Prefix + "")
verify(mockExecution, atLeast(1)).setVariable("WorkflowException", refEq(workflowException, any(WorkflowException.class)))
}
@Test
//@Ignore
public void validateSDNCResponse() {
println "************ validateSDNCResponse ************* "
ExecutionEntity mockExecution = setupMock()
// Initialize prerequisite variables
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable(Prefix + "changeAssignSDNCResponse")).thenReturn(sdncAdapterWorkflowResponse)
when(mockExecution.getVariable("prefix")).thenReturn(Prefix + "")
when(mockExecution.getVariable("SDNCA_SuccessIndicator")).thenReturn(true)
when(mockExecution.getVariable(Prefix + "sdncReturnCode")).thenReturn("200")
when(mockExecution.getVariable(Prefix + "isResponseGood")).thenReturn(true)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
try {
DoUpdateNetworkInstance.validateSDNCResponse(mockExecution)
verify(mockExecution).setVariable(Prefix + "isSdncRollbackNeeded", true)
verify(mockExecution).setVariable(Prefix + "rollbackSDNCRequest", "")
} catch (Exception ex) {
println " Graceful Exit - " + ex.getMessage()
}
//MockitoDebuggerImpl debugger = new MockitoDebuggerImpl()
//debugger.printInvocations(mockExecution)
//verify(mockExecution).setVariable(Prefix + "isSdncRollbackNeeded", true)
}
@Test
//@Ignore
public void validateSDNCResponse_Error() {
println "************ validateSDNCResponse ************* "
//ExecutionEntity mockExecution = mock(ExecutionEntity.class)
ExecutionEntity mockExecution = setupMock()
// Initialize prerequisite variables
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable(Prefix + "changeAssignSDNCResponse")).thenReturn(sdncAdapterWorkflowResponse_Error)
when(mockExecution.getVariable("prefix")).thenReturn(Prefix + "")
when(mockExecution.getVariable("SDNCA_SuccessIndicator")).thenReturn(false)
when(mockExecution.getVariable(Prefix + "sdncReturnCode")).thenReturn("200")
when(mockExecution.getVariable(Prefix + "isResponseGood")).thenReturn(true)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
try {
DoUpdateNetworkInstance.validateSDNCResponse(mockExecution)
} catch (Exception ex) {
println " Graceful Exit! - " + ex.getMessage()
}
//MockitoDebuggerImpl debugger = new MockitoDebuggerImpl()
//debugger.printInvocations(mockExecution)
// verify set prefix = Prefix + ""
//verify(mockExecution).setVariable(Prefix + "sdncResponseSuccess", false)
}
@Test
//@Ignore
public void prepareRollbackData() {
println "************ prepareRollbackData() ************* "
WorkflowException workflowException = new WorkflowException("DoUpdateNetworkInstance", 2500, "Received error from Network Adapter: JBWEB000065: HTTP Status 500.")
ExecutionEntity mockExecution = mock(ExecutionEntity.class)
// Initialize prerequisite variables
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable(Prefix + "rollbackSDNCRequest")).thenReturn(rollbackSDNCRequest)
when(mockExecution.getVariable(Prefix + "rollbackNetworkRequest")).thenReturn(rollbackNetworkRequest)
when(mockExecution.getVariable("WorkflowException")).thenReturn(workflowException)
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.prepareRollbackData(mockExecution)
verify(mockExecution).getVariable("isDebugLogEnabled")
verify(mockExecution).setVariable("prefix", Prefix)
}
@Test
//@Ignore
public void postProcessResponse() {
println "************ postProcessResponse() ************* "
ExecutionEntity mockExecution = mock(ExecutionEntity.class)
// Initialize prerequisite variables
when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
when(mockExecution.getVariable(Prefix + "isException")).thenReturn(false)
when(mockExecution.getVariable("sdncVersion")).thenReturn("1610")
when(mockExecution.getVariable(Prefix + "rollbackSDNCRequest")).thenReturn(rollbackSDNCRequest)
when(mockExecution.getVariable(Prefix + "rollbackNetworkRequest")).thenReturn(rollbackSDNCRequest)
when(mockExecution.getVariable(Prefix + "networkRequest")).thenReturn(expectedNetworkRequest)
when(mockExecution.getVariable("mso-request-id")).thenReturn("requestId")
// preProcessRequest(DelegateExecution execution)
DoUpdateNetworkInstance DoUpdateNetworkInstance = new DoUpdateNetworkInstance()
DoUpdateNetworkInstance.postProcessResponse(mockExecution)
verify(mockExecution, atLeast(3)).getVariable("isDebugLogEnabled")
verify(mockExecution, atLeast(3)).setVariable("prefix", Prefix)
verify(mockExecution).setVariable(Prefix + "Success", true)
}
private ExecutionEntity setupMock() {
ProcessDefinition mockProcessDefinition = mock(ProcessDefinition.class)
when(mockProcessDefinition.getKey()).thenReturn("DoUpdateNetworkInstance")
RepositoryService mockRepositoryService = mock(RepositoryService.class)
when(mockRepositoryService.getProcessDefinition()).thenReturn(mockProcessDefinition)
when(mockRepositoryService.getProcessDefinition().getKey()).thenReturn("DoUpdateNetworkInstance")
when(mockRepositoryService.getProcessDefinition().getId()).thenReturn("100")
ProcessEngineServices mockProcessEngineServices = mock(ProcessEngineServices.class)
when(mockProcessEngineServices.getRepositoryService()).thenReturn(mockRepositoryService)
ExecutionEntity mockExecution = mock(ExecutionEntity.class)
// Initialize prerequisite variables
when(mockExecution.getId()).thenReturn("100")
when(mockExecution.getProcessDefinitionId()).thenReturn("DoUpdateNetworkInstance")
when(mockExecution.getProcessInstanceId()).thenReturn("DoUpdateNetworkInstance")
when(mockExecution.getProcessEngineServices()).thenReturn(mockProcessEngineServices)
when(mockExecution.getProcessEngineServices().getRepositoryService().getProcessDefinition(mockExecution.getProcessDefinitionId())).thenReturn(mockProcessDefinition)
return mockExecution
}
}