diff --git a/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot b/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot index 3be16bb27cd089216408d5b8528f50aa1007bea0..8c6e12d8535d7275a027ae19201c91b549ef671b 100644 --- a/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot +++ b/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot @@ -1,6 +1,7 @@ *** Settings *** Resource environment/configuration.txt Resource environment/variables.txt +Resource VnfLcmMntOperationKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} Library DependencyLibrary Library JSONLibrary @@ -9,34 +10,31 @@ Documentation This task resource represents the "Cancel operation" operation. Suite Setup Check resource existance *** Test Cases *** -Post Cancel operation task - [Documentation] The POST method initiates cancelling an ongoing VNF lifecycle operation while it is being executed or rolled back, i.e. - ... the related "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. - Log Cancel an ongoing VNF lifecycle operation - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Cancel a VNF lifecycle operation - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel ${CancelMode} - Log Validate Status code - Integer response status 202 - ${headers}= Output response headers - Should Contain ${headers} Location - Log Validation OK - +Post Cancel operation task + [Documentation] Test ID: 7.3.1.16.1 + ... Test title: POST Cancel operation task + ... Test objective: The POST method initiates cancelling an ongoing VNF lifecycle operation while it is being executed or rolled back, i.e. the related "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. + ... Pre-conditions: none + ... Reference: section 5.4.17.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: in response header Location should not be null + POST Cancel operation task + Check HTTP Response Status Code Is 202 + Post Cancel operation task Conflict - [Documentation] Conflict. - ... The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. - ... Typically, this is due to the fact that the VNF instance resource is not in STARTING, PROCESSING or ROLLING_BACK state, - ... or another error handling action is starting, such as retry or rollback. - ... The response body shall contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. + [Documentation] Test ID: 7.3.1.16.2 + ... Test title: POST Cancel operation task + ... Test objective: The POST method is NOT cancelling an ongoing VNF lifecycle operation due to the fact that the VNF instance resource is not in STARTING, PROCESSING or ROLLING_BACK state + ... Pre-conditions: operation is not in STARTING, PROCESSING or ROLLING_BACK state + ... Reference: section 5.4.17.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: in response header Location should not be null Depends on test Check resource FAILED_TEMP - Log Cancel an operation - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail - Integer response status 409 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + POST Cancel operation task + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails Post Cancel operation task Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent @@ -47,42 +45,56 @@ Post Cancel operation task Not Found ... which means that the task resource consequently does not exist. ... In this case, the response body shall be present, and shall contain a ProblemDetails structure, in which the �detail� attribute shall convey more information about the error. [Setup] Check Fail not supported - log Final fail an operation - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel - Log Validate Status code - Integer response status 409 - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK - + POST Cancel operation task + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails GET Cancel operation task - Method not implemented - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.16.3 + ... Test title: GET Cancel operation task - Method not implemented + ... Test objective: The objective is to test that GET method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.17.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET Cancel operation task + Check HTTP Response Status Code Is 405 PUT Cancel operation task - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.16.3 + ... Test title: PUT Cancel operation task - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.17.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT Cancel operation task + Check HTTP Response Status Code Is 405 PATCH Cancel operation task - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.16.4 + ... Test title: PATCH Cancel operation task - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.17.3.3 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH Cancel operation task + Check HTTP Response Status Code Is 405 DELETE Cancel operation task - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.16.5 + ... Test title: DELETE Cancel operation task - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.17.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE Cancel operation task + Check HTTP Response Status Code Is 405 *** Keywords *** Check resource existance diff --git a/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot b/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot index 374c52c85929f005fd362bab2a721ee0bfbb67cd..3d77e4f674d4cd7ab47d4749b24366f9e7dc3b0b 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot @@ -2,54 +2,73 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Resource VnfLcmMntOperationKeywords.robot Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ Suite Setup Check resource existance *** Test Cases *** -Change external VNF connectivity - [Documentation] The POST method changes the external connectivity of a VNF instance - Log Trying to change the external connectivity of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/changeExtVnfConnectivityRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${body} - Integer response status 202 - Log Status code validated - ${headers}= Output response headers - Should Contain ${headers} Location - Log Validation OK - +POST Change external VNF connectivity + [Documentation] Test ID: 7.3.1.14.1 + ... Test title: POST Change external VNF connectivity + ... Test objective: The objective is to test that POST method trigger a change in VNF external connectivity + ... Pre-conditions: none + ... Reference: section 5.4.11.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: in response header Location should not be null + POST Change External VNF Connectivity + Check HTTP Response Status Code Is 202 + Check Operation Occurrence Id GET Change external VNF connectivity - Method not implemented - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.14.2 + ... Test title: GET Change external VNF connectivity - Method not implemented + ... Test objective: The objective is to test that GET method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.11.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET Change External VNF Connectivity + Check HTTP Response Status Code Is 405 PUT Change external VNF connectivity - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.14.3 + ... Test title: PUT Change external VNF connectivity - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.11.3.3 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT Change External VNF Connectivity + Check HTTP Response Status Code Is 405 PATCH Change external VNF connectivity - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.14.4 + ... Test title: PATCH Change external VNF connectivity - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.11.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH Change External VNF Connectivity + Check HTTP Response Status Code Is 405 DELETE Change external VNF connectivity - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.14.5 + ... Test title: DELETE Change external VNF connectivity - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.11.3.5 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE Change External VNF Connectivity + Check HTTP Response Status Code Is 405 *** Keywords *** Check resource existance diff --git a/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot b/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot index fc2902c5d1c94e6c333c20edf153daa49b13353e..5d4605c6a4cb14427f041fd0c68cf6b8b9ff129a 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot @@ -2,97 +2,104 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Resource VnfLcmMntOperationKeywords.robot Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ Suite Setup Check resource existance *** Test Cases *** -Change deployment flavour of a vnfInstance - [Documentation] Changes the deployment flavour of a VNF instance.. - Log Trying to change the deployment flavour of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/changeVnfFlavourRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} - Integer response status 202 - Log Status code validated - ${headers}= Output response headers - Should Contain ${headers} Location - Log Validation OK +POST Change deployment flavour of a vnfInstance + [Documentation] Test ID: 7.3.1.6.1 + ... Test title: POST Change deployment flavour of a vnfInstance + ... Test objective: The objective is to test that POST method trigger a change in VNF deployment flavour + ... Pre-conditions: none + ... Reference: section 5.4.7.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: in response header Location should not be null + POST Change VNF deployment flavour ${vnfInstanceId} + Check HTTP Response Status Code Is 202 + Check Operation Occurrence Id Change deployment flavour of a vnfInstance Conflict (Not-Instantiated) - # TODO: Need to set the pre-condition of the test. VNF instance shall be in INSTANTIATED state - [Documentation] Conflict. - ... The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. - ... Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, - ... or that another lifecycle management operation is ongoing. - ... The response body shall contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. - [Setup] Check resource not instantiated - Log Trying to change the deployment flavour of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body_file}= Get File jsons/changeVnfFlavourRequest.json - ${body}= evaluate json.loads('''${body_file}''') json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} - Integer response status 409 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK - + [Documentation] Test ID: 7.3.1.6.2 + ... Test title: POST Change deployment flavour of a vnfInstance + ... Test objective: The objective is to test that POST method can't trigger a change in VNF deployment flavour because of a conflict with the state of the VNF instance resource. + ... Pre-conditions: VNF instance resource is not in NOT-INSTANTIATED state + ... Reference: section 5.4.7.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + [Setup] Check resource not instantiated + POST Change VNF deployment flavour ${instantiatedVnfInstanceId} + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails Change deployment flavour of a vnfInstance Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent - [Documentation] Not Found - ... Error: The API producer did not find a current representation for the target resource or is not willing to disclose that one exists. - ... Specifically in case of this task resource, the response code 404 shall also returned if the task is not supported for the VNF instance represented by the parent resource, which means that the task resource consequently does not exist. - ... In this case, the response body shall be present, and shall contain a ProblemDetails structure, in which the �detail� attribute shall convey more information about the error. + [Documentation] Test ID: 7.3.1.6.3 + ... Test title: POST Change deployment flavour of a vnfInstance + ... Test objective: The objective is to test that POST method can't trigger a change in VNF deployment flavour because the VNF instance resource is not found. + ... Pre-conditions: VNF instance resource is not in NOT-INSTANTIATED state + ... Reference: section 5.4.7.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none [Setup] Check change flavour not supported - Log Trying to change the deployment flavour of a VNF instance, not exist - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body_file}= Get File jsons/changeVnfFlavourRequest.json - ${body}= evaluate json.loads('''${body_file}''') json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} - Integer response status 404 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + POST Change VNF deployment flavour ${notFoundVnfInstanceId} + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails GET Change deployment flavour VNFInstance - Method not implemented - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.16.4 + ... Test title: GET Cancel operation task - Method not implemented + ... Test objective: The objective is to test that GET method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.7.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET Change VNF deployment flavour + Check HTTP Response Status Code Is 405 PUT Change deployment flavour VNFInstance - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.16.5 + ... Test title: PUT Cancel operation task - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.7.3.3 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT Change VNF deployment flavour + Check HTTP Response Status Code Is 405 PATCH Change deployment flavour VNFInstance - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.16.6 + ... Test title: PATCH Cancel operation task - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.7.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH Change VNF deployment flavour + Check HTTP Response Status Code Is 405 DELETE Change deployment flavour VNFInstance - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.16.7 + ... Test title: DELETE Cancel operation task - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.7.3.5 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE Change VNF deployment flavour + Check HTTP Response Status Code Is 405 *** Keywords *** Check resource existance @@ -109,6 +116,13 @@ Check resource not instantiated Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} String response body instantiationState NOT_INSTANTIATED +Check resource instantiated + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instantiatedVnfInstanceId} + String response body instantiationState INSTANTIATED + Check change flavour not supported Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} diff --git a/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot b/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot index 989c088b3886898cec9d55341064de9c97c7dc81..9e3a82dbb8b0bdd784ffa81073255a8f2feba1d6 100644 --- a/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot @@ -5,91 +5,103 @@ Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ +Resource VnfLcmMntOperationKeywords.robot Suite Setup Check resource existance *** Test Cases *** -Heal a vnfInstance - [Documentation] Heal a VNF instance - Log Trying to heal a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/healVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} - Integer response status 202 - Log Status code validated - ${headers}= Output response headers - Should Contain ${headers} Location - Log Validation OK +POST Heal a vnfInstance + [Documentation] Test ID: 7.3.1.8.1 + ... Test title: POST Heal a vnfInstance + ... Test objective: The objective is to test that POST method heal a VNF instance + ... Pre-conditions: none + ... Reference: section 5.4.9.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + POST Terminate VNF + Check HTTP Response Status Code Is 202 + Check Operation Occurrence Id Heal a vnfInstance Conflict (Not-Instantiated) # TODO: Need to set the pre-condition of the test. VNF instance shall be in INSTANTIATED state - [Documentation] Conflict. - ... The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. - ... Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, - ... or that another lifecycle management operation is ongoing. - ... The response body shall contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. + [Documentation] Test ID: 7.3.1.8.2 + ... Test title: POST Heal a vnfInstance (Not-Instantiated) + ... Test objective: The objective is to test that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. + ... Pre-conditions: the VNF instance resource is in NOT-INSTANTIATED state + ... Reference: section 5.4.9.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: [Setup] Check resource not instantiated - Log Trying to heal a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/healVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} - Integer response status 409 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + POST Terminate VNF + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails Heal a vnfInstance Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent - [Documentation] Not Found - ... Error: The API producer did not find a current representation for the target resource or is not willing to disclose that one exists. - ... Specifically in case of this task resource, the response code 404 shall also returned if the task is not supported for the VNF instance represented by the parent resource, which means that the task resource consequently does not exist. - ... In this case, the response body shall be present, and shall contain a ProblemDetails structure, in which the �detail� attribute shall convey more information about the error. + [Documentation] Test ID: 7.3.1.8.3 + ... Test title: POST Heal a vnfInstance (Not-Instantiated) + ... Test objective: The objective is to test that the operation cannot be executed because the VNF instance resource is not found. + ... Pre-conditions: the VNF instance resource is not existing + ... Reference: section 5.4.9.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: [Setup] Check heal not supported - Log Trying to heal a VNF instance, not exist - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/healVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} - Integer response status 404 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + POST Terminate VNF + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails + GET Heal VNFInstance - Method not implemented - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.8.4 + ... Test title: GET Heal a vnfInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.9.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + GET Heal VNF + Check HTTP Response Status Code Is 405 PUT Heal VNFInstance - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.8.4 + ... Test title: PUT Heal a vnfInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.9.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + PUT Heal VNF + Check HTTP Response Status Code Is 405 PATCH Heal VNFInstance - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.8.4 + ... Test title: PATCH Heal a vnfInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.9.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + PATCH Heal VNF + Check HTTP Response Status Code Is 405 DELETE Heal VNFInstance - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.8.4 + ... Test title: DELETE Heal a vnfInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.9.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + DELETE Heal VNF + Check HTTP Response Status Code Is 405 *** Keywords *** Check resource existance diff --git a/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot b/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot index b6bdbb8f1aedc67d287f61346ee680c3a3a72d66..888c086ba7e7156006265162d30f4b78a4995e97 100644 --- a/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot +++ b/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot @@ -2,7 +2,8 @@ Resource environment/configuration.txt # Suite setup Expect spec SOL003-VNFLifecycleManagement-API.yaml Resource environment/variables.txt -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Resource VnfLcmMntOperationKeywords.robot Library OperatingSystem Library DependencyLibrary Library JSONLibrary @@ -16,119 +17,112 @@ ${original_etag} 1234 *** Test Cases *** Post Individual VNFInstance - Method not implemented - log Trying to perform a POST. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.2.1 + ... Test title: Post Individual VNFInstance - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.3.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + POST vnfInstance + Check HTTP Response Status Code Is 405 Get Information about an individual VNF Instance - log Trying to get information about an individual VNF instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} - Log Validate Status code - Integer response status 200 - ${contentType}= Output response headers Content-Type - Should Contain ${contentType} ${CONTENT_TYPE} - ${result}= Output response body - Validate Json vnfInstance.schema.json ${result} - Log Validation OK - ${etag} Output response headers ETag - Set Suite Variable ${original_etag} ${etag} + [Documentation] Test ID: 7.3.1.2.2 + ... Test title: Get Information about an individual VNF Instance + ... Test objective: The objective is to create a new VNF instance resource + ... Pre-conditions: none + ... Reference: section 5.4.3.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET individual vnfInstance + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is vnfInstance + SET etag PUT Individual VNFInstance - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} - Log Validate Status code - Integer response status 405 - + [Documentation] Test ID: 7.3.1.2.3 + ... Test title: PUT Individual VNFInstance - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.3.3.3 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + PUT individual vnfInstance + Check HTTP Response Status Code Is 405 + PATCH Individual VNFInstance - [Documentation] Modify VNF Information - ... This method modifies an individual VNF instance resource. - ... Changes to the VNF configurable properties are applied to the configuration in the VNF instance, and are reflected in the representation of this resource. - ... Other changes are applied to the VNF instance information managed by the VNFM, and are reflected in the representation of this resource - log Trying to modify an individual VNF instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} - Set Headers {"If-Match": "${original_etag}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/patchBodyRequest.json - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} - Log Validate Status code - Integer response status 202 - ${headers}= Output response headers - Should Contain ${headers} Location - Log Validation OK + [Documentation] Test ID: 7.3.1.2.4 + ... Test title: PATCH Individual VNFInstance + ... Test objective: This method modifies an individual VNF instance resource + ... Pre-conditions: none + ... Reference: section 5.4.3.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + PATCH individual vnfInstance + Check HTTP Response Status Code Is 202 + Check Operation Occurrence Id PATCH Individual VNFInstance Precondition failed - [Documentation] Precondition Failed - ... A precondition given in an HTTP request header is not fulfilled. - ... Typically, this is due to an ETag mismatch, indicating that the resource was modified by another entity. - ... The response body should contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. + [Documentation] Test ID: 7.3.1.2.5 + ... Test title: PATCH Individual VNFInstance Precondition failed + ... Test objective: The objective is to create a new VNF instance resource + ... Pre-conditions: A precondition given in an HTTP request header is not fulfilled. Typically, this is due to an ETag mismatch, indicating that the resource was modified by another entity + ... Reference: section 5.4.3.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: Depends On Test PATCH Individual VNFInstance # If the previous test scceeded, it means that Etag has been modified - log Trying to modify an individual VNF instance Precondition failed - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} - Set Headers {"If-Match": "${original_etag}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/patchBodyRequest.json - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} - Log Validate Status code - Integer response status 412 - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + PATCH individual vnfInstance + Check HTTP Response Status Code Is 412 + Check HTTP Response Body Json Schema Is ProblemDetails PATCH Individual VNFInstance Conflict + [Documentation] Test ID: 7.3.1.2.6 + ... Test title: PATCH Individual VNFInstance Precondition failed + ... Test objective: The objective is to create a new VNF instance resource + ... Pre-conditions: none + ... Reference: section 5.4.3.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: # TODO: Need to set the pre-condition of the test - [Documentation] Conflict - ... The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. - ... Typically, this is due to the fact that another LCM operation is ongoing. The response body shall contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. [Setup] Launch another LCM operation - log Trying to modify an individual VNF instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/patchBodyRequest.json - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} - Log Validate Status code - Integer response status 409 - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + PATCH individual vnfInstance + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished DELETE Individual VNFInstance - [Documentation] Delete VNF Identifier This method deletes an individual VNF instance resource. - log Trying to delete an individual VNF instance - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} - Log Validate Status code - Integer response status 204 - Log Validation OK + [Documentation] Test ID: 7.3.1.2.7 + ... Test title: DELETE Individual VNFInstance + ... Test objective: The objective is to delete a VNF instance + ... Pre-conditions: none + ... Reference: section 5.4.3.3.5 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + DELETE individual vnfInstance + Check HTTP Response Status Code Is 204 DELETE Individual VNFInstance Conflict + [Documentation] Test ID: 7.3.1.2.8 + ... Test title: DELETE Individual VNFInstance + ... Test objective: The objective is to verify that The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. + ... Pre-conditions: VNF instance resource is in INSTANTIATED state + ... Reference: section 5.4.3.3.5 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: # TODO: Need to set the pre-condition of the test. The VnfInstance shall in INSTANTIATED state - [Documentation] Conflict - ... The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. - ... Typically, this is due to the fact that the VNF instance resource is in INSTANTIATED state. - ... The response body shall contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. [Setup] Check resource instantiated - log Trying to delete an individual VNF instance Conflict - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instantiatedVnfInstanceId} - Log Validate Status code - Integer response status 409 - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + DELETE individual vnfInstance + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails *** Keywords *** Check resource existance @@ -152,3 +146,6 @@ Launch another LCM operation ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 202 +SET etag + ${etag} Output response headers ETag + Set Suite Variable ${original_etag} ${etag} diff --git a/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot b/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot index b728e71dd0904e14b0af10a05720f3d2a6c10ace..37a570c5e8091a9b440f979c69512ab4d41f9274 100644 --- a/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot @@ -6,70 +6,86 @@ Library DependencyLibrary Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ +Resource VnfLcmMntOperationKeywords.robot Suite Setup Check resource existance *** Test Cases *** Instantiate a vnfInstance - [Documentation] Instantiate VNF The POST method instantiates a VNF instance. - Log Trying to Instantiate a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/instantiateVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${body} - Integer response status 202 - Log Status code validated - ${headers}= Output response headers - Should Contain ${headers} Location - Log Validation OK + [Documentation] Test ID: 7.3.1.3.1 + ... Test title: Post Instantiate Individual VNFInstance + ... Test objective: The objective is to instantiate a VNF instance + ... Pre-conditions: none + ... Reference: section 5.4.4.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + POST instantiate individual vnfInstance + Check HTTP Response Status Code Is 202 + Check Operation Occurrence Id Instantiate a vnfInstance Conflict # TODO: Need to set the pre-condition of the test. VNF instance shall be in INSTANTIATED state - [Documentation] Conflict. - ... The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. - ... Typically, this is due to the fact that the VNF instance resource is in INSTANTIATED state. - ... The response body shall contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. + [Documentation] Test ID: 7.3.1.3.2 + ... Test title: Post Instantiate Individual VNFInstance + ... Test objective: The objective is to verify that the instantiation of the vnf cannot be executed currently, due to a conflict with the state of the VNF instance resource. + ... Pre-conditions: VNF instance resource is in INSTANTIATED state + ... Reference: section 5.4.4.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: [Setup] Check resource instantiated - Log Trying to Instantiate a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/instantiateVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instantiatedVnfInstanceId}/instantiate ${body} - Integer response status 409 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + POST instantiate individual vnfInstance + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails GET Instantiate VNFInstance - Method not implemented - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.3.3 + ... Test title: GET Instantiate Individual VNFInstance - Method not implemented + ... Test objective: The objective is to test that GET method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.4.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET instantiate individual vnfInstance + Check HTTP Response Status Code Is 405 PUT Instantiate VNFInstance - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.3.4 + ... Test title: PUT Instantiate Individual VNFInstance - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.4.3.3 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + PUT instantiate individual vnfInstance + Check HTTP Response Status Code Is 405 PATCH Instantiate VNFInstance - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.3.5 + ... Test title: PATCH Instantiate Individual VNFInstance - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.4.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + PATCH instantiate individual vnfInstance + Check HTTP Response Status Code Is 405 DELETE Instantiate VNFInstance - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.3.6 + ... Test title: DELETE Instantiate Individual VNFInstance - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.4.3.5 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + DELETE instantiate individual vnfInstance + Check HTTP Response Status Code Is 405 *** Keywords *** Check resource existance diff --git a/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot b/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot index a4f5c940fbc2108e4136e43f8d49dc4043202bbd..111f24e29e416ded5fd0aa0a3b5da7e62fc499a0 100644 --- a/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot @@ -8,89 +8,97 @@ Library JSONSchemaLibrary schemas/ Suite Setup Check resource existance *** Test Cases *** -Operate a vnfInstance - [Documentation] Change the operational state of a VNF instance - Log Trying to change the operational state of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/operateVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} - Integer response status 202 - Log Status code validated - ${headers}= Output response headers - Should Contain ${headers} Location - Log Validation OK +POST Operate a vnfInstance + [Documentation] Test ID: 7.3.1.9.1 + ... Test title: POST Operate a vnfInstance + ... Test objective: The objective is to test that POST method operate a VNF instance + ... Pre-conditions: none + ... Reference: section 5.4.10.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + POST Operate VNF + Check HTTP Response Status Code Is 202 + Check Operation Occurrence Id -Operate a vnfInstance Conflict (Not-Instantiated) +POST Operate a vnfInstance Conflict (Not-Instantiated) # TODO: Need to set the pre-condition of the test. VNF instance shall be in INSTANTIATED state - [Documentation] Conflict. - ... The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. - ... Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, - ... or that another lifecycle management operation is ongoing. - ... The response body shall contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. + [Documentation] Test ID: 7.3.1.9.2 + ... Test title: POST Operate a vnfInstance + ... Test objective: The objective is to test that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. + ... Pre-conditions: the VNF instance resource is in NOT-INSTANTIATED state + ... Reference: section 5.4.10.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: [Setup] Check resource not instantiated - Log Trying to change the operational state of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/operateVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} - Integer response status 409 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK - + POST Operate VNF + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails -Operate a vnfInstance Not Found +POST Operate a vnfInstance Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent - [Documentation] Not Found - ... Error: The API producer did not find a current representation for the target resource or is not willing to disclose that one exists. - ... Specifically in case of this task resource, the response code 404 shall also returned if the task is not supported for the VNF instance represented by the parent resource, which means that the task resource consequently does not exist. - ... In this case, the response body shall be present, and shall contain a ProblemDetails structure, in which the �detail� attribute shall convey more information about the error. + [Documentation] Test ID: 7.3.1.9.3 + ... Test title: POST Operate a vnfInstance + ... Test objective: The objective is to test that the operation cannot be executed currently, because the resource is not existing + ... Pre-conditions: the VNF instance resource is in not existing + ... Reference: section 5.4.10.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: [Setup] Check operate not supported - Log Trying to change the operational state of a VNF instance, not exist - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/operateVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} - Integer response status 404 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + POST Operate VNF + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails GET Operate VNFInstance - Method not implemented - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.9.4 + ... Test title: GET Operate a vnfInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.10.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + GET Operate VNF + Check HTTP Response Status Code Is 405 PUT Operate VNFInstance - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate - Log Validate Status code - Output response - Integer response status 405 + [Documentation] Test ID: 7.3.1.9.5 + ... Test title: PUT Operate a vnfInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.10.3.3 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + PUT Operate VNF + Check HTTP Response Status Code Is 405 PATCH Operate VNFInstance - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.9.6 + ... Test title: PATCH Operate a vnfInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.10.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + PATCH Operate VNF + Check HTTP Response Status Code Is 405 DELETE Operate VNFInstance - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.9.4 + ... Test title: DELETE Operate a vnfInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.10.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + DELETE Operate VNF + Check HTTP Response Status Code Is 405 *** Keywords *** Check resource existance diff --git a/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot b/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot index 80c53f5a7aa402315bfb38f38a53351b109dd12c..85c93ddb46eb0567093f3c494d99aedcc40a17bf 100644 --- a/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot @@ -5,89 +5,100 @@ Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ +Resource VnfLcmMntOperationKeywords.robot Suite Setup Check resource existance *** Test Cases *** -Scale a vnfInstance - [Documentation] Instantiate VNF The POST method instantiates a VNF instance. - Log Trying to Instantiate a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} - Integer response status 202 - Log Status code validated - ${headers}= Output response headers - Should Contain ${headers} Location - Log Validation OK +POST Scale a vnfInstance + [Documentation] Test ID: 7.3.1.4.1 + ... Test title: POST Scale a vnfInstance + ... Test objective: The objective is to scale a VNF instance + ... Pre-conditions: none + ... Reference: section 5.4.5.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + POST Scale vnfInstance ${instantiatedVnfInstanceId} + Check HTTP Response Status Code Is 202 + Check Operation Occurrence Id -Scale a vnfInstance Conflict (Not-Instantiated) +POST Scale a vnfInstance Conflict (Not-Instantiated) # TODO: Need to set the pre-condition of the test. VNF instance shall be in INSTANTIATED state - [Documentation] Conflict. - ... The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. - ... Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, or that another lifecycle management operation is ongoing. - ... The response body shall contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. + [Documentation] Test ID: 7.3.1.4.2 + ... Test title: POST Scale a vnfInstance Conflict (Not-Instantiated) + ... Test objective: The objective is to verify that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. + ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state + ... Reference: section 5.4.5.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: [Setup] Check resource not instantiated - Log Trying to Scale a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${notInstantiatedVnfInstanceId}/scale ${body} - Integer response status 409 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK - + POST Scale vnfInstance ${notInstantiatedVnfInstanceId} + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails -Scale a vnfInstance Not Found +POST Scale a vnfInstance Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent - [Documentation] Not Found - ... Error: The API producer did not find a current representation for the target resource or is not willing to disclose that one exists. - ... Specifically in case of this task resource, the response code 404 shall also returned if the task is not supported for the VNF instance represented by the parent resource, which means that the task resource consequently does not exist. - ... In this case, the response body shall be present, and shall contain a ProblemDetails structure, in which the �detail� attribute shall convey more information about the error. + [Documentation] Test ID: 7.3.1.4.3 + ... Test title: POST Scale a vnfInstance Not Found + ... Test objective: The objective is to verify that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. + ... Pre-conditions: + ... Reference: section 5.4.5.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: [Setup] Check scale not supported - Log Trying to scale a vnf Instance, not exist - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} - Integer response status 404 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + POST Scale vnfInstance ${notFoundVnfInstanceId} + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails GET Scale VNFInstance - Method not implemented - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.4.4 + ... Test title: GET Scale VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.5.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET Scale vnfInstance + Check HTTP Response Status Code Is 405 PUT Scale VNFInstance - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.4.5 + ... Test title: PUT Scale VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.5.3.3 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + PUT Scale vnfInstance + Check HTTP Response Status Code Is 405 PATCH Scale VNFInstance - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.4.4 + ... Test title: PATCH Scale VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.5.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + PATCH Scale vnfInstance + Check HTTP Response Status Code Is 405 DELETE Scale VNFInstance - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.4.4 + ... Test title: DELETE Scale VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.5.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + DELETE Scale vnfInstance + Check HTTP Response Status Code Is 405 *** Keywords *** Check resource existance diff --git a/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot b/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot index 880f1d466889d90629e54dc271838757497bb85c..b31f58f4faa9ee0931534a881f361a4d2341d577 100644 --- a/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot @@ -5,94 +5,102 @@ Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ +Resource VnfLcmMntOperationKeywords.robot Suite Setup Check resource existance *** Test Cases *** -Scale a vnfInstance to level - [Documentation] Instantiate VNF The POST method instantiates a VNF instance. - Log Trying to Instantiate a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfToLevelRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} - Integer response status 202 - Log Status code validated - ${headers}= Output response headers - Should Contain ${headers} Location - Log Validation OK +POST Scale a vnfInstance to level + [Documentation] Test ID: 7.3.1.5.1 + ... Test title: POST Scale a vnfInstance to level + ... Test objective: The objective is to scale a VNF instance to a target level. + ... Pre-conditions: none + ... Reference: section 5.4.6.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + POST Scale vnfInstance to level ${instantiatedVnfInstanceId} + Check HTTP Response Status Code Is 202 + Check Operation Occurrence Id -Scale a vnfInstance to level Conflict (Not-Instantiated) +POST Scale a vnfInstance to level Conflict (Not-Instantiated) # TODO: Need to set the pre-condition of the test. VNF instance shall be in INSTANTIATED state - [Documentation] Conflict. - ... The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. - ... Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, or that another lifecycle management operation is ongoing. - ... The response body shall contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. + [Documentation] Test ID: 7.3.1.5.2 + ... Test title: POST Scale a vnfInstance to level + ... Test objective: The objective is to verify that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. + ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state + ... Reference: section 5.4.6.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: [Setup] Check resource not instantiated - Log Trying to Scale a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfToLevelRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${notInstantiatedVnfInstanceId}/scale_to_level ${body} - Integer response status 409 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + POST Scale vnfInstance to level ${notInstantiatedInstanceId} + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails Scale a vnfInstance Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent - [Documentation] Not Found - ... Error: The API producer did not find a current representation for the target resource or is not willing to disclose that one exists. - ... Specifically in case of this task resource, the response code 404 shall also returned if the task is not supported for the VNF instance represented by the parent resource, which means that the task resource consequently does not exist. - ... In this case, the response body shall be present, and shall contain a ProblemDetails structure, in which the �detail� attribute shall convey more information about the error. + [Documentation] Test ID: 7.3.1.5.3 + ... Test title: POST Scale a vnfInstance to level + ... Test objective: The objective is to verify that the operation cannot be executed , because the VNF instance resource can't be found. + ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state + ... Reference: section 5.4.6.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: [Setup] Check scale to level not supported - Log Trying to scale a vnf Instance, not exist - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfToLevelRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} - Integer response status 404 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + POST Scale vnfInstance to level ${notFoundInstanceId} + Check HTTP Response Status Code Is 409 + Check HTTP Response Body Json Schema Is ProblemDetails GET Scale to level VNFInstance - Method not implemented - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level - Log Validate Status code - Output response - Integer response status 405 + [Documentation] Test ID: 7.3.1.5.4 + ... Test title: GET Scale to level VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.6.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET Scale vnfInstance to level + Check HTTP Response Status Code Is 405 PUT Scale to level VNFInstance - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level - Log Validate Status code - Output response - Integer response status 405 + [Documentation] Test ID: 7.3.1.5.5 + ... Test title: GET Scale to level VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.6.3.3 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + PUT Scale vnfInstance to level + Check HTTP Response Status Code Is 405 PATCH Scale to level VNFInstance - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level - Log Validate Status code - Output response - Integer response status 405 + [Documentation] Test ID: 7.3.1.5.6 + ... Test title: GET Scale to level VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.6.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + PATCH Scale vnfInstance to level + Check HTTP Response Status Code Is 405 DELETE Scale to level VNFInstance - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level - Log Validate Status code - Output response - Integer response status 405 + [Documentation] Test ID: 7.3.1.5.7 + ... Test title: DELETE Scale to level VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.6.3.5 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + DELETE Scale vnfInstance to level + Check HTTP Response Status Code Is 405 *** Keywords *** Check resource existance @@ -106,7 +114,7 @@ Check resource not instantiated Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${notInstantiatedVnfInstanceId} String response body instantiationState NOT_INSTANTIATED Check scale to level not supported diff --git a/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot b/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot index ca86a5531be0cb2e2823cb9e289d2d0ac757954f..5573682b5153d34fd0e9d39c3762e56dc836da20 100644 --- a/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot @@ -2,74 +2,89 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Resource VnfLcmMntOperationKeywords.robot Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ Suite Setup Check resource existance *** Test Cases *** -Terminate a vnfInstance - [Documentation] Terminates a VNF instance - Log Trying to terminate a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/terminateVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} - Integer response status 202 - Log Status code validated - ${headers}= Output response headers - Should Contain ${headers} Location - Log Validation OK +POST Terminate a vnfInstance + [Documentation] Test ID: 7.3.1.7.1 + ... Test title: POST Terminate a vnfInstance + ... Test objective: The objective is to test that POST method terminate a VNF instance + ... Pre-conditions: none + ... Reference: section 5.4.8.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: + POST Terminate VNF + Check HTTP Response Status Code Is 202 + Check Operation Occurrence Id Terminate a vnfInstance Conflict (Not-Instantiated) # TODO: Need to set the pre-condition of the test. VNF instance shall be in INSTANTIATED state - [Documentation] Conflict. - ... The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. - ... Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, - ... or that another lifecycle management operation is ongoing. - ... The response body shall contain a ProblemDetails structure, in which the �detail� attribute should convey more information about the error. + [Documentation] Test ID: 7.3.1.7.2 + ... Test title: POST Terminate a vnfInstance + ... Test objective: The objective is to test that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. + ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state + ... Reference: section 5.4.8.3.1 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: [Setup] Check resource not instantiated - Log Trying to terminate a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/terminateVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${notInstantiatedVnfInstanceId}/terminate ${body} - Integer response status 409 - Log Status code validated - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + POST Terminate VNF + Check HTTP Response Status Code Is 202 + Check HTTP Response Body Json Schema Is ProblemDetails GET Terminate VNFInstance - Method not implemented - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.7.3 + ... Test title: GET Terminate VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.8.3.2 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET Scale vnfInstance to level + Check HTTP Response Status Code Is 405 PUT Terminate VNFInstance - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.7.4 + ... Test title: GET Terminate VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.8.3.3 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT Scale vnfInstance to level + Check HTTP Response Status Code Is 405 PATCH Terminate VNFInstance - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.7.5 + ... Test title: GET Terminate VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.8.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH Scale vnfInstance to level + Check HTTP Response Status Code Is 405 DELETE Terminate VNFInstance - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.7.6 + ... Test title: GET Terminate VNFInstance - Method not implemented + ... Test objective: The objective is to verify that the method is not implemented + ... Pre-conditions: none + ... Reference: section 5.4.8.3.5 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE Scale vnfInstance to level + Check HTTP Response Status Code Is 405 *** Keywords *** Check resource existance diff --git a/SOL003/VNFLifecycleManagement-API/VNFInstances.robot b/SOL003/VNFLifecycleManagement-API/VNFInstances.robot index ec71cb3bec2e0be086afffa2111d88edc5562467..924863ff15d074a7f5d5c1a82835a34b8fe39348 100644 --- a/SOL003/VNFLifecycleManagement-API/VNFInstances.robot +++ b/SOL003/VNFLifecycleManagement-API/VNFInstances.robot @@ -3,13 +3,14 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Resource VnfLcmMntOperationKeywords.robot Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ *** Test Cases *** -Create a new vnfInstance - [Documentation] Test ID: 5.4.2.1 +POST Create a new vnfInstance + [Documentation] Test ID: 7.3.1.1.1 ... Test title: Create a VNF instance ... Test objective: The objective is to create a new VNF instance resource ... Pre-conditions: VNF instance with the given vnfInstanceId doesn't exist @@ -17,25 +18,12 @@ Create a new vnfInstance ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: VNF instance created - Log Create VNF instance by POST to /vnf_instances - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/createVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${body} - Integer response status 201 - Log Status code validated - ${headers}= Output response headers -# Should Contain ${headers} Location -# ${contentType}= Output response headers Content-Type - Should Contain ${contentType} ${CONTENT_TYPE} - ${result}= Output response body -# ${json}= evaluate json.loads('''${result}''') json - Validate Json vnfInstance.schema.json ${result} - Log Validation OK + POST Create a new vnfInstance + Check HTTP Response Status Code Is 201 + Check HTTP Response Body Json Schema Is vnfInstance Get information about multiple VNF instances - [Documentation] Test ID: 5.4.2.2 + [Documentation] Test ID: 7.3.1.1.2 ... Test title: Get information about multiple VNF instances ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: @@ -43,22 +31,12 @@ Get information about multiple VNF instances ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: - Log Query VNF The GET method queries information about multiple VNF instances. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances - Log Validate Status code - Integer response status 200 - ${contentType}= Output response headers Content-Type - Should Contain ${contentType} ${CONTENT_TYPE} - ${result}= Output response body - Validate Json vnfInstances.schema.json ${result} - Log Validation OK + GET multiple vnfInstances + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is vnfInstances Get information about multiple VNF instances Bad Request Invalid attribute-based filtering parameters - [Documentation] Test ID: 5.4.2.2-1 + [Documentation] Test ID: 7.3.1.1.3 ... Test title: Get information about multiple VNF instances - Invalid attribute-based filtering parameters ... Test objective: The objective is to query information about multiple VNF instances with Invalid attribute-based filtering parameters ... Pre-conditions: @@ -66,20 +44,13 @@ Get information about multiple VNF instances Bad Request Invalid attribute-based ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: - Log Query VNF The GET method queries information about multiple VNF instances. - Log Query VNF The GET method queries information about multiple VNF instances. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - GET ${apiRoot}/${apiName}/${apiVersion}/vnf_instances?attribute_not_exist=some_value - Log Validate Status code - Integer response status 400 - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + GET multiple vnfInstances with bad attribute + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails + Get information about multiple VNF instances Bad Request Invalid attribute selector - [Documentation] Test ID: 5.4.2.2-1 + [Documentation] Test ID: 7.3.1.1.4 ... Test title: Get information about multiple VNF instances - Invalid attribute selector ... Test objective: The objective is to query information about multiple VNF instances with Invalid attribute selector ... Pre-conditions: @@ -87,40 +58,42 @@ Get information about multiple VNF instances Bad Request Invalid attribute selec ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: - Log Query VNF The GET method queries information about multiple VNF instances. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - GET ${apiRoot}/${apiName}/${apiVersion}/vnf_instances?fields=wrong_field - Log Validate Status code - Integer response status 400 - ${problemDetails}= Output response body - Validate Json ProblemDetails.schema.json ${problemDetails} - Log Validation OK + GET multiple vnfInstances with bad filter + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails -PUT VNFInstances - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances - Log Validate Status code - Integer response status 405 - -PATCH VNFInstances - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances - Log Validate Status code - Integer response status 405 +PUT multiples VNFInstances - Method not implemented + [Documentation] Test ID: 7.3.1.1.5 + ... Test title: PUT multiples VNFInstances - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.2.3.3 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + PUT multiple vnfInstances + Check HTTP Response Status Code Is 405 + +PATCH multiples VNFInstances - Method not implemented + [Documentation] Test ID: 7.3.1.1.6 + ... Test title: PATCH multiples VNFInstances - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.2.3.4 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + PATCH multiple vnfInstances + Check HTTP Response Status Code Is 405 DELETE VNFInstances - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances - Log Validate Status code - Integer response status 405 + [Documentation] Test ID: 7.3.1.1.7 + ... Test title: DELETE multiples VNFInstances - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: + ... Reference: section 5.4.2.3.5 - SOL003 v2.4.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + DELETE multiple vnfInstances + Check HTTP Response Status Code Is 405 diff --git a/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot b/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot index f0a4975a944e14fb0d304a0bc7df95f3de558ef2..c4e885ed754e0929934b98ea2f2a5ec959dcfc24 100644 --- a/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot +++ b/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot @@ -30,9 +30,9 @@ Check Operation Occurrence Id Should Not Be Empty ${vnfLcmOpOccId} Check HTTP Response Body Json Schema Is - [Arguments] ${schema} - Validate Json ${schema} ${response.body} - ${vnfInstanceId}= evaluate ${response.body.id} + [Arguments] ${input} + ${schema} = Catenate ${input} .schema.json + Validate Json ${schema} ${response[0]['body']} Log Json Schema Validation OK Check resource Instantiated @@ -228,4 +228,465 @@ Create a new Grant - Asynchronous mode Should Contain ${headers} Location ${contentType}= Output response headers Content-Type Should Contain ${contentType} ${CONTENT_TYPE} - Log Validation OK \ No newline at end of file + Log Validation OK + +POST Cancel operation task + Log Cancel an ongoing VNF lifecycle operation + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Cancel a VNF lifecycle operation + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel ${CancelMode} + Log Validate Status code + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +GET Cancel operation task + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PUT Cancel operation task + log Trying to perform a PUT. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PATCH Cancel operation task + Log Trying to perform a PATCH. This method should not be implemented + Set Headers {"Accept":"${ACCEPT}"} + Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +DELETE Cancel operation task + Log Trying to perform a DELETE. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +POST Change External VNF Connectivity + Log Trying to change the external connectivity of a VNF instance. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/changeExtVnfConnectivityRequest.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${body} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +GET Change External VNF Connectivity + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PUT Change External VNF Connectivity + log Trying to perform a PUT. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PATCH Change External VNF Connectivity + Log Trying to perform a PATCH. This method should not be implemented + Set Headers {"Accept":"${ACCEPT}"} + Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +DELETE Change External VNF Connectivity + Log Trying to perform a DELETE. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +POST Change VNF deployment flavour + [Arguments] ${instanceId} + Log Trying to change the deployment flavour of a VNF instance. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/changeVnfFlavourRequest.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instanceId}/change_flavour ${body} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} +GET Change External VNF Connectivity + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instanceId}/change_flavour + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PUT Change External VNF Connectivity + log Trying to perform a PUT. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instanceId}/change_flavour + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PATCH Change External VNF Connectivity + Log Trying to perform a PATCH. This method should not be implemented + Set Headers {"Accept":"${ACCEPT}"} + Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instanceId}/change_flavour + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +DELETE Change External VNF Connectivity + Log Trying to perform a DELETE. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instanceId}/change_flavour + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +POST Create a new vnfInstance + Log Create VNF instance by POST to /vnf_instances + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/createVnfRequest.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${body} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +GET multiple vnfInstances + Log Query VNF The GET method queries information about multiple VNF instances. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +GET multiple vnfInstances with bad attribute + Log Query VNF The GET method queries information about multiple VNF instances. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances?attribute_not_exist=some_value + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +GET multiple vnfInstances with bad filter + Log Query VNF The GET method queries information about multiple VNF instances. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances?attribute_not_exist=some_value + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PUT VNFInstances - Method not implemented + log Trying to perform a PUT. This method should not be implemented + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances + Log Validate Status code + Integer response status 405 + +PATCH VNFInstances - Method not implemented + log Trying to perform a PATCH. This method should not be implemented + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances + Log Validate Status code + Integer response status 405 + +DELETE VNFInstances - Method not implemented + log Trying to perform a DELETE. This method should not be implemented + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances + Log Validate Status code + Integer response status 405 + +POST vnfInstances + log Trying to perform a POST. This method should not be implemented + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +GET individual vnfInstance + log Trying to get information about an individual VNF instance + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PUT individual vnfInstance + log Trying to perform a PUT. This method should not be implemented + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PATCH individual vnfInstance + log Trying to modify an individual VNF instance + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} + Set Headers {"If-Match": "${original_etag}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/patchBodyRequest.json + Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} +DELETE individual vnfInstance + log Trying to delete an individual VNF instance + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +POST instantiate individual vnfInstance + Log Trying to Instantiate a vnf Instance + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/instantiateVnfRequest.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${body} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +GET instantiate individual vnfInstance + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PUT instantiate individual vnfInstance + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PATCH instantiate individual vnfInstance + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +DELETE instantiate individual vnfInstance + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} +POST Scale vnfInstance + [Arguments] ${instanceId} + Log Trying to Instantiate a vnf Instance + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/scaleVnfRequest.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instanceId}/scale ${body} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} +GET Scale vnfInstance + Log Trying to get a scale a vnf Instance + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/scaleVnfRequest.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} +PUT Scale vnfInstance + Log Trying to modify a scale vnf Instance + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/scaleVnfRequest.json + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} +PATCH Scale vnfInstance + Log Trying to modify a scale vnf Instance + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/scaleVnfRequest.json + Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} +DELETE Scale vnfInstance + Log Trying to modify a scale vnf Instance + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/scaleVnfRequest.json + Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} +POST Scale vnfInstance to level + [Arguments] ${instanceId} + Log Trying to scale a vnf Instance to level + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/scaleVnfToLevelRequest.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instanceId}/scale_to_level ${body} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} +GET Scale vnfInstance to level + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PUT Scale vnfInstance to level + log Trying to perform a PUT. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PATCH Scale vnfInstance to level + log Trying to perform a PATCH. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +DELETE Scale vnfInstance to level + log Trying to perform a PATCH. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +POST Terminate VNF + Log Trying to terminate a VNF instance. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/terminateVnfRequest.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +GET Terminate VNF + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PUT Terminate VNF + log Trying to perform a PUT. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PATCH Terminate VNF + log Trying to perform a PATCH. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +DELETE Terminate VNF + log Trying to perform a PATCH. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +POST Terminate VNF + Log Trying to heal a VNF instance. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/healVnfRequest.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +GET Heal VNF + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PUT Heal VNF + log Trying to perform a PUT. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PATCH Heal VNF + log Trying to perform a PATCH. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +DELETE Heal VNF + log Trying to perform a PATCH. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +POST Operate VNF + Log Trying to operate a VNF instance. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + ${body}= Get File jsons/operateVnfRequest.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +GET Heal VNF + log Trying to perform a GET. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PUT Heal VNF + log Trying to perform a PUT. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +PATCH Heal VNF + log Trying to perform a PATCH. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +DELETE Heal VNF + log Trying to perform a PATCH. This method should not be implemented + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + + diff --git a/SOL003/VNFLifecycleManagement-API/environment/variables.txt b/SOL003/VNFLifecycleManagement-API/environment/variables.txt index a4c8fadf5dbe365f906555d75930d36856b4b3b9..fe5c9214e77a8906b50e93b72099179658256180 100644 --- a/SOL003/VNFLifecycleManagement-API/environment/variables.txt +++ b/SOL003/VNFLifecycleManagement-API/environment/variables.txt @@ -1,6 +1,8 @@ *** Variables *** ${vnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f ${instantiatedVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f #Change with an instantiated vnfInstanceID +${notInstantiatedVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f #Change with an instantiated vnfInstanceID +${notFoundVnfInstanceId} xxxxxxx-yyyyyyy-tttt-az98-uuuuuu #Change with an instantiated vnfInstanceID ${subscriptionId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f ${vnfLcmOpOccId} 6fc3539c-e602-4afa-8e13-962fb5a7d81d ${callback_endpoint} /notification