X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=tests%2Fso%2Fintegration-cnfm-testing%2Fcnf_lcm_tests.robot;h=985319736a81aa4ee29554613db78a45b25b5a84;hb=eeea948482f30782bde5c06dad1b008b9ea7dbdc;hp=85838861512fa26b158f7f3858dd8f0409db56bf;hpb=0ca039c5f7d9339607f138d560c553159b0092e2;p=integration%2Fcsit.git diff --git a/tests/so/integration-cnfm-testing/cnf_lcm_tests.robot b/tests/so/integration-cnfm-testing/cnf_lcm_tests.robot index 85838861..98531973 100644 --- a/tests/so/integration-cnfm-testing/cnf_lcm_tests.robot +++ b/tests/so/integration-cnfm-testing/cnf_lcm_tests.robot @@ -3,6 +3,7 @@ Library Collections Library RequestsLibrary Library OperatingSystem Library json +Library libraries/KubernetesClient.py Documentation Test cases for CNF lifecycle management operations ... Note, relies on: @@ -17,6 +18,14 @@ ${CNF_RESOURCE_INSTANTIATION_TEMPLATE}= ${CURDIR}${/}data${/}cnfResourceInsta ${CNF_RESOURCE_DELETE_TEMPLATE}= ${CURDIR}${/}data${/}cnfResourceDeleteRequest.json ${SERVICE_DELETE_TEMPLATE}= ${CURDIR}${/}data${/}serviceDeleteRequest.json +${LABEL_NAME}= app.kubernetes.io/instance +${MARIADB_LABEL_SELECTOR}= ${LABEL_NAME}=democnfinstance-mariadb-db-1 +${EXPECTED_NUM_OF_RESOURCES_AFTER_INSTANTIATION}= 1 + +${NGINX_LABEL_SELECTOR}= ${LABEL_NAME}=democnfinstance-nginx-services-2 +${EXPECTED_NUM_OF_RESOURCES_AFTER_DELETE}= 0 + + *** Test Cases *** Invoke Service Instantiation Create Session api_handler_session http://${REPO_IP}:8080 @@ -30,7 +39,6 @@ Invoke Service Instantiation ${service_instantiation_json_response}= Evaluate json.loads(r"""${service_instantiation_request.content}""", strict=False) json ${request_ID}= Set Variable ${service_instantiation_json_response}[requestReferences][requestId] ${service_instance_Id}= Set Variable ${service_instantiation_json_response}[requestReferences][instanceId] - Set Global Variable ${service_instance_Id} ${actual_request_state}= Set Variable "" FOR ${INDEX} IN RANGE ${MAXIMUM_ATTEMPTS_BEFORE_TIMEOUT} @@ -47,6 +55,7 @@ Invoke Service Instantiation Log To Console Final repsonse status received: ${actual_request_state} Should Be Equal As Strings '${actual_request_state}' 'COMPLETE' + Set Global Variable ${service_instance_Id} Invoke CNF Instantiation Run Keyword If "${service_instance_Id}"!="${EMPTY}" Log to Console Service Instance ID :${service_instance_Id} received @@ -68,7 +77,6 @@ Invoke CNF Instantiation ${request_ID}= Set Variable ${cnf_instantiate_json_response}[requestReferences][requestId] ${actual_request_state}= Set Variable "" ${cnf_instance_Id}= Set Variable ${cnf_instantiate_json_response}[requestReferences][instanceId] - SET GLOBAL VARIABLE ${cnf_instance_Id} FOR ${INDEX} IN RANGE ${MAXIMUM_ATTEMPTS_BEFORE_TIMEOUT} ${orchestration_status_request}= Get On Session api_handler_session /onap/so/infra/orchestrationRequests/v7/${request_ID} @@ -85,6 +93,9 @@ Invoke CNF Instantiation Log To Console Final repsonse status received: ${actual_request_state} Should Be Equal As Strings '${actual_request_state}' 'COMPLETE' + Verify Kubernetes Resources ${EXPECTED_NUM_OF_RESOURCES_AFTER_INSTANTIATION} + Set Global Variable ${cnf_instance_Id} + Invoke CNF Delete Run Keyword If "${cnf_instance_Id}" != "${EMPTY}" Log to Console CNF Instance ID :${cnf_instance_Id} received ... ELSE Fail Log to Console Invalid CNF Instance ID :${cnf_instance_Id} recieved @@ -109,7 +120,7 @@ Invoke CNF Delete Log To Console ${orchestration_status_request.content} ${orchestration_json_response}= Evaluate json.loads(r"""${orchestration_status_request.content}""") json ${actual_request_state}= Set Variable ${orchestration_json_response}[request][requestStatus][requestState] - RUN KEYWORD IF '${actual_request_state}' == 'COMPLETE' or '${actual_request_state}' == 'FAILED' Exit For Loop + Run Keyword If '${actual_request_state}' == 'COMPLETE' or '${actual_request_state}' == 'FAILED' Exit For Loop Log To Console Will try again after ${SLEEP_INTERVAL_SEC} seconds SLEEP ${SLEEP_INTERVAL_SEC}s END @@ -117,6 +128,8 @@ Invoke CNF Delete Log To Console Final repsonse status received: ${actual_request_state} Should Be Equal As Strings '${actual_request_state}' 'COMPLETE' + Verify Kubernetes Resources ${EXPECTED_NUM_OF_RESOURCES_AFTER_DELETE} + Delete Service Instance Run Keyword If "${service_instance_Id}" != "${EMPTY}" Log to Console CNF Instance ID :${service_instance_Id} received ... ELSE Fail Log to Console Invalid Service Instance ID :${service_instance_Id} recieved @@ -139,10 +152,32 @@ Delete Service Instance Log To Console ${orchestration_status_request.content} ${orchestration_json_response}= Evaluate json.loads(r"""${orchestration_status_request.content}""") json ${actual_request_state}= Set Variable ${orchestration_json_response}[request][requestStatus][requestState] - RUN KEYWORD IF '${actual_request_state}' == 'COMPLETE' or '${actual_request_state}' == 'FAILED' Exit For Loop + Run Keyword If '${actual_request_state}' == 'COMPLETE' or '${actual_request_state}' == 'FAILED' Exit For Loop Log To Console Will try again after ${SLEEP_INTERVAL_SEC} seconds SLEEP ${SLEEP_INTERVAL_SEC}s END Log To Console Final repsonse status received: ${actual_request_state} - Should Be Equal As Strings '${actual_request_state}' 'COMPLETE' \ No newline at end of file + Should Be Equal As Strings '${actual_request_state}' 'COMPLETE' + +*** Keywords *** +Verify Kubernetes Resources + [Arguments] ${expected_number_resources} + + Create Api Client ${KIND_CLUSTER_KUBE_CONFIG_FILE} + + Log To Console Retrieving number of services using selector '${MARIADB_LABEL_SELECTOR}' + ${no_of_mariadb_services}= Get Number Of Services In Namespace label_selector=${MARIADB_LABEL_SELECTOR} + Should Be Equal As Integers ${no_of_mariadb_services} ${expected_number_resources} Unexpected number of services received for ${MARIADB_LABEL_SELECTOR} + + Log To Console Retrieving number of stateful set using selector '${MARIADB_LABEL_SELECTOR}' + ${no_of_mariadb_stateful_set}= Get Number Of Stateful Set In Namespace label_selector=${MARIADB_LABEL_SELECTOR} + Should Be Equal As Integers ${no_of_mariadb_stateful_set} ${expected_number_resources} Unexpected number of stateful sets received for ${MARIADB_LABEL_SELECTOR} + + Log To Console Retrieving number of services using selector '${NGINX_LABEL_SELECTOR}' + ${no_of_nginx_services}= Get Number Of Services In Namespace label_selector=${NGINX_LABEL_SELECTOR} + Should Be Equal As Integers ${no_of_nginx_services} ${expected_number_resources} Unexpected number of services received for ${NGINX_LABEL_SELECTOR} + + Log To Console Retrieving number of deployments using selector '${NGINX_LABEL_SELECTOR}' + ${no_of_nginx_deployments}= Get Number Of Deployments In Namespace label_selector=${NGINX_LABEL_SELECTOR} + Should Be Equal As Integers ${no_of_nginx_deployments} ${expected_number_resources} Unexpected number of deployments received for ${NGINX_LABEL_SELECTOR} \ No newline at end of file