aboutsummaryrefslogtreecommitdiffstats
path: root/robot/resources/test_templates
diff options
context:
space:
mode:
authorKrzysztof Kuzmicki <krzysztof.kuzmicki@nokia.com>2020-03-06 14:06:48 +0100
committerMorgan Richomme <morgan.richomme@orange.com>2020-04-01 06:55:30 +0000
commit888614e469ca672ddac67cdc2b57ce48497da441 (patch)
tree9db2188d058097967f2b96795f70cc583e94139f /robot/resources/test_templates
parent9f863418055651d4b6fa9772e1f9a94c3efe8c6c (diff)
Extend PnF registrate test cases for GR API
Issue-ID: INT-1477 Signed-off-by: Krzysztof Kuzmicki <krzysztof.kuzmicki@nokia.com> Change-Id: If7ade6850bd59799d5445cebe27db5c948522e06
Diffstat (limited to 'robot/resources/test_templates')
-rw-r--r--robot/resources/test_templates/pnf_orchestration_test_template.robot49
-rw-r--r--robot/resources/test_templates/pnf_registration_without_SO_template.robot28
2 files changed, 65 insertions, 12 deletions
diff --git a/robot/resources/test_templates/pnf_orchestration_test_template.robot b/robot/resources/test_templates/pnf_orchestration_test_template.robot
index 6877441e..8a5b58f4 100644
--- a/robot/resources/test_templates/pnf_orchestration_test_template.robot
+++ b/robot/resources/test_templates/pnf_orchestration_test_template.robot
@@ -8,6 +8,7 @@ Resource model_test_template.robot
Resource ../openstack/neutron_interface.robot
Resource ../sdc_interface.robot
Resource vnf_orchestration_test_template.robot
+Resource ../so/create_service_instance.robot
Library ONAPLibrary.Openstack
@@ -17,13 +18,12 @@ Library ONAPLibrary.Utilities
*** Keywords ***
-Orchestrate PNF
+Orchestrate PNF Macro Flow
[Documentation] Use ONAP to Orchestrate a PNF Macro service.
- [Arguments] ${customer_name} ${service} ${product_family} ${pnf_correlation_id} ${tenant_id} ${tenant_name} ${service_model_type} ${project_name}=Project-Demonstration ${owning_entity}=OE-Demonstration
+ [Arguments] ${customer_name} ${service} ${product_family} ${pnf_correlation_id} ${tenant_id} ${tenant_name} ${service_model_type} ${project_name}=Project-Demonstration ${owning_entity}=OE-Demonstration
${lcp_region}= Set Variable ${GLOBAL_INJECTED_REGION}
${uuid}= Generate UUID4
${full_customer_name}= Catenate ${customer_name}_${uuid}
- ${list}= Create List
${service_name}= Catenate Service_Ete_Name${uuid}
${service_type}= Set Variable ${service}
Create Customer For PNF ${full_customer_name} ${full_customer_name} INFRA ${service_type} ${GLOBAL_AAI_CLOUD_OWNER} ${tenant_id} ${GLOBAL_INJECTED_REGION}
@@ -33,6 +33,49 @@ Orchestrate PNF
Wait Until Keyword Succeeds 60s 20s Validate Service Instance ${service_instance_id} ${service} ${full_customer_name}
[Return] ${service_instance_id} ${request_id} ${full_customer_name}
+Orchestrate PNF Building Block Flow
+ [Documentation] Use ONAP to Orchestrate a PNF using GR api
+ [Arguments] ${service_model_name} ${customer_name} ${service} ${product_family} ${pnf_correlation_id} ${project_name}=Project-Demonstration ${owning_entity}=OE-Demonstration ${lineOfBusinessName}=LOB-Demonstration ${platformName}=Platform-Demonstration
+ ${service_ctalog_json}= Get Service Catalog ${service_model_name}
+ ${service_model_uuid}= Set Variable ${json_resp["uuid"]}
+ ${service_model_invariant_uuid }= Set Variable ${json_resp["invariantUUID"]}
+ ${nf_resource_name}= Set Variable ${json_resp["componentInstances"][0]["name"]}
+ ${nf_resource_uuid}= Set Variable ${json_resp["componentInstances"][0]["customizationUUID"]}
+ ${componentName}= Set Variable ${json_resp["componentInstances"][0]["componentName"]}
+ ${resource_ctalog_json}= Get Resource Catalog ${componentName}
+ ${nf_model_invariant_uuid}= Set Variable ${json_resp["invariantUUID"]}
+ ${nf_model_uuid}= Set Variable ${json_resp["uuid]}
+ ${nf_model_name}= Set Variable ${json_resp["name"]}
+ ${productFamilyId}= Get Service Id ${product_family}
+ ${owningEntityId}= Get Owning Entity Id ${owningEntityName}
+ ${uuid}= Generate UUID4
+ ${full_customer_name}= Catenate ${customer_name}_${uuid}
+ ${service_name}= Catenate Service_Ete_Name${uuid}
+ ${service_type}= Set Variable ${service}
+ Create Customer For PNF ${full_customer_name} ${full_customer_name} INFRA ${service_type} ${GLOBAL_AAI_CLOUD_OWNER} ${tenant_id} ${GLOBAL_INJECTED_REGION}
+ ${arguments}= Create Dictionary service_model_invariant_uuid=${service_model_invariant_uuid}
+ Set To Dictionary ${arguments} service_model_uuid ${service_model_uuid}
+ Set To Dictionary ${arguments} service_model_name ${service_model_name}
+ Set To Dictionary ${arguments} owningEntityId ${owningEntityId}
+ Set To Dictionary ${arguments} owningEntityName ${owningEntityName}
+ Set To Dictionary ${arguments} full_customer_name ${full_customer_name}
+ Set To Dictionary ${arguments} service_name ${service_name}
+ Set To Dictionary ${arguments} productFamilyId ${productFamilyId}
+ Set To Dictionary ${arguments} service ${service}
+ Set To Dictionary ${arguments} nf_resource_name ${nf_resource_name}
+ Set To Dictionary ${arguments} nf_resource_uuid ${nf_resource_uuid}
+ Set To Dictionary ${arguments} nf_model_invariant_uuid ${nf_model_invariant_uuid}
+ Set To Dictionary ${arguments} nf_model_uuid ${nf_model_uuid}
+ Set To Dictionary ${arguments} nf_model_name ${nf_model_name}
+ Set To Dictionary ${arguments} platformName ${platformName}
+ Set To Dictionary ${arguments} lineOfBusinessName ${lineOfBusinessName}
+ Set To Dictionary ${arguments} productFamilyId ${productFamilyId}
+ Set To Dictionary ${arguments} nf_instance_name ${pnf_correlation_id}
+ ${request_id} ${service_instance_id}= Create PNF Service Using GR Api ${arguments}
+ Wait Until Keyword Succeeds 60s 20s Validate Service Instance ${service_instance_id} ${service} ${full_customer_name}
+ Check PNF orchestration status in A&AI ${pnf_correlation_id} register
+ [Return] ${service_instance_id} ${request_id}
+
Create Customer For PNF
[Documentation] PNF Orchestration Test setup....
diff --git a/robot/resources/test_templates/pnf_registration_without_SO_template.robot b/robot/resources/test_templates/pnf_registration_without_SO_template.robot
index 63131b8f..af9b4140 100644
--- a/robot/resources/test_templates/pnf_registration_without_SO_template.robot
+++ b/robot/resources/test_templates/pnf_registration_without_SO_template.robot
@@ -1,6 +1,7 @@
*** Settings ***
Documentation PNF Registration Handler (PRH) test cases
Resource ../aai/aai_interface.robot
+Resource ../aai/create_customer.robot
Resource ../sdc_interface.robot
Resource ../mr_interface.robot
Resource ../so/add_service_recipe.robot
@@ -77,6 +78,14 @@ Query PNF A&AI updated entry
Should Be Equal As Strings ${json_resp["pnf-name"]} ${PNF_entry_dict.correlation_id}
Log PNF integration request in A&AI has been verified and contains all necessary entries
+Check PNF orchestration status in A&AI
+ [Documentation] Query PNF A&AI updated entry
+ [Arguments] ${PNF_entry_dict} ${status}
+ ${get_resp}= AAI.Run Get Request ${AAI_FRONTEND_ENDPOINT} /aai/v11/network/pnfs/pnf/${pnf_correlation_id} auth=${GLOBAL_AAI_AUTHENTICATION}
+ Should Be Equal As Strings ${get_resp.status_code} 200
+ ${json_resp}= Set Variable ${get_resp.json()}
+ Should Be Equal As Strings ${status} ${PNF_entry_dict.orchestrationStatus}
+
Check VES_PNFREG_OUTPUT topic presence in MR
[Documentation] Verify if unauthenticated.VES_PNFREG_OUTPUT topic is present in MR
${get_resp}= Run MR Get Request ${DMAAP_MESSAGE_ROUTER_UNAUTHENTICATED_VES_PNFREG_OUTPUT_PATH}
@@ -111,22 +120,23 @@ Check SO service completition status
${so_status}= Set Variable ${so_status_request_data['request']['requestStatus']['requestState']}
Should Be Equal As Strings ${so_status} ${so_expected_status}
-
Instantiate PNF_macro service and succesfully registrate PNF template
[Documentation] Test case template for design, create, instantiate PNF/macro service and succesfully registrate PNF
- [Arguments] ${service_name} ${PNF_entry_dict} ${pnf_correlation_id} ${service}=pNF ${product_family}=pNF ${customer_name}=ETE_Customer
+ [Arguments] ${service_name} ${PNF_entry_dict} ${pnf_correlation_id} ${service}=pNF ${product_family}=pNF ${customer_name}=ETE_Customer ${building_block_flow}=false
Log To Console \nDistributing TOSCA Based PNF Model
${catalog_service_name} ${catalog_resource_name} ${vf_modules} ${catalog_resources} ${catalog_resource_ids} ${catalog_service_id} Model Distribution For Directory ${service} ${service_name} cds=False instantiationType=Macro resourceType=PNF
${UUID}= Get Service Model Parameter from SDC Service Catalog ${service_name} uuid
- Log To Console Creating Service Recipe for TOSCA Based PNF Model
- ${service_recipe_id}= Add Service Recipe ${UUID} mso/async/services/CreateVcpeResCustService_simplified
+ ${service_recipe_id}= Run Keyword If "${building_block_flow}"=='false' Add Service Recipe ${UUID} mso/async/services/CreateVcpeResCustService_simplified
Inventory Tenant If Not Exists CloudOwner ${region} SharedNode OwnerType v1 CloudZone ${tenant_id} ${tenant_name}
Load OwningEntity project Project-${customer_name}
Load OwningEntity owningEntity OE-${customer_name}
- ${service_instance_id} ${request_id} ${full_customer_name} Orchestrate PNF ${customer_name} ${service} ${product_family} ${pnf_correlation_id} ${tenant_id} ${tenant_name} ${service_name} Project-${customer_name} OE-${customer_name}
+ Load OwningEntity lineOfBusiness LOB-${customer_name}
+ Load OwningEntity platform Platform-${customer_name}
+ ${service_instance_id} ${request_id} ${full_customer_name} Run Keyword If "${building_block_flow}"=='false' Orchestrate PNF Macro Flow ${customer_name} ${service} ${product_family} ${pnf_correlation_id} ${tenant_id} ${tenant_name} ${service_name} Project-${customer_name} OE-${customer_name}
+ ... ELSE Orchestrate PNF Building Block Flow ${service_model_name} ${customer_name} ${service} ${product_family} ${pnf_correlation_id} ${project_name}=Project-Demonstration ${owning_entity}=OE-Demonstration ${lineOfBusinessName}=LOB-Demonstration ${platformName}=Platform-Demonstration
Wait Until Keyword Succeeds 120s 40s Send and verify VES integration request in SO and A&AI ${request_id} ${PNF_entry_dict}
- [Teardown] Instantiate PNF_macro service Teardown ${catalog_service_id} ${catalog_resource_ids} ${PNF_entry_dict} ${service_instance_id} ${service_recipe_id}
-
+ Run Keyword If "${building_block_flow}"=='true' Check PNF orchestration status in A&AI ${pnf_correlation_id} registered
+ [Teardown] Instantiate PNF_macro service Teardown ${catalog_service_id} ${catalog_resource_ids} ${PNF_entry_dict} ${service_instance_id} ${service_recipe_id} ${building_block_flow}
Send and verify VES integration request in SO and A&AI
[Documentation] Gets service status and compares with expected status
@@ -136,7 +146,7 @@ Send and verify VES integration request in SO and A&AI
Wait Until Keyword Succeeds 30s 10s Check SO service completition status ${request_id} COMPLETE
Instantiate PNF_macro service Teardown
- [Arguments] ${catalog_service_id} ${catalog_resource_ids} ${PNF_entry_dict} ${service_instance_id} ${service_recipe_id}
+ [Arguments] ${catalog_service_id} ${catalog_resource_ids} ${PNF_entry_dict} ${service_instance_id} ${service_recipe_id} ${building_block_flow}
Teardown Models ${catalog_service_id} ${catalog_resource_ids}
- Delete Service Recipe ${service_recipe_id}
+ Run Keyword If "${building_block_flow}"=='false' Delete Service Recipe ${service_recipe_id}
Cleanup PNF entry in A&AI ${PNF_entry_dict} \ No newline at end of file