From 9ac6c3cc7e3f4aec9ba69e7a5bb0800471c4e8dc Mon Sep 17 00:00:00 2001 From: MatthieuGeerebaert Date: Wed, 28 Mar 2018 17:12:51 +0200 Subject: Add service inventory - Add service inventory operations get and find - Consumes AAI - Add tests Change-Id: If04ada259b7a172c1dbaac3649047cdb2d9dd5bc Issue-ID: EXTAPI-39 Signed-off-by: MatthieuGeerebaert --- .../aai_get_6490_service-subscriptions.json | 24 +++ .../resources/mappings/aai_get_customer_6490.json | 18 +++ .../mappings/aai_get_customer_generic.json | 18 +++ .../aai_get_generic_service-subscriptions.json | 20 +++ .../mappings/aai_get_service-subscription.json | 55 +++++++ .../mappings/aai_get_service-subscription_vnf.json | 58 +++++++ .../mappings/aai_get_service-subscriptionsVFW.json | 43 ++++++ ...service-subscriptionsvFW-service-2VF-based.json | 43 ++++++ src/test/resources/mappings/aai_get_tenants.json | 167 +++++++++++++++++++++ src/test/resources/mappings/aai_put_customer.json | 12 ++ .../mappings/aai_put_customer_service.json | 12 ++ 11 files changed, 470 insertions(+) create mode 100644 src/test/resources/mappings/aai_get_6490_service-subscriptions.json create mode 100644 src/test/resources/mappings/aai_get_customer_6490.json create mode 100644 src/test/resources/mappings/aai_get_customer_generic.json create mode 100644 src/test/resources/mappings/aai_get_generic_service-subscriptions.json create mode 100644 src/test/resources/mappings/aai_get_service-subscription.json create mode 100644 src/test/resources/mappings/aai_get_service-subscription_vnf.json create mode 100644 src/test/resources/mappings/aai_get_service-subscriptionsVFW.json create mode 100644 src/test/resources/mappings/aai_get_service-subscriptionsvFW-service-2VF-based.json create mode 100644 src/test/resources/mappings/aai_get_tenants.json create mode 100644 src/test/resources/mappings/aai_put_customer.json create mode 100644 src/test/resources/mappings/aai_put_customer_service.json (limited to 'src/test/resources/mappings') diff --git a/src/test/resources/mappings/aai_get_6490_service-subscriptions.json b/src/test/resources/mappings/aai_get_6490_service-subscriptions.json new file mode 100644 index 0000000..5582990 --- /dev/null +++ b/src/test/resources/mappings/aai_get_6490_service-subscriptions.json @@ -0,0 +1,24 @@ +{ + "request": { + "method": "GET", + "url": "/aai/v11/business/customers/customer/6490/service-subscriptions" + }, + "response": { + "status": 200, + "jsonBody": { + "service-subscription": [ + { + "service-type": "vFW-service-2VF-based", + "resource-version": "1519809287769" + }, + { + "service-type": "vFW", + "resource-version": "1519660513613" + } + ] + }, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file diff --git a/src/test/resources/mappings/aai_get_customer_6490.json b/src/test/resources/mappings/aai_get_customer_6490.json new file mode 100644 index 0000000..eaf5a4b --- /dev/null +++ b/src/test/resources/mappings/aai_get_customer_6490.json @@ -0,0 +1,18 @@ +{ + "request": { + "method": "GET", + "url": "/aai/v11/business/customers/customer/6490" + }, + "response": { + "status": 200, + "jsonBody": { + "global-customer-id": "6490", + "subscriber-name": "Jean Pontus", + "subscriber-type": "BSS", + "resource-version": "1518595364087" + }, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file diff --git a/src/test/resources/mappings/aai_get_customer_generic.json b/src/test/resources/mappings/aai_get_customer_generic.json new file mode 100644 index 0000000..250f5d6 --- /dev/null +++ b/src/test/resources/mappings/aai_get_customer_generic.json @@ -0,0 +1,18 @@ +{ + "request": { + "method": "GET", + "url": "/aai/v11/business/customers/customer/generic" + }, + "response": { + "status": 200, + "jsonBody": { + "global-customer-id": "generic", + "subscriber-name": "generic", + "subscriber-type": "BSS", + "resource-version": "1518595364087" + }, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file diff --git a/src/test/resources/mappings/aai_get_generic_service-subscriptions.json b/src/test/resources/mappings/aai_get_generic_service-subscriptions.json new file mode 100644 index 0000000..5cf9ddd --- /dev/null +++ b/src/test/resources/mappings/aai_get_generic_service-subscriptions.json @@ -0,0 +1,20 @@ +{ + "request": { + "method": "GET", + "url": "/aai/v11/business/customers/customer/generic/service-subscriptions" + }, + "response": { + "status": 200, + "jsonBody": { + "service-subscription": [ + { + "service-type": "vFW", + "resource-version": "1519660513613" + } + ] + }, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file diff --git a/src/test/resources/mappings/aai_get_service-subscription.json b/src/test/resources/mappings/aai_get_service-subscription.json new file mode 100644 index 0000000..03558a9 --- /dev/null +++ b/src/test/resources/mappings/aai_get_service-subscription.json @@ -0,0 +1,55 @@ +{ + "request": { + "method": "GET", + "url": "/aai/v11/business/customers/customer/6490/service-subscriptions/service-subscription/vFW/service-instances/service-instance/e4688e5f-61a0-4f8b-ae02-a2fbde623bcb" + }, + "response": { + "status": 200, + "jsonBody": { + "service-instance-id": "e4688e5f-61a0-4f8b-ae02-a2fbde623bcb", + "service-instance-name": "NewFreeRadius-service-instance-01", + "model-invariant-id": "709d157b-52fb-4250-976e-7133dff5c347", + "model-version-id": "98d95267-5e0f-4531-abf8-f14b90031dc5", + "resource-version": "1518508381261", + "relationship-list": { + "relationship": [ + { + "related-to": "generic-vnf", + "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/cb80fbb6-9aa7-4ac5-9541-e14f45de533e", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "cb80fbb6-9aa7-4ac5-9541-e14f45de533e" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "NewFreeRadius-VNF-instance-01" + } + ] + }, + { + "related-to": "generic-vnf", + "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/cb80fbb6-9aa7-4ac5-9541-e14f45de533e", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "cb80fbb6-9aa7-4ac5-9541-e14f45de533e" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "NewFreeRadius-VNF-instance-01" + } + ] + } + ] + } + }, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file diff --git a/src/test/resources/mappings/aai_get_service-subscription_vnf.json b/src/test/resources/mappings/aai_get_service-subscription_vnf.json new file mode 100644 index 0000000..7c33979 --- /dev/null +++ b/src/test/resources/mappings/aai_get_service-subscription_vnf.json @@ -0,0 +1,58 @@ +{ + "request": { + "method": "GET", + "url": "/aai/v11/network/generic-vnfs/generic-vnf/cb80fbb6-9aa7-4ac5-9541-e14f45de533e" + }, + "response": { + "status": 200, + "jsonBody": { + "vnf-id": "cb80fbb6-9aa7-4ac5-9541-e14f45de533e", + "vnf-name": "NewFreeRadius-VNF-instance-01", + "vnf-type": "NewFreeRadius-service/New-FreeRadius 0", + "service-id": "709d157b-52fb-4250-976e-7133dff5c347", + "prov-status": "PREPROV", + "orchestration-status": "Created", + "in-maint": false, + "is-closed-loop-disabled": false, + "resource-version": "1516871905399", + "model-invariant-id": "f5993703-977f-4346-a1c9-c1884f8cfd8d", + "model-version-id": "902438f7-1e4c-492d-b7cc-8650e13b8aeb", + "model-customization-id": "a2def5c8-ab15-482b-a2cd-2af0b987300f", + "nf-type": "", + "nf-function": "", + "nf-role": "", + "nf-naming-code": "", + "relationship-list": { + "relationship": [ + { + "related-to": "service-instance", + "related-link": "/aai/v11/business/customers/customer/Sina/service-subscriptions/service-subscription/NewFreeRadius-service/service-instances/service-instance/e4688e5f-61a0-4f8b-ae02-a2fbde623bcb", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Sina" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "NewFreeRadius-service" + }, + { + "relationship-key": "service-instance.service-instance-id", + "relationship-value": "e4688e5f-61a0-4f8b-ae02-a2fbde623bcb" + } + ], + "related-to-property": [ + { + "property-key": "service-instance.service-instance-name", + "property-value": "NewFreeRadius-service-instance-01" + } + ] + } + ] + } + }, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file diff --git a/src/test/resources/mappings/aai_get_service-subscriptionsVFW.json b/src/test/resources/mappings/aai_get_service-subscriptionsVFW.json new file mode 100644 index 0000000..093dd96 --- /dev/null +++ b/src/test/resources/mappings/aai_get_service-subscriptionsVFW.json @@ -0,0 +1,43 @@ +{ + "request": { + "method": "GET", + "url": "/aai/v11/business/customers/customer/6490/service-subscriptions/service-subscription/vFW/service-instances/" + }, + "response": { + "status": 200, + "jsonBody": { + "service-instance": [ + { + "service-instance-id": "e4688e5f-61a0-4f8b-ae02-a2fbde623bcb", + "service-instance-name": "NewFreeRadius-service-instance-01", + "model-invariant-id": "709d157b-52fb-4250-976e-7133dff5c347", + "model-version-id": "98d95267-5e0f-4531-abf8-f14b90031dc5", + "resource-version": "1518508381261", + "relationship-list": { + "relationship": [ + { + "related-to": "generic-vnf", + "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/cb80fbb6-9aa7-4ac5-9541-e14f45de533e", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "cb80fbb6-9aa7-4ac5-9541-e14f45de533e" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "NewFreeRadius-VNF-instance-01" + } + ] + } + ] + } + } + ] + }, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file diff --git a/src/test/resources/mappings/aai_get_service-subscriptionsvFW-service-2VF-based.json b/src/test/resources/mappings/aai_get_service-subscriptionsvFW-service-2VF-based.json new file mode 100644 index 0000000..444e3cd --- /dev/null +++ b/src/test/resources/mappings/aai_get_service-subscriptionsvFW-service-2VF-based.json @@ -0,0 +1,43 @@ +{ + "request": { + "method": "GET", + "url": "/aai/v11/business/customers/customer/6490/service-subscriptions/service-subscription/vFW-service-2VF-based/service-instances/" + }, + "response": { + "status": 200, + "jsonBody": { + "service-instance": [ + { + "service-instance-id": "vfw-service-id", + "service-instance-name": "vfw-service-name", + "model-invariant-id": "vfw-service-invariant-id", + "model-version-id": "9vfw-service-modek-version-id", + "resource-version": "1518508381261", + "relationship-list": { + "relationship": [ + { + "related-to": "generic-vnf", + "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/cb80fbb6-9aa7-4ac5-9541-e14f45de533e", + "relationship-data": [ + { + "relationship-key": "generic-vnf.vnf-id", + "relationship-value": "cb80fbb6-9aa7-4ac5-9541-e14f45de533e" + } + ], + "related-to-property": [ + { + "property-key": "generic-vnf.vnf-name", + "property-value": "NewFreeRadius-VNF-instance-01" + } + ] + } + ] + } + } + ] + }, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file diff --git a/src/test/resources/mappings/aai_get_tenants.json b/src/test/resources/mappings/aai_get_tenants.json new file mode 100644 index 0000000..7581a91 --- /dev/null +++ b/src/test/resources/mappings/aai_get_tenants.json @@ -0,0 +1,167 @@ +{ + "request": { + "method": "GET", + "url": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants" + }, + "response": { + "status": 200, + "jsonBody": { + + "tenant": [ + { + "tenant-id": "31047205ce114b60833b23e400d6a535", + "tenant-name": "onap-vnfs", + "resource-version": "1516022902124", + "relationship-list": { + "relationship": [ + { + "related-to": "service-subscription", + "related-link": "/aai/v11/business/customers/customer/OPL-User/service-subscriptions/service-subscription/OPL_FWtest1_service_type", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "OPL-User" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "OPL_FWtest1_service_type" + } + ] + }, + { + "related-to": "service-subscription", + "related-link": "/aai/v11/business/customers/customer/Sina/service-subscriptions/service-subscription/NewFreeRadius-service", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Sina" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "NewFreeRadius-service" + } + ] + }, + { + "related-to": "service-subscription", + "related-link": "/aai/v11/business/customers/customer/Sina/service-subscriptions/service-subscription/vMRFaaS3", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Sina" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vMRFaaS3" + } + ] + }, + { + "related-to": "service-subscription", + "related-link": "/aai/v11/business/customers/customer/Sina/service-subscriptions/service-subscription/FreeRadius-service", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Sina" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "FreeRadius-service" + } + ] + }, + { + "related-to": "service-subscription", + "related-link": "/aai/v11/business/customers/customer/6401/service-subscriptions/service-subscription/vFW-service-model", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "6401" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFW-service-model" + } + ] + }, + { + "related-to": "service-subscription", + "related-link": "/aai/v11/business/customers/customer/Sina/service-subscriptions/service-subscription/vFW-service-model", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Sina" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFW-service-model" + } + ] + }, + { + "related-to": "service-subscription", + "related-link": "/aai/v11/business/customers/customer/6404/service-subscriptions/service-subscription/vFW-service-model", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "6404" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFW-service-model" + } + ] + }, + { + "related-to": "service-subscription", + "related-link": "/aai/v11/business/customers/customer/6405/service-subscriptions/service-subscription/vFW-service-model", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "6405" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFW-service-model" + } + ] + }, + { + "related-to": "service-subscription", + "related-link": "/aai/v11/business/customers/customer/6406/service-subscriptions/service-subscription/vFW-service-model", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "6406" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "vFW-service-model" + } + ] + }, + { + "related-to": "service-subscription", + "related-link": "/aai/v11/business/customers/customer/Sina/service-subscriptions/service-subscription/serviceFRDBS", + "relationship-data": [ + { + "relationship-key": "customer.global-customer-id", + "relationship-value": "Sina" + }, + { + "relationship-key": "service-subscription.service-type", + "relationship-value": "serviceFRDBS" + } + ] + } + ] + } + } + ] + + }, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file diff --git a/src/test/resources/mappings/aai_put_customer.json b/src/test/resources/mappings/aai_put_customer.json new file mode 100644 index 0000000..ec28b72 --- /dev/null +++ b/src/test/resources/mappings/aai_put_customer.json @@ -0,0 +1,12 @@ +{ + "request": { + "method": "PUT", + "url": "/aai/v11/business/customers/customer/new" + }, + "response": { + "status": 201, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file diff --git a/src/test/resources/mappings/aai_put_customer_service.json b/src/test/resources/mappings/aai_put_customer_service.json new file mode 100644 index 0000000..889627a --- /dev/null +++ b/src/test/resources/mappings/aai_put_customer_service.json @@ -0,0 +1,12 @@ +{ + "request": { + "method": "PUT", + "url": "/aai/v11/business/customers/customer/new/service-subscriptions/service-subscription/vFW" + }, + "response": { + "status": 201, + "headers": { + "Content-Type": "application/json" + } + } +} \ No newline at end of file -- cgit 1.2.3-korg