diff --git a/SOL003/VNFFaultManagement-API/Alarms.robot b/SOL003/VNFFaultManagement-API/Alarms.robot index cd8068f94036a59a6633ea669c3b2dbfe6e8b1ce..97d8d35b90a9303d7ef8afaa94ed8839564db414 100644 --- a/SOL003/VNFFaultManagement-API/Alarms.robot +++ b/SOL003/VNFFaultManagement-API/Alarms.robot @@ -13,7 +13,7 @@ POST Alarms - Method not implemented ... Test title: POST Alarms - Method not implemented ... Test objective: The objective is to test that Post method is not allowed to create Fault management alarms on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ Get information about multiple alarms ... Test title: Get information about multiple alarms ... Test objective: The objective is to retrieve information about the alarm list and perform a JSON schema and content validation of the returned alarms data structure ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ Get information about multiple alarms with filter ... Test title: Get information about multiple alarms with filter ... Test objective: The objective is to retrieve information about the alarm list and perform a JSON schema and content validation of the returned alarms data structure, and verify that the retrieved information matches the issued attribute-based filters ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -51,7 +51,7 @@ Get information about multiple alarms Bad Request Invalid attribute-based filter ... Test title: Get information about multiple alarms Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is to try to retrieve information about the alarm list with invalid filters and perform a JSON schema and content validation of the returned problem details data structure ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -109,7 +109,7 @@ PUT Alarms - Method not implemented ... Test title: PUT Alarms - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to for Fault management alarms on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -121,7 +121,7 @@ PATCH Alarms - Method not implemented ... Test title: PATCH Alarms - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to for Fault management alarms on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -133,7 +133,7 @@ DELETE Alarms - Method not implemented ... Test title: POST Alarms - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed for Fault management alarms on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -145,7 +145,7 @@ Get information about multiple alarms as a Paged Response ... Test title: Get information about multiple alarms as a Paged Response ... Test objective: The objective is to retrieve information about the alarm list as a Paged Response ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the VNF alarm resources ... Post-Conditions: none @@ -158,7 +158,7 @@ GET information about multiple alarms as a Paged Response with nextpage_opauque_ ... Test title: GET information about multiple alarms as a Paged Response with nextpage_opauque_marker parameter ... Test objective: The objective is to query information about multiple alarms as a Paged Response and retrieve the next page using the nextpage_opaque_marker parameter ... Pre-conditions: A request for retrieving multiple alarms as a paged response has been successfully issued (Test ID 7.3.5.1.12) - ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the VNF alarm resources ... Post-Conditions: none @@ -171,7 +171,7 @@ Get information about multiple alarms - Bad Request Response too Big ... Test title: Get information about multiple alarms - Bad Request Response too Big ... Test objective: The objective is to try to retrieve information about the alarm list because response is too big and perform a JSON schema and content validation of the returned problem details data structure ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -184,7 +184,7 @@ Get information about multiple alarms with permitted authorization scope ... Test title: Get information about multiple alarms with permitted authorization scope ... Test objective: The objective is to retrieve information about the alarm list and perform a JSON schema and content validation of the returned alarms data structure with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -197,14 +197,25 @@ Get information about multiple alarms with not permitted authorization scope ... Test title: Get information about multiple alarms with not permitted authorization scope ... Test objective: The objective is to retrieve information about the alarm list and perform a JSON schema and content validation of the returned alarms data structure with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none GET Fault Management Alarms with not permitted authorization scope Check HTTP Response Status Code Is 403 Check HTTP Response Body Json Schema Is ProblemDetails - +Get information about multiple alarms - Unauthorized + [Documentation] Test ID: 7.3.5.1.16 + ... Test title: Get information about multiple alarms - Unauthorized + ... Test objective: The objective is to try to retrieve information about the alarm list without authorization and perform a JSON schema and content validation of the returned problem details data structure + ... Pre-conditions: none + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET Fault Management Alarms - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails *** Keywords *** Void Log do nothing diff --git a/SOL003/VNFFaultManagement-API/ApiVersion.robot b/SOL003/VNFFaultManagement-API/ApiVersion.robot index 067f9d5065944d191afe6128524adec997b15727..a13ed0872ed951781a5eaab401630fb906fe42a8 100644 --- a/SOL003/VNFFaultManagement-API/ApiVersion.robot +++ b/SOL003/VNFFaultManagement-API/ApiVersion.robot @@ -13,7 +13,7 @@ POST API Version - Method not implemented ... Test title: POST API version - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ GET API Version ... Test title: GET API Version ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ PUT API Version - Method not implemented ... Test title: PUT API Version - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -50,7 +50,7 @@ PATCH API Version - Method not implemented ... Test title: PATCH API Version - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -62,7 +62,7 @@ DELETE API Version - Method not implemented ... Test title: DELETE API Version - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -74,7 +74,7 @@ POST API Version with apiMajorVerion - Method not implemented ... Test title: POST API version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -86,7 +86,7 @@ GET API Version with apiMajorVerion ... Test title: GET API Version with apiMajorVerion ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -99,7 +99,7 @@ PUT API Version with apiMajorVerion - Method not implemented ... Test title: PUT API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -111,7 +111,7 @@ PATCH API Version with apiMajorVerion - Method not implemented ... Test title: PATCH API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -123,7 +123,7 @@ DELETE API Version with apiMajorVerion - Method not implemented ... Test title: DELETE API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFFaultManagement-API/FaultManagement-APIKeyword.robot b/SOL003/VNFFaultManagement-API/FaultManagement-APIKeyword.robot index 63607559e5d1b1a695f40d00234f9d8f6eab24e2..2397bbd5fe0326039d3a17c44fc172e0aa701e17 100644 --- a/SOL003/VNFFaultManagement-API/FaultManagement-APIKeyword.robot +++ b/SOL003/VNFFaultManagement-API/FaultManagement-APIKeyword.robot @@ -145,6 +145,13 @@ GET Fault Management Alarms ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +GET Fault Management Alarms - Unauthorized + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Log Execute Query + Get ${apiRoot}/${apiName}/${apiMajorVersion}/alarms + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} GET Fault Management Alarms with nextpage_opaque_marker parameter Log Get next page of subscriptions Set Headers {"Accept":"${ACCEPT_JSON}"} @@ -272,7 +279,14 @@ GET Fault Management Individual Alarm Get ${apiRoot}/${apiName}/${apiMajorVersion}/alarms/${alarmId} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} - +GET Fault Management Individual Alarm - Unauthorized + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Set Headers {"Version": "${API_VERSION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiMajorVersion}/alarms/${alarmId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} GET Fault Management Individual Alarm with invalid id Log Query NFVO The GET method queries information about an invalid alarm. Should return does not exist Set Headers {"Accept":"${ACCEPT}"} @@ -363,7 +377,23 @@ POST Subscription Set Global Variable ${response} ${outputResponse} Verify Mock Expectation ${notification_request} Clear Requests ${callback_endpoint} - + +POST Subscription - Unauthorized + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Set Headers {"Version": "${API_VERSION}"} + ${template}= Get File jsons/fmSubscriptionRequest.json + ${body}= Format String ${template} vnfdIds=${vnfdIds} callback_uri=${callback_uri}:${callback_port} callback_endpoint=${callback_endpoint} + Log Creating mock request and response to handle GET operation on notification endpoint + &{notification_request}= Create Mock Request Matcher GET ${callback_endpoint} + &{notification_response}= Create Mock Response status_code=204 + Log Issue the subscription request + Create Mock Expectation ${notification_request} ${notification_response} + Post ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions ${body} allow_redirects=false + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + Verify Mock Expectation ${notification_request} + Clear Requests ${callback_endpoint} Send POST Request for duplicated subscription Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions Pass Execution If ${VNFM_DUPLICATION} == 0 NVFO is not permitting duplication. Skipping the test @@ -454,7 +484,13 @@ GET Subscriptions GET ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} - + +GET Subscriptions - Unauthorized + Set Headers {"Accept": "${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} GET Subscriptions with filter Log Get the list of active subscriptions using a filter Set Headers {"Accept": "${ACCEPT}"} @@ -548,7 +584,12 @@ GET Individual Subscription Get ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} - +GET Individual Subscription - Unauthorized + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Get ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} GET Individual Subscription with permitted authorization scope log Trying to get information about an individual subscription with permitted authorization scope Set Headers {"Accept":"${ACCEPT}"} @@ -597,7 +638,20 @@ DELETE Individual Subscription Delete ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} - + +DELETE Individual Subscription - Unauthorized + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Delete ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} +DELETE Individual Subscription - Not found + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + Delete ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${nonExistentSubscriptionId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} Check HTTP Response Header Contain Link ${linkURL}= Get Value From Json ${response['headers']} $..Link Should Not Be Empty ${linkURL} @@ -716,7 +770,15 @@ Post Alarm Notification Post ${callbackResp} ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} - +Post Alarm Notification - Unauthorized + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Set Headers {"Version": "${API_VERSION}"} + ${template} = Get File jsons/AlarmNotification.json + ${body}= Format String ${template} subscriptionId=${subscriptionId} + Post ${callbackResp} ${body} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} Post Alarm Cleared Notification log Trying to perform a POST to get notification Set Headers {"Accept":"${ACCEPT}"} @@ -748,6 +810,12 @@ GET reach the notification endpoint GET ${callbackResp} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +GET reach the notification endpoint - Unauthorized + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + GET ${callbackResp} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} PUT notification endpoint Log Trying to perform a PUT. This method should not be implemented. Set Headers {"Accept": "${ACCEPT_JSON}"} diff --git a/SOL003/VNFFaultManagement-API/IndividualAlarm.robot b/SOL003/VNFFaultManagement-API/IndividualAlarm.robot index 0994c6f14b6d5170264220514baa769b843ac115..ebef7038508207fbce8e7276b9aa95f42045798a 100644 --- a/SOL003/VNFFaultManagement-API/IndividualAlarm.robot +++ b/SOL003/VNFFaultManagement-API/IndividualAlarm.robot @@ -14,7 +14,7 @@ POST Alarm - Method not implemented ... Test title: POST Alarm - Method not implemented ... Test objective: The objective is to test that Post method is not allowed to create Fault management individual alarm on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -26,7 +26,7 @@ Get information about an fault management individual alarm ... Test title: Get information about an fault management individual alarm ... Test objective: The objective is to retrieve information about an individual alarm and perform a JSON schema and content validation of the returned alarm data structure ... Pre-conditions: The related alarm exists - ... Reference: Clause 7.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -40,7 +40,7 @@ PUT Alarm - Method not implemented ... Test title: PUT Alarm - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to for Fault management individual alarm on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -52,7 +52,7 @@ PATCH Fault Management Individual Alarm ... Test title: PATCH Fault Management Individual Alarm ... Test objective: The objective is to Modify an individual alarm resource and perform a JSON schema and content validation of the returned alarm data structure ... Pre-conditions: The related alarm exists - ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -66,7 +66,7 @@ Modify an individual alarm resource - Precondition failed ... Test title: Modify an individual alarm resource - Precondition failed ... Test objective: The objective is to test that an individual alarm resource cannot be modified if the resource was modified by another entity ... Pre-conditions: The related alarm exists - ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -79,7 +79,7 @@ Modify an individual alarm resource - Conflict ... Test title: Modify an individual alarm resource - Conflict ... Test objective: The objective is to test that an individual alarm resource cannot be modified if the alarm is already in the state that is requested to be set ... Pre-conditions: The related alarm exists - ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -93,7 +93,7 @@ DELETE Alarm - Method not implemented ... Test title: DELETE Alarm - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to for Fault management individual alarm on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -105,7 +105,7 @@ Get information about an fault management individual alarm - Not Found ... Test title: Get information about an fault management individual alarm - Not Found ... Test objective: The objective is to test that retrieval of information about an individual alarm fails when individual alarm is not present ... Pre-conditions: The related alarm does not exists - ... Reference: Clause 7.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -118,7 +118,7 @@ PATCH Fault Management Individual Alarm with permitted authorization scope ... Test title: PATCH Fault Management Individual Alarm with permitted authorization scope ... Test objective: The objective is to Modify an individual alarm resource and perform a JSON schema and content validation of the returned alarm data structure with permitted authorization scope ... Pre-conditions: The related alarm exists - ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -132,10 +132,23 @@ PATCH Fault Management Individual Alarm with not permitted authorization scope ... Test title: PATCH Fault Management Individual Alarm with not permitted authorization scope ... Test objective: The objective is to Modify an individual alarm resource and perform a JSON schema and content validation of the returned alarm data structure with not permitted authorization scope ... Pre-conditions: The related alarm exists - ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none PATCH Fault Management Individual Alarm with not permitted authorization scope Check HTTP Response Status Code Is 403 Check HTTP Response Body Json Schema Is ProblemDetails + +Get information about an fault management individual alarm - Unauthorized + [Documentation] Test ID: 7.3.5.2.11 + ... Test title: Get information about an fault management individual alarm - Unauthorized + ... Test objective: The objective is to test that retrieval of information about an individual alarm fails when the requester is not authorized + ... Pre-conditions: The related alarm exists + ... Reference: Clause 7.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET Fault Management Individual Alarm - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails \ No newline at end of file diff --git a/SOL003/VNFFaultManagement-API/IndividualSubscription.robot b/SOL003/VNFFaultManagement-API/IndividualSubscription.robot index 75b0cc27c38c0dfffd8fae9a9b8bf507ee542f50..370c85228f0cea3ddad28a31d1b1f4271b8f4427 100644 --- a/SOL003/VNFFaultManagement-API/IndividualSubscription.robot +++ b/SOL003/VNFFaultManagement-API/IndividualSubscription.robot @@ -11,7 +11,7 @@ Post Individual Subscription - Method not implemented ... Test title: Post Individual Subscription - Method not implemented ... Test objective: The objective is to test that POST method is not allowed for Fault management subscription on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -23,7 +23,7 @@ Get Information about an individual subscription ... Test title: Get Information about an individual subscription ... Test objective: The objective is to read an individual subscription for NFVO alarms subscribed by the client and perform a JSON schema and content validation of the returned fault management individual subscription data structure ... Pre-conditions: The subscription with the given id exists - ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -36,7 +36,7 @@ PUT an individual subscription - Method not implemented ... Test title:PUT an individual subscription - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed for Fault management individual subscription on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -48,7 +48,7 @@ PATCH an individual subscription - Method not implemented ... Test title:PATCH an individual subscription - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed for Fault management individual subscription on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -60,7 +60,7 @@ DELETE an individual subscription ... Test title:DELETE an individual subscription ... Test objective: The objective is to test that DELETE method removes individual subscription on VNF ... Pre-conditions: The Subsbcription already exists - ... Reference: Clause 7.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: subscription is deleted @@ -73,7 +73,7 @@ Get Information about an individual subscription - Not Found ... Test title: Get Information about an individual subscription - Not Found ... Test objective: The objective is to test that the retrieval of an individual subscription for NFVO alarms subscribed by the client fails when subscription is not present ... Pre-conditions: The subscription with the given id does not exists - ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -86,7 +86,7 @@ Get Information about an individual subscription with permitted authorization sc ... Test title: Get Information about an individual subscription with permitted authorization scope ... Test objective: The objective is to read an individual subscription for NFVO alarms subscribed by the client and perform a JSON schema and content validation of the returned fault management individual subscription data structure with permitted authorization scope ... Pre-conditions: The subscription with the given id exists - ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -99,10 +99,46 @@ Get Information about an individual subscription with not permitted authorizatio ... Test title: Get Information about an individual subscription with not permitted authorization scope ... Test objective: The objective is to read an individual subscription for NFVO alarms subscribed by the client and perform a JSON schema and content validation of the returned fault management individual subscription data structure with not permitted authorization scope ... Pre-conditions: The subscription with the given id exists - ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none GET Individual Subscription with not permitted authorization scope Check HTTP Response Status Code Is 403 Check HTTP Response Body Json Schema Is ProblemDetails +Get Information about an individual subscription - Unauthorized + [Documentation] Test ID: 7.3.5.4.9 + ... Test title: Get Information about an individual subscription - Unauthorized + ... Test objective: The objective is to read an individual subscription for NFVO alarms subscribed by the client and perform a JSON schema and content validation of the returned fault management individual subscription data structure without authorization + ... Pre-conditions: The subscription with the given id exists + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET Individual Subscription - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +DELETE an individual subscription - Unauthorized + [Documentation] Test ID: 7.3.5.4.10 + ... Test title:DELETE an individual subscription - Unauthorized + ... Test objective: The objective is to test that DELETE method removes individual subscription on VNF without authorization + ... Pre-conditions: The Subsbcription already exists + ... Reference: Clause 7.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE Individual Subscription - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +DELETE an individual subscription - Not Found + [Documentation] Test ID: 7.3.5.4.11 + ... Test title:DELETE an individual subscription - Not Found + ... Test objective: The objective is to test that DELETE method returns appropriate response when trying to delete a non-existent subscription + ... Pre-conditions: The subscription with the given id does not exist + ... Reference: Clause 7.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE Individual Subscription - Not Found + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails \ No newline at end of file diff --git a/SOL003/VNFFaultManagement-API/NotificationEndpoint.robot b/SOL003/VNFFaultManagement-API/NotificationEndpoint.robot index cdd7f92511095d0fa7d3264f29634e6b0c935159..47b65e5a9bd8124324f78254aca144cb1a7f1a31 100644 --- a/SOL003/VNFFaultManagement-API/NotificationEndpoint.robot +++ b/SOL003/VNFFaultManagement-API/NotificationEndpoint.robot @@ -14,7 +14,7 @@ VNF Fault Alarm Notification ... Test title: VNF Fault Alarm Notification ... Test objective: The objective is to test that the POST request triggers VNF Fault Alarm Notification. ... Pre-conditions: A VNF instance is instantiated, and a subscription for fault alarm notifications is available in the VNFM. - ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -26,7 +26,7 @@ VNF Fault Alarm Cleared Notification ... Test title: VNF Fault Alarm Cleared Notification ... Test objective: The objective is to test that the POST request triggers VNF Fault Alarm Cleared Notification. ... Pre-conditions: A VNF instance is instantiated, and a subscription for fault alarm cleared notifications is available in the VNFM. - ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ VNF Fault Alarm List Reulit Notification ... Test title: VNF Fault Alarm List Rebuilt Notification ... Test objective: The objective is to test that the POST request triggers VNF Fault Alarm List Rebuilt Notification. ... Pre-conditions: A VNF instance is instantiated, and a subscription for fault alarm list rebuilt notifications is available in the VNFM. - ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -49,7 +49,7 @@ Test the Notification Endpoint - Successful ... Test title: Test the Notification Endpoint - Successful ... Test objective: The objective is to test the Notification Endpoint provided by the notification consumer. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 7.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -60,7 +60,7 @@ PUT Notification endpoint - Method Not Implemented ... Test title: PUT Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PUT method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 7.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -71,7 +71,7 @@ PATCH Notification endpoint - Method Not Implemented ... Test title: PATCH Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PATCH method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 7.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -82,9 +82,31 @@ DELETE Notification endpoint - Method Not Implemented ... Test title: DELETE Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the DELETE method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 7.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none DELETE notification endpoint - Check HTTP Response Status Code Is 405 \ No newline at end of file + Check HTTP Response Status Code Is 405 +VNF Fault Alarm Notification - Unauthorized + [Documentation] Test ID: 7.3.5.7.8 + ... Test title: VNF Fault Alarm Notification - Unauthorized + ... Test objective: The objective is to test that the POST request triggers VNF Fault Alarm Notification without proper authorization. + ... Pre-conditions: A VNF instance is instantiated, and a subscription for fault alarm notifications is available in the VNFM. + ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_Notif_Endpoint + ... Applicability: none + ... Post-Conditions: none + Post Alarm Notification - Unauthorized + Check HTTP Response Status Code Is 401 +Test the Notification Endpoint - Unauthorized + [Documentation] Test ID: 7.3.5.7.9 + ... Test title: Test the Notification Endpoint - Unauthorized + ... Test objective: The objective is to test the Notification Endpoint provided by the notification consumer without proper authorization. + ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. + ... Reference: Clause 7.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_Notif_Endpoint + ... Applicability: none + ... Post-Conditions: none + Get reach the notification endpoint - Unauthorized + Check HTTP Response Status Code Is 401 diff --git a/SOL003/VNFFaultManagement-API/Notifications.robot b/SOL003/VNFFaultManagement-API/Notifications.robot index 607f1ec0cbf336e5906c6772283f9477a1cad227..a69891e54c88fd29a50503d876e4eba04c287f2f 100644 --- a/SOL003/VNFFaultManagement-API/Notifications.robot +++ b/SOL003/VNFFaultManagement-API/Notifications.robot @@ -5,6 +5,7 @@ Library MockServerLibrary Library Process Library OperatingSystem Library Collections +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Suite Setup Create Sessions Suite Teardown Terminate All Processes kill=true @@ -15,39 +16,42 @@ VNF Fault Alarm Notification ... Test title: VNF Fault Alarm Notification ... Test objective: The objective is to test the dispatch of VNF Fault Alarm Notification when a virtualised resource within an VNF instance fails, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF instance is instantiated, and a subscription for fault alarm notifications is available in the VNFM. - ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Trigger the fault of a virtualised resource in the VNF instance (external action) - Check Alarm Notification Http POST Request Body Json Schema Is alarmNotification - Check Alarm Notification Http POST Request Body notificationType attribute Is alarmNotification + Check Alarm Notification Http POST Request Body Json Schema Is AlarmNotification + Check Alarm Notification Http POST Request Body notificationType attribute Is AlarmNotification + Check Alarm Notification validation VNF Fault Alarm Cleared Notification [Documentation] Test ID: 7.3.5.5.2 ... Test title: VNF Fault Alarm Cleared Notification ... Test objective: The objective is to test the dispatch of VNF Fault Alarm Cleared Notification when a faulty virtualised resource within an VNF instance is cleared, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF instance is instantiated, a virtualised resource is in faulty state, and a subscription for fault alarm cleared notifications is available in the VNFM. - ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Trigger the clear of a faulty virtualised resource in the VNF instance (external action) - Check Alarm cleared Notification Http POST Request Body Json Schema Is alarmClearedNotification - Check Alarm cleared Notification Http POST Request Body notificationType attribute Is alarmClearedNotification + Check Alarm cleared Notification Http POST Request Body Json Schema Is AlarmClearedNotification + Check Alarm cleared Notification Http POST Request Body notificationType attribute Is AlarmClearedNotification + Check Alarm Cleared Notification validation VNF Fault Alarm List Rebuilt Notification [Documentation] Test ID: 7.3.5.5.3 ... Test title: VNF Fault Alarm List Rebuilt Notification ... Test objective: The objective is to test the dispatch of VNF Fault Alarm List Rebuilt Notification when the VNFM decides to rebuild the list of its VNF alarms, e.g. due to a corruption in the alarm storage, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF instance is instantiated, one or more virtualised resource are in faulty state, and a subscription for fault alarm list rebuilt notifications is available in the VNFM. - ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Trigger the VNF fault alarm list rebuild in the NFVO (external action) - Check Alarm list rebuilt Notification Http POST Request Body Json Schema Is alarmListRebuiltNotification - Check Alarm list rebuilt Notification Http POST Request Body notificationType attribute Is alarmListRebuiltNotification + Check Alarm list rebuilt Notification Http POST Request Body Json Schema Is AlarmListRebuiltNotification + Check Alarm list rebuilt Notification Http POST Request Body notificationType attribute Is AlarmListRebuiltNotification + Check Alarm List Rebuilt Notification validation *** Keywords *** @@ -107,6 +111,71 @@ Check Alarm Clerance Notification Http POST Request Body changeType attribute Is Log do nothing +Check Alarm Notification validation + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} + ${last_request}= Get From List ${requests} -1 + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + ${notification}= Evaluate json.loads(r'''${body_text}''') json + ${alarm}= Get From Dictionary ${notification} alarm + Dictionary Should Contain Key ${alarm} id + Dictionary Should Contain Key ${alarm} managedObjectId + ${subscriptionId}= Get From Dictionary ${notification} subscriptionId + ${alarmId}= Get From Dictionary ${alarm} id + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + ${subscription_response}= GET ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + ${subscription_response_object}= Get From Dictionary ${subscription_response} response + ${subscription_status}= Get From Dictionary ${subscription_response_object} status + Should Be Equal As Integers ${subscription_status} 200 + ${alarm_response}= GET ${apiRoot}/${apiName}/${apiMajorVersion}/alarms/${alarmId} + ${alarm_response_object}= Get From Dictionary ${alarm_response} response + ${alarm_status}= Get From Dictionary ${alarm_response_object} status + Should Be Equal As Integers ${alarm_status} 200 + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} + +Check Alarm Cleared Notification validation + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} + ${last_request}= Get From List ${requests} -1 + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + ${notification}= Evaluate json.loads(r'''${body_text}''') json + ${subscriptionId}= Get From Dictionary ${notification} subscriptionId + ${alarmId}= Get From Dictionary ${notification} alarmId + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + ${subscription_response}= GET ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + ${subscription_response_object}= Get From Dictionary ${subscription_response} response + ${subscription_status}= Get From Dictionary ${subscription_response_object} status + Should Be Equal As Integers ${subscription_status} 200 + ${alarm_response}= GET ${apiRoot}/${apiName}/${apiMajorVersion}/alarms/${alarmId} + ${alarm_response_object}= Get From Dictionary ${alarm_response} response + ${alarm_status}= Get From Dictionary ${alarm_response_object} status + Should Be Equal As Integers ${alarm_status} 200 + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} + +Check Alarm List Rebuilt Notification validation + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} + ${last_request}= Get From List ${requests} -1 + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + ${notification}= Evaluate json.loads(r'''${body_text}''') json + ${subscriptionId}= Get From Dictionary ${notification} subscriptionId + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + ${subscription_response}= GET ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + ${subscription_response_object}= Get From Dictionary ${subscription_response} response + ${subscription_status}= Get From Dictionary ${subscription_response_object} status + Should Be Equal As Integers ${subscription_status} 200 + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} + + Configure Notification Alarm List Rebuilt Handler [Arguments] ${endpoint} ${type} ${json}= evaluate {} diff --git a/SOL003/VNFFaultManagement-API/Subscriptions.robot b/SOL003/VNFFaultManagement-API/Subscriptions.robot index bece4df07e8397dc779676334e70ea4d89861d57..3217ce70fa899ca460d55abca4313e80fd5cd58f 100644 --- a/SOL003/VNFFaultManagement-API/Subscriptions.robot +++ b/SOL003/VNFFaultManagement-API/Subscriptions.robot @@ -16,7 +16,7 @@ Create a new Fault Management alarm subscription ... Test title: Create a new Fault Management alarm subscription ... Test objective: The objective is to create a new Fault management alarm subscriptions and perform a JSON schema and content validation of the returned fault management alarms subscription data structure ... Pre-conditions: No subscription with the same filter and callbackUri exists - ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: subscription is created @@ -33,7 +33,7 @@ Create a new alarm subscription - DUPLICATION ... Test title: Create a new alarm subscription - DUPLICATION ... Test objective: The objective is to create a new subscription with the VNF allowing duplication and perform a JSON schema and content validation of the returned fault management alarms subscription data structure. ... Pre-conditions: subscription with the same filter and callbackUri exists - ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: the NFVO allows creating a subscription resource if another subscription resource with the same filter and callbackUri already exists ... Post-Conditions: duplicated subscription is created @@ -48,7 +48,7 @@ Create a new alarm subscription - NO DUPLICATION ... Test title: Create a new alarm subscription - NO DUPLICATION ... Test objective: The objective is to create a new subscription with the VNF not allowing duplication and perform a JSON schema and content validation of the returned fault management alarms subscription data structure. ... Pre-conditions: subscription with the same filter and callbackUri exists - ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: the NFVO decides to not create a duplicate subscription resource ... Post-Conditions: duplicated subscription is not created @@ -63,7 +63,7 @@ Retrieve a list of alarm subscriptions ... Test title: Retrieve a list of alarm subscriptions ... Test objective: The objective is to retrieve the list of active subscriptions and perform a JSON schema and content validation of the returned fault management alarms subscription data structure. ... Pre-conditions: none - ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: noe @@ -76,7 +76,7 @@ Retrieve a list of alarm subscriptions with filter ... Test title: Retrieve a list of alarm subscriptions with filter ... Test objective: The objective is to retrieve the list of active subscriptions with filter and perform a JSON schema and content validation of the returned fault management alarms subscription data structure. ... Pre-conditions: none - ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -89,7 +89,7 @@ GET subscriptions - Bad Request Invalid attribute-based filtering parameters ... Test title: GET subscriptions - Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is to retrieve the list of active subscriptions with Invalid attribute-based filtering parameters and perform a JSON schema and content validation of the returned problem details data structure. ... Pre-conditions: none - ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -102,7 +102,7 @@ GET subscriptions with "all_fields" attribute selector ... Test title: GET subscriptions with "all_fields" attribute selector ... Test objective: The objective is to retrieve the list of active subscriptions with attribute selector ... Pre-conditions: - ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -115,7 +115,7 @@ GET subscriptions with "exclude_default" attribute selector ... Test title: GET subscriptions with "exclude_default" attribute selector ... Test objective: The objective is to retrieve the list of active subscriptions with attribute selector ... Pre-conditions: - ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -128,7 +128,7 @@ GET subscriptions with "fields" attribute selector ... Test title: GET subscriptions with "fields" attribute selector ... Test objective: The objective is to retrieve the list of active subscriptions with attribute selector ... Pre-conditions: - ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -141,7 +141,7 @@ GET subscriptions with "exclude_fields" attribute selector ... Test title: GET subscriptions with "exclude_fields" attribute selector ... Test objective: The objective is to retrieve the list of active subscriptions with attribute selector ... Pre-conditions: - ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -154,7 +154,7 @@ PUT subscriptions - Method not implemented ... Test title:PUT subscriptions - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to for Fault management subscriptions on VNF ... Pre-conditions: none - ... RReference: Clause 7.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... RReference: Clause 7.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -166,7 +166,7 @@ PATCH subscriptions - Method not implemented ... Test title: PATCH subscriptions - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to for Fault management subscriptions on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -178,7 +178,7 @@ DELETE subscriptions - Method not implemented ... Test title: DELETE subscriptions - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to for Fault management subscriptions on VNF ... Pre-conditions: none - ... Reference: Clause 7.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: subscription is not deleted @@ -190,7 +190,7 @@ Retrieve a list of alarm subscriptions as Paged Response ... Test title: Retrieve a list of alarm subscriptions as Paged Response ... Test objective: The objective is to retrieve the list of active subscriptions as Paged Response. ... Pre-conditions: none - ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: noe @@ -203,7 +203,7 @@ GET subscriptions - Bad Request Response too Big ... Test title: GET subscriptions - Bad Request Response too Big ... Test objective: The objective is to retrieve the list of active subscriptions because response is too big and perform a JSON schema and content validation of the returned problem details data structure. ... Pre-conditions: none - ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -216,7 +216,7 @@ GET Subscription with attribute-based filter "id" ... Test title: GET Subscription with attribute-based filter "id" ... Test objective: The objective is to retrieve the list of active subscriptions with filter "id" ... Pre-conditions: - ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -230,7 +230,7 @@ Get subscriptions with filter "filter.notificationTypes" ... Test title: GET Subscription with attribute-based filter "filter.notificationTypes" ... Test objective: The objective is to retrieve the list of active subscriptions with filter "filter.notificationTypes" ... Pre-conditions: - ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -244,7 +244,7 @@ Get subscriptions with filter "filter.faultyResourceTypes" ... Test title: GET Subscription with attribute-based filter "filter.faultyResourceTypes" ... Test objective: The objective is to retrieve the list of active subscriptions with filter "filter.faultyResourceTypes" ... Pre-conditions: - ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -258,7 +258,7 @@ Get subscriptions with filter "filter.perceivedSeverities" ... Test title: GET Subscription with attribute-based filter "filter.perceivedSeverities" ... Test objective: The objective is to retrieve the list of active subscriptions with filter "filter.perceivedSeverities" ... Pre-conditions: - ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -272,7 +272,7 @@ Get subscriptions with filter "filter.eventTypes" ... Test title: GET Subscription with attribute-based filter "filter.eventTypes" ... Test objective: The objective is to retrieve the list of active subscriptions with filter "filter.eventTypes" ... Pre-conditions: - ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -286,7 +286,7 @@ Get subscriptions with filter "filter.probableCauses" ... Test title: GET Subscription with attribute-based filter "filter.probableCauses" ... Test objective: The objective is to retrieve the list of active subscriptions with filter "filter.probableCauses" ... Pre-conditions: - ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -300,7 +300,7 @@ POST Create a new Subscription - Unprocessable Content ... Test title: POST Create a new Subscription - Unprocessable Content ... Test objective: The objective is to test that content type of the message content is supported and the message content of a request contains syntactically correct data but the data cannot be processed. ... re-conditions: none - ... Reference: Clause 7.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -313,7 +313,7 @@ Create a new Fault Management alarm subscription with permitted authorization sc ... Test title: Create a new Fault Management alarm subscription with permitted authorization scope ... Test objective: The objective is to create a new Fault management alarm subscriptions and perform a JSON schema and content validation of the returned fault management alarms subscription data structure with permitted authorization scope ... Pre-conditions: No subscription with the same filter and callbackUri exists - ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: subscription is created @@ -330,10 +330,35 @@ Create a new Fault Management alarm subscription with not permitted authorizatio ... Test title: Create a new Fault Management alarm subscription with not permitted authorization scope ... Test objective: The objective is to create a new Fault management alarm subscriptions and perform a JSON schema and content validation of the returned fault management alarms subscription data structure with not permitted authorization scope ... Pre-conditions: No subscription with the same filter and callbackUri exists - ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: subscription is created POST Subscription with not permitted authorization scope Check HTTP Response Status Code Is 403 Check HTTP Response Body Json Schema Is ProblemDetails + +Create a new Fault Management alarm subscription - Unauthorized + [Documentation] Test ID: 7.3.5.3.25 + ... Test title: Create a new Fault Management alarm subscription - Unauthorized + ... Test objective: The objective is to create a new Fault management alarm subscriptions and perform a JSON schema and content validation of the returned fault management alarms subscription data structure without authorization + ... Pre-conditions: No subscription with the same filter and callbackUri exists + ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST Subscription - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +Retrieve a list of alarm subscriptions - Unauthorized + [Documentation] Test ID: 7.3.5.3.26 + ... Test title: Retrieve a list of alarm subscriptions - Unauthorized + ... Test objective: The objective is to retrieve the list of active subscriptions and perform a JSON schema and content validation of the returned fault management alarms subscription data structure without authorization + ... Pre-conditions: none + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET Subscriptions - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails \ No newline at end of file diff --git a/SOL003/VNFFaultManagement-API/environment/variables.txt b/SOL003/VNFFaultManagement-API/environment/variables.txt index fbd291400911a32c449c7d4d58347ac91bcfb84e..71e2f59eaa71c36d3544f7a00d29a9b825b399cc 100644 --- a/SOL003/VNFFaultManagement-API/environment/variables.txt +++ b/SOL003/VNFFaultManagement-API/environment/variables.txt @@ -44,6 +44,7 @@ ${API_VERSION} 1.14.0 ${nextPageUri} /some_uri ${subscriptionId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${nonExistentSubscriptionId} nonExistentSubscriptionId ${notification_type} AlarmNotification ${faultyResourceType} COMPUTE ${eventType} COMMUNICATIONS_ALARM diff --git a/SOL003/VNFIndicator-API/ApiVersion.robot b/SOL003/VNFIndicator-API/ApiVersion.robot index 705aa128a0022bfd8175156b7792219e3834f3e1..8366df0c85c84b7b2d08a738816d817b33dc780d 100644 --- a/SOL003/VNFIndicator-API/ApiVersion.robot +++ b/SOL003/VNFIndicator-API/ApiVersion.robot @@ -13,7 +13,7 @@ POST API Version - Method not implemented ... Test title: POST API version - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ GET API Version ... Test title: GET API Version ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ PUT API Version - Method not implemented ... Test title: PUT API Version - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -50,7 +50,7 @@ PATCH API Version - Method not implemented ... Test title: PATCH API Version - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -62,7 +62,7 @@ DELETE API Version - Method not implemented ... Test title: DELETE API Version - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -74,7 +74,7 @@ POST API Version with apiMajorVerion - Method not implemented ... Test title: POST API version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -86,7 +86,7 @@ GET API Version with apiMajorVerion ... Test title: GET API Version with apiMajorVerion ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -99,7 +99,7 @@ PUT API Version with apiMajorVerion - Method not implemented ... Test title: PUT API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -111,7 +111,7 @@ PATCH API Version with apiMajorVerion - Method not implemented ... Test title: PATCH API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -123,7 +123,7 @@ DELETE API Version with apiMajorVerion - Method not implemented ... Test title: DELETE API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFIndicator-API/IndividualSubscription.robot b/SOL003/VNFIndicator-API/IndividualSubscription.robot index e9a39c709909471525f7180654c35e10a59e6cee..533d6246df4a6cd2e9fbea6d7f0f639fe337bd79 100644 --- a/SOL003/VNFIndicator-API/IndividualSubscription.robot +++ b/SOL003/VNFIndicator-API/IndividualSubscription.robot @@ -11,7 +11,7 @@ GET Individual VNF Indicator Subscription ... Test title: GET Individual VNF Indicator Subscription ... Test objective: The objective is to test the retrieval of individual VNF indicator subscription and perform a JSON schema validation of the returned subscription data structure ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -24,7 +24,7 @@ GET Individual VNF Indicator Subscription with invalid resource identifier ... Test title: GET Individual VNF Indicator Subscription with invalid resource identifier ... Test objective: The objective is to test that the retrieval of individual VNF indicator subscription fails when using an invalid resource identifier. ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -37,7 +37,7 @@ DELETE Individual VNF Indicator Subscription ... Test title: DELETE Individual VNF Indicator Subscription ... Test objective: The objective is to test the deletion of an individual VNF indicator subscription. ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The subscription to VNF indicators is deleted @@ -50,7 +50,7 @@ DELETE Individual VNF Indicator Subscription with invalid resource identifier ... Test title: DELETE Individual VNF Indicator Subscription with invalid resource identifier ... Test objective: The objective is to test that the deletion of an individual VNF indicator subscription fails when using an invalid resource identifier. ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -62,7 +62,7 @@ PUT Individual VNF Indicator Subscription - Method not implemented ... Test title: PUT Individual VNF Indicator Subscription - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify an individual VNF indicator subscription ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The individual VNF indicator subscription is not modified by the operation @@ -74,7 +74,7 @@ PATCH Individual VNF Indicator Subscription - Method not implemented ... Test title: PATCH Individual VNF Indicator Subscription - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update an individual VNF indicator subscription ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -86,7 +86,7 @@ POST Individual VNF Indicator Subscription - Method not implemented ... Test title: POST Individual VNF Indicator Subscription - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF indicator subscription ... Pre-conditions: A VNF instance is instantiated. - ... Reference: Clause 8.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -98,7 +98,7 @@ GET Individual VNF Indicator Subscription with permitted authorization scope ... Test title: GET Individual VNF Indicator Subscription with permitted authorization scope ... Test objective: The objective is to test the retrieval of individual VNF indicator subscription and perform a JSON schema validation of the returned subscription data structure with permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -111,7 +111,7 @@ GET Individual VNF Indicator Subscription with not permitted authorization scope ... Test title: GET Individual VNF Indicator Subscription with not permitted authorization scope ... Test objective: The objective is to test the retrieval of individual VNF indicator subscription and perform a JSON schema validation of the returned subscription data structure with not permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFIndicator-API/IndividualVNFindicator.robot b/SOL003/VNFIndicator-API/IndividualVNFindicator.robot index 440ab94d3f9de7011cb20a795149c06891c2d4e8..224a4c312f150ab49c29ca1ffcfa1cc5d480b2a6 100644 --- a/SOL003/VNFIndicator-API/IndividualVNFindicator.robot +++ b/SOL003/VNFIndicator-API/IndividualVNFindicator.robot @@ -10,7 +10,7 @@ Get Individual Indicator for VNF Instance ... Test title: Get Individual Indicator for VNF Instance ... Test objective: The objective is to test the retrieval of an indicator for a given VNF instance and perform a JSON schema validation of the returned indicator data structure ... Pre-conditions: A VNF instance is instantiated. At least one measure of VNF indicator is available in the VNFM. - ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ Get Individual Indicator for VNF Instance with invalid indicator identifier ... Test title: Get Individual Indicator for VNF Instance with invalid indicator identifier ... Test objective: The objective is to test that the retrieval of an indicator for a given VNF instance fails when using an invalid resource identifier. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. At least one measure of VNF indicator is available in the VNFM. - ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ POST Individual VNF Indicator for VNF Instance - Method not implemented ... Test title: POST Individual VNF Indicator for VNF Instance - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF indicator in the VNFM ... Pre-conditions: A VNF instance is instantiated. - ... Reference: Clause 8.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -50,7 +50,7 @@ PUT Individual VNF Indicator for VNF Instance - Method not implemented ... Test title: PUT Individual VNF Indicator for VNF Instance - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify an existing indicator for a VNF instance ... Pre-conditions: A VNF instance is instantiated. At least one measure of VNF indicator is available in the VNFM - ... Reference: Clause 8.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -62,7 +62,7 @@ PATCH Individual VNF Indicator for VNF Instance - Method not implemented ... Test title: PATCH Individual VNF Indicator for VNF Instance - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update an existing indicator for a VNF instance ... Pre-conditions: A VNF instance is instantiated. At least one measure of VNF indicator is available for the given VNF instance. - ... Reference: Clause 8.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -74,7 +74,7 @@ DELETE Individual VNF Indicator for VNF Instance - Method not implemented ... Test title: DELETE Individual VNF Indicator for VNF Instance - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete an existing indicator for a VNF instance ... Pre-conditions: A VNF instance is instantiated. At least one measure of VNF indicator is available in the VNFM - ... Reference: Clause 8.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -86,7 +86,7 @@ Get Individual Indicator for VNF Instance with permitted authorization scope ... Test title: Get Individual Indicator for VNF Instance with permitted authorization scope ... Test objective: The objective is to test the retrieval of an indicator for a given VNF instance and perform a JSON schema validation of the returned indicator data structure with permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. At least one measure of VNF indicator is available in the VNFM. - ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -101,7 +101,7 @@ Get Individual Indicator for VNF Instance with not permitted authorization scope ... Test title: Get Individual Indicator for VNF Instance with not permitted authorization scope ... Test objective: The objective is to test the retrieval of an indicator for a given VNF instance and perform a JSON schema validation of the returned indicator data structure with not permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. At least one measure of VNF indicator is available in the VNFM. - ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFIndicator-API/NotificationEndpoint.robot b/SOL003/VNFIndicator-API/NotificationEndpoint.robot index 96754ba8c4e987d675247dfa3d2384f88e81ea07..8f36b15eb010092e8d6c2ff0c7ee1ddbbaf86780 100644 --- a/SOL003/VNFIndicator-API/NotificationEndpoint.robot +++ b/SOL003/VNFIndicator-API/NotificationEndpoint.robot @@ -13,7 +13,7 @@ VNF Indicator Value Change Notification ... Test title: VNF Indicator Value Change Notification ... Test objective: The objective is to test that the POST request triggers VNF Indicator Value Change Notification. ... Pre-conditions: A VNF is instantiated, and a subscription for indicator value change notifications is available in the VNFM. - ... Reference: Clause 8.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ Supported Indicators Change Notification ... Test title: Supported Indicators Change Notification ... Test objective: The objective is to test that the POST request triggers Supported Indicators Change Notification. ... Pre-conditions: A VNF is instantiated, and a individual subscription resource for supported indicators change notifications is available in the VNFM. - ... Reference: Clause 8.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -36,7 +36,7 @@ Test the Notification Endpoint - Successful ... Test title: Test the Notification Endpoint - Successful ... Test objective: The objective is to test the Notification Endpoint provided by the notification consumer. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 8.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -47,7 +47,7 @@ PUT Notification endpoint - Method Not Implemented ... Test title: PUT Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PUT method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 8.4.7.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.7.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -58,7 +58,7 @@ PATCH Notification endpoint - Method Not Implemented ... Test title: PATCH Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PATCH method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 8.4.7.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.7.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -69,7 +69,7 @@ DELETE Notification endpoint - Method Not Implemented ... Test title: DELETE Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the DELETE method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 8.4.7.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.7.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFIndicator-API/Notifications.robot b/SOL003/VNFIndicator-API/Notifications.robot index c6e1c2e63e203c089f8016062114451bebfed050..ef0028844188fb8068f670ab91342e3aea80a8cc 100644 --- a/SOL003/VNFIndicator-API/Notifications.robot +++ b/SOL003/VNFIndicator-API/Notifications.robot @@ -1,4 +1,4 @@ -*** Setting *** +*** Settings *** Resource environment/variables.txt Suite Setup Create Sessions Suite Teardown Terminate All Processes kill=true @@ -8,6 +8,7 @@ Library OperatingSystem Library BuiltIn Library Collections Library String +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false *** Test Cases *** @@ -16,13 +17,14 @@ VNF Indicator Value Change Notification ... Test title: VNF Indicator Value Change Notification ... Test objective: The objective is to test the dispatch of VNF Indicator Value Change Notification when new indicator values are available in the VNFM, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF is instantiated, and a subscription for indicator value change notifications is available in the VNFM. - ... Reference: Clause 8.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Trigger the availability of new indicator value in the VNFM (external action) Check Indicator Value Change Notification Http POST Request Body Json Schema Is VnfIndicatorValueChangeNotification Check Indicator Value Change Notification Http POST Request Body notificationType attribute Is VnfIndicatorValueChangeNotification + Check Indicator Value Change Notification validation *** Keywords *** @@ -64,4 +66,43 @@ Configure Notification Forward Create Sessions Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance Wait For Process handle=mockInstance timeout=5s on_timeout=continue - Create Mock Session ${callback_uri}:${callback_port} \ No newline at end of file + Create Mock Session ${callback_uri}:${callback_port} +Check Indicator Value Change Notification validation [Arguments] ${expected_notification_type}=VnfIndicatorValueChangeNotification + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} msg=No notification received at callback endpoint! + + ${request_type}= Evaluate type(${requests}) + Log Request type: ${request_type} + + ${last_request}= Run Keyword If "${request_type}" == "" + ... Get From List ${requests} -1 + ... ELSE + ... Set Variable ${requests} + + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + + ${notification}= Evaluate json.loads(r'''${body_text}''') json + Log Parsed notification: ${notification} + + Should Be Equal As Strings ${notification['notificationType']} ${expected_notification_type} + + ${vnfInstanceId}= Get From Dictionary ${notification} vnfInstanceId + ${indicatorId}= Get From Dictionary ${notification} vnfIndicatorId + ${subscriptionId}= Get From Dictionary ${notification} subscriptionId + + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 + ... Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + + # Validate Subscription exists + GET ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + Integer response status 200 + + # Validate Indicator resource + GET ${apiRoot}/${apiName}/${apiMajorVersion}/indicators/${vnfInstanceId}/${indicatorId} + Integer response status 200 + + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} + diff --git a/SOL003/VNFIndicator-API/Subscriptions.robot b/SOL003/VNFIndicator-API/Subscriptions.robot index f1ae399605c3df95ebbfc7976c5e95d23593efb5..f9578f17e46f3285155d866923b6397101c41542 100644 --- a/SOL003/VNFIndicator-API/Subscriptions.robot +++ b/SOL003/VNFIndicator-API/Subscriptions.robot @@ -16,7 +16,7 @@ GET All VNF Indicator Subscriptions ... Test title: GET All VNF Indicator Subscriptions ... Test objective: The objective is to test the retrieval of all VNF indicator subscriptions and perform a JSON schema validation of the returned subscriptions data structure ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -29,7 +29,7 @@ GET VNF Indicator Subscriptions with attribute-based filter ... Test title: GET VNF Indicator Subscriptions with attribute-based filter ... Test objective: The objective is to test the retrieval of VNF indicator subscriptions using attribute-based filter, perform a JSON schema validation of the collected indicators data structure, and verify that the retrieved information matches the issued attribute-based filters ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -43,7 +43,7 @@ GET VNF Indicator Subscriptions with invalid attribute-based filter ... Test title: GET VNF Indicator Subscriptions with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of VNF indicator subscriptions fails when using invalid attribute-based filters, and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -56,7 +56,7 @@ GET VNF Indicator Subscriptions with invalid resource endpoint ... Test title: GET VNF Indicator Subscriptions with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of all VNF indicator subscriptions fails when using invalid resource endpoint. ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -68,7 +68,7 @@ Create new VNF indicator subscription ... Test title: Create new VNF indicator subscription ... Test objective: The objective is to test the creation of a new VNF indicator subscription and perform a JSON schema and content validation of the returned subscription data structure ... Pre-conditions: A VNF instance is instantiated. - ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF indicator subscription is successfully set and it matches the issued subscription @@ -85,7 +85,7 @@ Create duplicated VNF indicator subscription with VNFM not creating duplicated s ... Test title: Create duplicated VNF indicator subscription with VNFM not creating duplicated subscriptions ... Test objective: The objective is to test the attempt of a creation of a duplicated VNF indicator subscription and check that no new subscription is created by the VNFM and a link to the original subscription is returned ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM does not support the creation of duplicated subscriptions ... Post-Conditions: The existing VNF indicator subscription returned is available in the VNFM @@ -101,7 +101,7 @@ Create duplicated VNF indicator subscription with VNFM creating duplicated subsc ... Test title: Create duplicated VNF indicator subscription with VNFM creating duplicated subscriptions ... Test objective: The objective is to test the creation of a duplicated VNF indicator subscription and perform a JSON schema and content validation of the returned duplicated subscription data structure ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports the creation of duplicated subscriptions ... Post-Conditions: The duplicated VNF indicator subscription is successfully set and it matches the issued subscription @@ -116,7 +116,7 @@ PUT VNF Indicator Subscriptions - Method not implemented ... Test title: PUT VNF Indicator Subscriptions - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify VNF indicator subscriptions ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -128,7 +128,7 @@ PATCH VNF Indicator Subscriptions - Method not implemented ... Test title: PATCH VNF Indicator Subscriptions - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update VNF indicator subscriptions ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -140,7 +140,7 @@ DELETE VNF Indicator Subscriptions - Method not implemented ... Test title: DELETE VNF Indicator Subscriptions - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete VNF indicators subscriptions ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -152,7 +152,7 @@ GET All VNF Indicator Subscriptions as Paged Response ... Test title: GET All VNF Indicator Subscriptions as Paged Response ... Test objective: The objective is to test the retrieval of all VNF indicator subscriptions as Paged Response. ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -165,7 +165,7 @@ GET VNF Indicator Subscriptions - Bad Request Response too Big ... Test title: GET VNF Indicator Subscriptions - Bad Request Response too Big ... Test objective: The objective is to test that the retrieval of VNF indicator subscriptions fails because reponse is too big, and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNFM. - ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -178,7 +178,7 @@ POST Create a new Subscription - Unprocessable Content ... Test title: POST Create a new Subscription - Unprocessable Content ... Test objective: The objective is to test that content type of the message content is supported and the message content of a request contains syntactically correct data but the data cannot be processed. ... re-conditions: none - ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -191,7 +191,7 @@ Create new VNF indicator subscription with permitted authorization scope ... Test title: Create new VNF indicator subscription with permitted authorization scope ... Test objective: The objective is to test the creation of a new VNF indicator subscription and perform a JSON schema and content validation of the returned subscription data structure with permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. - ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF indicator subscription is successfully set and it matches the issued subscription @@ -207,7 +207,7 @@ Create new VNF indicator subscription with not permitted authorization scope ... Test title: Create new VNF indicator subscription with not permitted authorization scope ... Test objective: The objective is to test the creation of a new VNF indicator subscription and perform a JSON schema and content validation of the returned subscription data structure with not permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. - ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF indicator subscription is successfully set and it matches the issued subscription diff --git a/SOL003/VNFIndicator-API/VNFIndicators.robot b/SOL003/VNFIndicator-API/VNFIndicators.robot index 923ae38d2bb509b5e7ed552a45f1fd40d2ae68dc..fd83a8d5a996266ce718832a5cc02c72afafbf90 100644 --- a/SOL003/VNFIndicator-API/VNFIndicators.robot +++ b/SOL003/VNFIndicator-API/VNFIndicators.robot @@ -11,7 +11,7 @@ Get all VNF Indicators ... Test title: Get all VNF Indicators ... Test objective: The objective is to test the retrieval of all the available VNF indicators and perform a JSON schema validation of the collected indicators data structure ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -24,7 +24,7 @@ Get VNF Indicators with attribute-based filter ... Test title: Get VNF Indicators with attribute-based filter ... Test objective: The objective is to test the retrieval of VNF indicators using attribute-based filter, perform a JSON schema validation of the collected indicators data structure, and verify that the retrieved information matches the issued attribute-based filters ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ Get VNF Indicators with invalid attribute-based filter ... Test title: Get VNF Indicators with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of VNF indicators fails when using invalid attribute-based filters, and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -51,7 +51,7 @@ Get all VNF Indicators with malformed authorization token ... Test title: Get all VNF Indicators with malformed authorization token ... Test objective: The objective is to test that the retrieval of VNF indicators fails when using malformed authorization token ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM requires the usage of access tokens for authorizing the API requests. ... Post-Conditions: none @@ -63,7 +63,7 @@ Get all VNF Indicators without authorization token ... Test title: Get all VNF Indicators without authorization token ... Test objective: The objective is to test that the retrieval of VNF indicators fails when omitting the authorization token ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNF requires the usage of access tokens for authorizing the API requests. ... Post-Conditions: none @@ -75,7 +75,7 @@ GET all VNF Indicators with expired or revoked authorization token ... Test title: GET all VNF Indicators with expired or revoked authorization token ... Test objective: The objective is to test that the retrieval of VNF indicators fails when using expired or revoked authorization token ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNF requires the usage of access tokens for authorizing the API requests. ... Post-Conditions: none @@ -87,7 +87,7 @@ Get all VNF Indicators with invalid resource endpoint ... Test title: Get all VNF Indicators with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of VNF indicators fails when using invalid resource endpoint ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -99,7 +99,7 @@ POST all VNF Indicators - Method not implemented ... Test title: POST all VNF Indicators - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNF indicators ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM - ... Reference: Clause 8.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -111,7 +111,7 @@ PUT all VNF Indicators - Method not implemented ... Test title: PUT all VNF Indicators - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify VNF indicators ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM - ... Reference: Clause 8.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -123,7 +123,7 @@ PATCH all VNF Indicators - Method not implemented ... Test title: PATCH all VNF Indicators - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update VNF indicators ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNF - ... Reference: Clause 8.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -135,7 +135,7 @@ DELETE all VNF Indicators - Method not implemented ... Test title: DELETE all VNF Indicators - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete VNF indicators ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNF - ... Reference: Clause 8.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF indicators are not deleted by the unsuccessful operation @@ -148,7 +148,7 @@ Get all VNF Indicators as Paged Response ... Test title: Get all VNF Indicators as Paged Response ... Test objective: The objective is to test the retrieval of all the available VNF indicators as Paged Response. ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -161,7 +161,7 @@ Get VNF Indicators - Bad Request Response too Big ... Test title: Get VNF Indicators - Bad Request Response too Big ... Test objective: The objective is to test that the retrieval of VNF indicators fails because reponse is too big, and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -174,7 +174,7 @@ Get all VNF Indicators with permitted authorization scope ... Test title: Get all VNF Indicators with permitted authorization scope ... Test objective: The objective is to test the retrieval of all the available VNF indicators and perform a JSON schema validation of the collected indicators data structure with permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -187,7 +187,7 @@ Get all VNF Indicators with not permitted authorization scope ... Test title: Get all VNF Indicators with not permitted authorization scope ... Test objective: The objective is to test the retrieval of all the available VNF indicators and perform a JSON schema validation of the collected indicators data structure with not permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM. - ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot b/SOL003/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot index 4e12a75d384652678eba71763abaf2bc12dadaa5..165b8e00a3535b9231afaa2b825ad4032a90a85a 100644 --- a/SOL003/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot +++ b/SOL003/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot @@ -11,7 +11,7 @@ Get Indicators for VNF Instance ... Test title: Get Indicators for VNF Instance ... Test objective: The objective is to test the retrieval of all indicators for a given VNF instance and perform a JSON schema validation of the returned indicators data structure ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM for the given VNF instance. - ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ GET Indicators for VNF Instance with attribute-based filter ... Test title: GET Indicators for VNF Instance with attribute-based filter ... Test objective: The objective is to test the retrieval of all indicators for a given VNF instance using attribute-based filter and perform a JSON schema validation of the returned indicators data structure ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM for the given VNF instance. - ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -39,7 +39,7 @@ Get Indicators for VNF Instance with invalid attribute-based filter ... Test title: Get Indicators for VNF Instance with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of all indicators for a given VNF instance fails using invalid attribute-based filter. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM for the given VNF instance. - ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -52,7 +52,7 @@ Get Indicators for VNF Instance with invalid resource identifier ... Test title: Get Indicators for VNF Instance with invalid resource identifier ... Test objective: The objective is to test that the retrieval of all indicators for a given VNF instance fails when using invalid resource identifier. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM for the given VNF instance. - ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -65,7 +65,7 @@ POST Indicators for VNF instance - Method not implemented ... Test title: POST Indicators for VNF instance - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new indicators for a VNF instance ... Pre-conditions: A VNF instance is instantiated. - ... Reference: Clause 8.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -77,7 +77,7 @@ PUT Indicators for VNF instance - Method not implemented ... Test title: PUT Indicators for VNF instance - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify existing indicators for a VNF instance ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM for the given VNF instance. - ... Reference: Clause 8.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -89,7 +89,7 @@ PATCH Indicators for VNF instance - Method not implemented ... Test title: PATCH Indicators for VNF instance - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update existing indicators for a VNF instance ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM for the given VNF instance. - ... Reference: Clause 8.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -101,7 +101,7 @@ DELETE Indicators for VNF instance - Method not implemented ... Test title: DELETE Indicators for VNF instance - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete indicators for a VNF instance ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM for the given VNF instance. - ... Reference: Clause 8.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -113,7 +113,7 @@ Get Indicators for VNF Instance as Paged Response ... Test title: Get Indicators for VNF Instance as Paged Response ... Test objective: The objective is to test the retrieval of all indicators for a given VNF instance as Paged Response. ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM for the given VNF instance. - ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -126,7 +126,7 @@ Get Indicators for VNF Instance - Bad Request Response too Big ... Test title: Get Indicators for VNF Instance - Bad Request Response too Big ... Test objective: The objective is to test that the retrieval of all indicators for a given VNF instance fails because response is too big. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF indicators are available in the VNFM for the given VNF instance. - ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/ApiVersion.robot b/SOL003/VNFLifecycleManagement-API/ApiVersion.robot index 29960a0760e4be95e9db141cac37ac28c0925e6e..6d618b0cd0ca68a77f3859ff59cace1a8656df77 100644 --- a/SOL003/VNFLifecycleManagement-API/ApiVersion.robot +++ b/SOL003/VNFLifecycleManagement-API/ApiVersion.robot @@ -11,7 +11,7 @@ POST API Version - Method not implemented ... Test title: POST API version - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -23,7 +23,7 @@ GET API Version ... Test title: GET API Version ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -36,7 +36,7 @@ PUT API Version - Method not implemented ... Test title: PUT API Version - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -48,7 +48,7 @@ PATCH API Version - Method not implemented ... Test title: PATCH API Version - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -60,7 +60,7 @@ DELETE API Version - Method not implemented ... Test title: DELETE API Version - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -72,7 +72,7 @@ POST API Version with apiMajorVerion - Method not implemented ... Test title: POST API version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -84,7 +84,7 @@ GET API Version with apiMajorVerion ... Test title: GET API Version with apiMajorVerion ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -97,7 +97,7 @@ PUT API Version with apiMajorVerion - Method not implemented ... Test title: PUT API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -109,7 +109,7 @@ PATCH API Version with apiMajorVerion - Method not implemented ... Test title: PATCH API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -121,7 +121,7 @@ DELETE API Version with apiMajorVerion - Method not implemented ... Test title: DELETE API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot b/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot index 1273ffc32b717da2a57c61ff369ecf0afcf0d9bf..6dfca26375f834c3e6a5204e7e47c1feca87e69b 100644 --- a/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot +++ b/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot @@ -12,7 +12,7 @@ POST Cancel operation task ... 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 "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. ... Pre-conditions: The "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. - ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF instance status equal to FAILED_TEMP @@ -25,7 +25,7 @@ POST Cancel operation task Conflict ... Test title: POST Cancel operation task Conflict ... 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: The "VNF LCM operation occurrence" is not in STARTING, PROCESSING or ROLLING_BACK state - ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ POST Cancel operation task Not Found ... Test title: POST Cancel operation task Not Found ... Test objective: The objective is to test that POST method cannot cancel a VNF lifecycle operation because the resource is not found ... Pre-conditions: none - ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -51,7 +51,7 @@ GET Cancel operation task - Method not implemented ... 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: Clause 5.4.17.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -63,7 +63,7 @@ PUT Cancel operation task - Method not implemented ... 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: Clause 5.4.17.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -75,7 +75,7 @@ PATCH Cancel operation task - Method not implemented ... 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: Clause 5.4.17.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -87,7 +87,7 @@ DELETE Cancel operation task - Method not implemented ... 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: Clause 5.4.17.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -99,7 +99,7 @@ POST Cancel operation task with permitted authorization scope ... Test title: POST Cancel operation task with permitted authorization scope ... Test objective: The POST method initiates cancelling an ongoing VNF lifecycle operation while it is being executed or rolled back, i.e. the "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. ... Pre-conditions: The "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state with permitted authorization scope. - ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF instance status equal to FAILED_TEMP @@ -112,7 +112,7 @@ POST Cancel operation task with not permitted authorization scope ... Test title: POST Cancel operation task with not permitted authorization scope ... Test objective: The POST method initiates cancelling an ongoing VNF lifecycle operation while it is being executed or rolled back, i.e. the "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. ... Pre-conditions: The "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state with not permitted authorization scope. - ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF instance status equal to FAILED_TEMP @@ -124,7 +124,7 @@ Cancel operation task - Unauthorized ... Test title: Post Cancel operation task - Unauthorized ... Test objective: The objective is to cancel operation task without authorization ... Pre-conditions: The "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state - ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -137,7 +137,7 @@ Post Cancel operation task - STARTING ... Test title: POST Cancel operation task ... Test objective: The POST method initiates cancelling an ongoing VNF lifecycle operation while it is being executed, i.e. the "VNF LCM operation occurrence" is in "STARTING" state. ... Pre-conditions: The "VNF LCM operation occurrence" is in "STARTING" state. - ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: the resource is in FAILED_TEMP state diff --git a/SOL003/VNFLifecycleManagement-API/CancelOperationWorkflow.robot b/SOL003/VNFLifecycleManagement-API/CancelOperationWorkflow.robot index a3caaa050d3b5911c32ab2766d26735652d0f575..8154fbb34483ce8c8f612c96809a0c7e8bdd6fd7 100644 --- a/SOL003/VNFLifecycleManagement-API/CancelOperationWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/CancelOperationWorkflow.robot @@ -18,7 +18,7 @@ Cancel a VNF LCM Operation - STARTING ... Test title: Cancel a VNF LCM Operation - STARTING ... Test objective: The objective is to test the workflow for Cancelling a VNF LCM Operation being in the STARTING state ... Pre-conditions: The VNF lifecycle management operation occurrence is in STARTING state. NFVO is subscribed to VNF LCM Operation Occurrence notifications (Test ID 5.4.20.1) - ... Reference: Clause 5.4.17 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.17 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: The VNF lifecycle management operation occurrence is in ROLLED_BACK state @@ -34,7 +34,7 @@ Cancel a VNF LCM Operation - PROCESSING - ROLLING_BACK ... Test title: Cancel a VNF LCM Operation - PROCESSING - ROLLING_BACK ... Test objective: The objective is to test the workflow for Cancelling a VNF LCM Operation being either in the PROCESSIONG or ROLLING_BACK state ... Pre-conditions: The VNF lifecycle management operation occurrence is in PROCESSING or ROLLING_BACK state. NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.3.10 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.3.10 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: The VNF lifecycle management operation occurrence is in FAILED_TEMP state diff --git a/SOL003/VNFLifecycleManagement-API/ChangeCurrentVNFPackageTask.robot b/SOL003/VNFLifecycleManagement-API/ChangeCurrentVNFPackageTask.robot index 2ac68b2068193297645ca4cbae7d6a4d49edb934..0e6d6ec1544fb3927a94a44a276dc5415b06d800 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeCurrentVNFPackageTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeCurrentVNFPackageTask.robot @@ -13,7 +13,7 @@ POST Change current VNF Package Task ... Test title: POST Change current VNF Package Task ... Test objective: The objective is to test that the POST method changes the current VNF package on which the VNF instance is based. ... Pre-conditions: none - ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -28,7 +28,7 @@ POST Change current VNF Package Task - Conflict ... Test title: POST Change current VNF Package Task - Conflict ... Test objective: The objective is to test that the POST method cannot change the current VNF package task when another lifecycle management operation is ongoing. ... Pre-conditions: none - ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: There is another lifecycle management operation ongoing. ... Post-Conditions: none @@ -41,7 +41,7 @@ GET Change current VNF Package Task - Method not implemented ... Test title: GET Change current VNF Package Task - Method not implemented ... Test objective: The objective is to test that GET method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.11a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -53,7 +53,7 @@ PUT Change current VNF Package Task - Method not implemented ... Test title: PUT Change current VNF Package Task - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.11a.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11a.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -65,7 +65,7 @@ PATCH Change current VNF Package Task - Method not implemented ... Test title: PATCH Change current VNF Package Task - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.11a.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11a.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -77,7 +77,7 @@ DELETE Change current VNF Package Task - Method not implemented ... Test title: DELETE Change current VNF Package Task - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.11a.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11a.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -89,7 +89,7 @@ POST Change current VNF Package Task with permitted authorization scope ... Test title: POST Change current VNF Package Task with permitted authorization scope ... Test objective: The objective is to test that the POST method changes the current VNF package on which the VNF instance is based with permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -105,7 +105,7 @@ POST Change current VNF Package Task with not permitted authorization scope ... Test title: POST Change current VNF Package Task with not permitted authorization scope ... Test objective: The objective is to test that the POST method changes the current VNF package on which the VNF instance is based with not permitted authorization scope with not permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -118,7 +118,7 @@ POST Change current VNF Package Task - VNF instance not found ... Test title: POST Change current VNF Package Task - VNF instance not found ... Test objective: The objective is to test that POST method can not trigger a Change current VNF Package Task due to VNF instance not found ... Pre-conditions: none - ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -131,7 +131,7 @@ POST Change current VNF Package Task - Unauthorized ... Test title: POST Change current VNF Package Task - Unauthorized ... Test objective: The objective is to test that POST method cannot trigger a Change current VNF Package Task without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11a.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/ChangeCurrentVNFPackageWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ChangeCurrentVNFPackageWorkflow.robot new file mode 100644 index 0000000000000000000000000000000000000000..18a5909dfe00a68f878280faebe7363de62dc2b2 --- /dev/null +++ b/SOL003/VNFLifecycleManagement-API/ChangeCurrentVNFPackageWorkflow.robot @@ -0,0 +1,64 @@ +*** Settings *** +Resource VnfLcmMntOperationKeywords.robot +Resource SubscriptionKeywords.robot +Resource environment/variables.txt +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false +Library OperatingSystem +Library JSONLibrary +Library JSONSchemaLibrary schemas/ +Suite Setup Check resource existence + +*** Test Cases *** +Change current VNF Package workflow + [Documentation] Test ID: 7.3.1.43.1 + ... Test title: Change current VNF Package workflow + ... Test objective: The objective is to test the workflow for the change of current VNF Package. + ... Pre-conditions: VNF instance in INSTANTIATED state. NFVO is subscribed to VNF LCM Operation Occurrence notifications + ... Reference: Clause 5.4.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: VNF instance still in INSTANTIATED state + Send Change Current VNF Package Request + Check HTTP Response Status Code Is 202 + Check HTTP Response Header Contains Location + Check Operation Occurrence Id existence + Check Operation Notification For Change Current VNF Package STARTING + Check Operation Notification For Change Current VNF Package PROCESSING + Check Operation Notification For Change Current VNF Package COMPLETED + Check Postcondition VNF Status INSTANTIATED + +*** Keywords *** +Check Operation Notification For Change Current VNF Package + [Arguments] ${status} + Run Keyword If ${SKIP_INTERMEDIATE_NOTIFICATION_CHECKS} == 0 or (${SKIP_INTERMEDIATE_NOTIFICATION_CHECKS} == 1 and '${status}' == 'COMPLETED') Check Operation Notification VnfLcmOperationOccurrenceNotification ${status} + +Check Postcondition VNF Status + [Arguments] ${status} + Log Retrieve VNF Instance + Check VNF Instance ${vnfInstanceId} + Should Not Be Empty ${response} + Check HTTP Response Status Code Is 200 + Should Be Equal ${response['body']['id']} ${vnfInstanceId} + Check HTTP Response Header Contains Content-Type + Check HTTP Response Body Json Schema Is vnfInstance.schema.json + Check VNF Status ${response['body']['instantiationState']} ${status} + +Check resource existence + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + Get ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances/${vnfInstanceId} + Integer response status 200 + +Send Change Current VNF Package Request + Log Trying to change current VNF package task. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + ${template}= Get File jsons/changeCurrentVnfPkgRequest.json + ${body}= Format String ${template} vnfdId=${vnfdId} + Post ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances/${vnfInstanceId}/change_vnfpkg ${body} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot b/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot index 0bd3089de8a6dd82893988a8ebc329c834f46991..25db4f8baa9e61d5d4ff9b4c7b678473485f6d9a 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot @@ -12,7 +12,7 @@ POST Change external VNF connectivity ... 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: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -26,7 +26,7 @@ GET Change external VNF connectivity - Method not implemented ... 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: Clause 5.4.11.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ PUT Change external VNF connectivity - Method not implemented ... 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: Clause 5.4.11.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -50,7 +50,7 @@ PATCH Change external VNF connectivity - Method not implemented ... 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: Clause 5.4.11.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -62,7 +62,7 @@ DELETE Change external VNF connectivity - Method not implemented ... 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: Clause 5.4.11.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -74,7 +74,7 @@ POST Change external VNF connectivity with permitted authorization scope ... Test title: POST Change external VNF connectivity with permitted authorization scope ... Test objective: The objective is to test that POST method trigger a change in VNF external connectivity with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -88,7 +88,7 @@ POST Change external VNF connectivity with not permitted authorization scope ... Test title: POST Change external VNF connectivity with not permitted authorization scope ... Test objective: The objective is to test that POST method trigger a change in VNF external connectivity with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -99,7 +99,7 @@ POST Change external VNF connectivity - Conflict ... Test title: POST Change external VNF connectivity - Conflict ... Test objective: The objective is to test that POST method can not trigger a change in VNF external connectivity due to conflict ... Pre-conditions: none - ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -112,7 +112,7 @@ POST Change external VNF connectivity - VNF instance not found ... Test title: POST Change external VNF connectivity - VNF instance not found ... Test objective: The objective is to test that POST method can not trigger a change in VNF external connectivity due to VNF instance not found ... Pre-conditions: none - ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -125,7 +125,7 @@ POST Change external VNF connectivity - Unauthorized ... Test title: POST Change external VNF connectivity - Unauthorized ... Test objective: The objective is to test that POST method cannot trigger a change in VNF external connectivity without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -138,7 +138,7 @@ POST Change external VNF connectivity - using extCpsDeletion ... Test title: POST Change external VNF connectivity ... Test objective: The objective is to test that POST method trigger a change in VNF external connectivity using extCpsDeletion ... Pre-conditions: none - ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null diff --git a/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityWorkflow.robot index 30ae07afc5bba34d5f8a9120c56de233dbba36f7..f0adae562a1bf9441435274004b1f2a46daed1c7 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityWorkflow.robot @@ -17,7 +17,7 @@ Change external connectivity of VNF Workflow ... Test title: Change external connectivity of VNF Workflow ... Test objective: The objective is to change the external connectivity of a VNF instance. ... Pre-conditions: VNF instance in INSTANTIATED state - ... Reference: Clause 5.4.11 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.11 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM. The VNFD supports the external connectivity change ... Post-Conditions: VNF instance still in INSTANTIATED state and external connectivity of the VNF is changed diff --git a/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot b/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot index 2ceaf02185d9a23ef6896aa7801aa800651cd3df..46d053f2827b5ebdeaf1dbe07e953d605a429c6e 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot @@ -12,7 +12,7 @@ POST Change deployment flavour of a vnfInstance ... 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: VNF instance resource is not in NOT-INSTANTIATED state - ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -26,7 +26,7 @@ POST Change deployment flavour of a vnfInstance Conflict (Not-Instantiated) ... Test title: POST Change deployment flavour of a vnfInstance Conflict (Not-Instantiated) ... Test objective: The objective is to test that POST method cannot trigger a change in VNF deployment flavour because of a conflict with the state of the VNF instance resource. (VNF instance resource is not in NOT-INSTANTIATED state) ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state - ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -39,7 +39,7 @@ POST Change deployment flavour of a vnfInstance Not Found ... Test title: POST Change deployment flavour of a vnfInstance Not Found ... Test objective: The objective is to test that POST method cannot trigger a change in VNF deployment flavour because the VNF instance resource is not found. ... Pre-conditions: the VNF instance resource is not existing - ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -52,7 +52,7 @@ GET Change deployment flavour VNFInstance - Method not implemented ... Test title: GET Change deployment flavour VNFInstance - Method not implemented ... Test objective: The objective is to test that GET method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ PUT Change deployment flavour VNFInstance - Method not implemented ... Test title: PUT Change deployment flavour VNFInstance - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.7.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -76,7 +76,7 @@ PATCH Change deployment flavour VNFInstance - Method not implemented ... Test title: PATCH Change deployment flavour VNFInstance - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.7.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -88,7 +88,7 @@ DELETE Change deployment flavour VNFInstance - Method not implemented ... Test title: DELETE Change deployment flavour VNFInstance - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.7.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -100,7 +100,7 @@ POST Change deployment flavour of a vnfInstance with permitted authorization sco ... Test title: POST Change deployment flavour of a vnfInstance with permitted authorization scope ... Test objective: The objective is to test that POST method trigger a change in VNF deployment flavour with permitted authorization scope ... Pre-conditions: VNF instance resource is not in NOT-INSTANTIATED state - ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -114,7 +114,7 @@ POST Change deployment flavour of a vnfInstance with not permitted authorization ... Test title: POST Change deployment flavour of a vnfInstance with not permitted authorization scope ... Test objective: The objective is to test that POST method trigger a change in VNF deployment flavour with not permitted authorization scope ... Pre-conditions: VNF instance resource is not in NOT-INSTANTIATED state - ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -128,7 +128,7 @@ POST Change deployment flavour of a vnfInstance - Unauthorized ... Test objective: The objective is to test that POST method trigger a change in VNF deployment flavour without authorization ... Pre-conditions: none ... Pre-conditions: none - ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourWorkflow.robot index eaa96d9afdef8c22f6e700759edca0f3d5007206..1d0c19a19ca0e290d630f6d2254569f9bf7853cc 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourWorkflow.robot @@ -17,7 +17,7 @@ Change VNF Flavour Workflow ... Test title: Change VNF Flavour Workflow ... Test objective: The objective is to test the workflow for a change flavour of an existing VNF instance ... Pre-conditions: VNF instance in INSTANTIATED state . NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.4.7 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.7 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: Multiple flavours are supported for the VNF (as capability in the VNFD). NFVO is able to receive notifications from VNFM ... Post-Conditions: VNF instance still in INSTANTIATED state and the flavour is changed diff --git a/SOL003/VNFLifecycleManagement-API/CreateVNFSnapshotTask.robot b/SOL003/VNFLifecycleManagement-API/CreateVNFSnapshotTask.robot index 9546c484b424a098bc68905c09c645a05f91c066..86979171af8cb25bd616e1f5e656f54613cbec6e 100644 --- a/SOL003/VNFLifecycleManagement-API/CreateVNFSnapshotTask.robot +++ b/SOL003/VNFLifecycleManagement-API/CreateVNFSnapshotTask.robot @@ -13,7 +13,7 @@ POST Create VNF Snapshot Task ... Test title: POST Create VNF Snapshot Task ... Test objective: The objective is to test that POST method requests taking a snapshot of a VNF instance. ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -27,7 +27,7 @@ POST Create VNF Snapshot Task - NOT FOUND ... Test title: POST Create VNF Snapshot Task - NOT FOUND ... Test objective: The objective is to test that the POST method cannot request for a snapshot if the task is not supported for the VNF instance represented by the parent resource. ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: Task is not supported for the VNF instance represented by the parent resource. ... Post-Conditions: none @@ -40,7 +40,7 @@ POST Create VNF Snapshot Task - CONFLICT ... Test title: POST Create VNF Snapshot Task - CONFLICT ... Test objective: The objective is to test that the POST method cannot request for a snapshot when the VNF instance is in NOT_INSTANTIATED state. ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: VNF instance is in NOT_INSTANTIATED state. ... Post-Conditions: none @@ -53,7 +53,7 @@ POST Create VNF Snapshot Task - Unprocessable Content ... Test title: POST Create VNF Snapshot Task - Unprocessable Content ... Test objective: The objective is to test that the POST method cannot request for a snapshot when the provided identifier of the target "Individual VNF snapshot" resource for the VNF snapshot is invalid. ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The identifier of the target "Individual VNF snapshot" resource for the VNF snapshot is invalid. ... Post-Conditions: none @@ -66,7 +66,7 @@ GET Create VNF Snapshot Task - Method not implemented ... Test title: GET Create VNF Snapshot Task - Method not implemented ... Test objective: The objective is to test that GET method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -78,7 +78,7 @@ PUT Create VNF Snapshot Task - Method not implemented ... Test title: PUT Create VNF Snapshot Task - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -90,7 +90,7 @@ PATCH Create VNF Snapshot Task - Method not implemented ... Test title: PATCH Create VNF Snapshot Task - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -102,7 +102,7 @@ DELETE Create VNF Snapshot Task - Method not implemented ... Test title: DELETE Create VNF Snapshot Task - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -114,7 +114,7 @@ POST Create VNF Snapshot Task with permitted authorization scope ... Test title: POST Create VNF Snapshot Task with permitted authorization scope ... Test objective: The objective is to test that POST method requests taking a snapshot of a VNF instance with permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -128,7 +128,7 @@ POST Create VNF Snapshot Task with not permitted authorization scope ... Test title: POST Create VNF Snapshot Task with not permitted authorization scope ... Test objective: The objective is to test that POST method requests taking a snapshot of a VNF instance with not permitted authorization scope with not permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -140,7 +140,7 @@ POST Create VNF Snapshot Task - Unauthorized ... Test title: POST Create VNF Snapshot Task - Unauthorized ... Test objective: The objective is to test that POST method requests taking a snapshot of a VNF instance without authorization. ... Pre-conditions: none - ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.21.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/CreateVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/CreateVNFWorkflow.robot index e756a12ab6c6c0ac8ad5615a681cf3cac3c734a4..b73bf94d2eaf68d6c5f336bc456b13f04f40926c 100644 --- a/SOL003/VNFLifecycleManagement-API/CreateVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/CreateVNFWorkflow.robot @@ -17,7 +17,7 @@ Create VNF Instance Resource ... Test title: Create VNF Instance workflow ... Test objective: The objective is to test the workflow for the creation of a new VNF instance resource. ... Pre-conditions: NFVO is subscribed to VNF Identifier Creation notifications - ... Reference: Clause 5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: The VNF instance resource has been created in "NOT_INSTANTIATED" state. diff --git a/SOL003/VNFLifecycleManagement-API/DeleteVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/DeleteVNFWorkflow.robot index cbf2e7c9874e9eda818f9e62545b2cd1be6400ad..385f74b911a9541f00b0329913318425e050a0a4 100644 --- a/SOL003/VNFLifecycleManagement-API/DeleteVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/DeleteVNFWorkflow.robot @@ -17,7 +17,7 @@ Delete VNF Instance Resource ... Test title: Delete VNF Instance workflow ... Test objective: The objective is to test the workflow for the deleteion of an existing VNF instance resource ... Pre-conditions: The VNF Instance resource is in NOT_INSTANTIATED state. NFVO is subscribed to VNF Identifier Creation notifications - ... Reference: Clause 5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: The VNF instance resource is deleted on the VNFM. diff --git a/SOL003/VNFLifecycleManagement-API/FailOperationTask.robot b/SOL003/VNFLifecycleManagement-API/FailOperationTask.robot index 9d30c1d532ede5cc0ebdbca8b736fa78293b4af3..e48090db9152ce49891a31c2ece2d1e722bd727a 100644 --- a/SOL003/VNFLifecycleManagement-API/FailOperationTask.robot +++ b/SOL003/VNFLifecycleManagement-API/FailOperationTask.robot @@ -12,13 +12,12 @@ POST Fail operation task ... Test title: POST Fail operation task ... Test objective: The objective is to test that POST method mark as "finally failed" a VNF lifecycle operation ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF resource state is FINALLY_FAILED Post Fail operation Check HTTP Response Status Code Is 202 - Check HTTP Response Header Contains Location Check operation resource state is FINALLY_FAILED Post Fail operation task Conflict (Not-FAILED_TEMP) @@ -26,7 +25,7 @@ Post Fail operation task Conflict (Not-FAILED_TEMP) ... Test title: Post Fail operation task Conflict (Not-FAILED_TEMP) ... Test objective: The objective is to test that POST method cannot mark as "finally failed" a VNF lifecycle operation ... Pre-conditions: the "VNF LCM operation occurrence" resource is not in "FAILED_TEMP" state. - ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -39,7 +38,7 @@ Post Fail operation task Not Found ... Test title: Post Fail operation task Not Found ... Test objective: The objective is to test that POST method cannot mark as "finally failed" a VNF lifecycle operation because the operation is not supported ... Pre-conditions: none - ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -52,7 +51,7 @@ GET Fail operation task - Method not implemented ... Test title: GET Fail operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.16.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -64,7 +63,7 @@ PUT Fail operation task - Method not implemented ... Test title: PUT Fail operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.16.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -76,7 +75,7 @@ PATCH Fail operation task - Method not implemented ... Test title: PATCH Fail operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.16.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -88,7 +87,7 @@ DELETE Fail operation task - Method not implemented ... Test title: DELETE Fail operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.16.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -100,13 +99,12 @@ POST Fail operation task with permitted authorization scope ... Test title: POST Fail operation task with permitted authorization scope ... Test objective: The objective is to test that POST method mark as "finally failed" a VNF lifecycle operation with permitted authorization scope ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF resource state is FINALLY_FAILED Post Fail operation with permitted authorization scope Check HTTP Response Status Code Is 202 - Check HTTP Response Header Contains Location Check operation resource state is FINALLY_FAILED POST Fail operation task with not permitted authorization scope @@ -114,7 +112,7 @@ POST Fail operation task with not permitted authorization scope ... Test title: POST Fail operation task with not permitted authorization scope ... Test objective: The objective is to test that POST method mark as "finally failed" a VNF lifecycle operation with not permitted authorization scope ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF resource state is FINALLY_FAILED @@ -127,7 +125,7 @@ POST Fail operation task - Unauthorized ... Test title: POST Fail operation task - Unauthorized ... Test objective: The objective is to test that POST method cannot mark as "finally failed" a VNF lifecycle operation because the operation is unauthorized ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/FailOperationWorkflow.robot b/SOL003/VNFLifecycleManagement-API/FailOperationWorkflow.robot index d3ddd5c7fadeb752101ded2fa94957b0031eb9da..c4704266fa11435d411bf105395f0b94f85cb490 100644 --- a/SOL003/VNFLifecycleManagement-API/FailOperationWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/FailOperationWorkflow.robot @@ -17,7 +17,7 @@ Fail a VNF LCM Operation Workflow ... Test title: Fail a VNF LCM Operation Workflow ... Test objective: The objective is to test the workflow for a Fail VNF LCM Operation ... Pre-conditions: The VNF lifecycle management operation occurrence is in FAILED_TEMP state. NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.4.16 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.16 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: The VNF lifecycle management operation occurrence is in FAILED state diff --git a/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot b/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot index 030014dc0458a40a42b60a4363e4a9bba5a68743..04b9cdb5ba108750516099b204d3f01e057312f1 100644 --- a/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot @@ -12,7 +12,7 @@ POST Heal a vnfInstance ... Test title: POST Heal a vnfInstance ... Test objective: The objective is to test that POST method heal a VNF instance ... Pre-conditions: the VNF instance resource is not in NOT-INSTANTIATED state - ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -26,7 +26,7 @@ POST Heal a vnfInstance Conflict (Not-Instantiated) ... Test title: POST Heal a vnfInstance Conflict (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: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -39,7 +39,7 @@ POST Heal a vnfInstance Not Found ... Test title: POST Heal a vnfInstance Not Found ... 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: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -52,7 +52,7 @@ GET Heal VNFInstance - Method not implemented ... 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: Clause 5.4.9.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ PUT Heal VNFInstance - Method not implemented ... 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: Clause 5.4.9.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -76,7 +76,7 @@ PATCH Heal VNFInstance - Method not implemented ... 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: Clause 5.4.9.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -88,7 +88,7 @@ DELETE Heal VNFInstance - Method not implemented ... 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: Clause 5.4.9.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -100,7 +100,7 @@ POST Heal a vnfInstance with permitted authorization scope ... Test title: POST Heal a vnfInstance with permitted authorization scope ... Test objective: The objective is to test that POST method heal a VNF instance with permitted authorization scope ... Pre-conditions: the VNF instance resource is not in NOT-INSTANTIATED state - ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -114,7 +114,7 @@ POST Heal a vnfInstance with not permitted authorization scope ... Test title: POST Heal a vnfInstance with not permitted authorization scope ... Test objective: The objective is to test that POST method heal a VNF instance with not permitted authorization scope ... Pre-conditions: the VNF instance resource is not in NOT-INSTANTIATED state - ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -126,7 +126,7 @@ POST Heal a vnfInstance - Unauthorized ... Test title: POST Heal a vnfInstance - Unauthorized ... Test objective: The objective is to test that POST method cannot trigger heal without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/HealVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/HealVNFWorkflow.robot index 8af68013992f1380c194607792e42db3a918d572..0e17d270e51df15377df1fe44cbd8bd547d561f4 100644 --- a/SOL003/VNFLifecycleManagement-API/HealVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/HealVNFWorkflow.robot @@ -17,7 +17,7 @@ Heal a VNF Instance ... Test title: Heal a VNF Instance ... Test objective: The objective is to heal a VNF instance. ... Pre-conditions: VNF instance in INSTANTIATED state - ... Reference: Clause 5.4.9 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.9 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM. Heal a VNF instance is supported for the VNF (as capability in the VNFD) ... Post-Conditions: VNF instance still in INSTANTIATED state diff --git a/SOL003/VNFLifecycleManagement-API/IndividualSubscription.robot b/SOL003/VNFLifecycleManagement-API/IndividualSubscription.robot index 1cb4f54720d16f0f5fd30a081b764990f1479193..65c27b5b1d05f26b8700477c3b24074c09eb0aaa 100644 --- a/SOL003/VNFLifecycleManagement-API/IndividualSubscription.robot +++ b/SOL003/VNFLifecycleManagement-API/IndividualSubscription.robot @@ -11,7 +11,7 @@ POST Individual Subscription - Method not implemented ... Test title: POST Individual Subscription - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.19.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.19.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -23,7 +23,7 @@ GET Individual Subscription ... Test title: GET Individual Subscription ... Test objective: The objective is to test the Get individual subscription ... Pre-conditions: none - ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -36,7 +36,7 @@ PUT an individual subscription - Method not implemented ... Test title: PUT an individual subscription - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.19.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.19.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -48,7 +48,7 @@ PATCH an individual subscription - Method not implemented ... Test title: PATCH an individual subscription - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.19.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.19.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -58,21 +58,20 @@ PATCH an individual subscription - Method not implemented DELETE an individual subscription [Documentation] Test ID: 7.3.1.18.5 ... Test title: DELETE an individual subscription - ... Test objective: The objective is to test that the method is not implemented + ... Test objective: The objective is to test the deletion of individual subscription ... Pre-conditions: none - ... Reference: Clause 5.4.19.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.19.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: subscription deleted from VNFM Delete Individual subscription - Check HTTP Response Status Code Is 405 - + Check HTTP Response Status Code Is 204 GET Individual Subscription - Not Found [Documentation] Test ID: 7.3.1.18.6 ... Test title: GET Individual Subscription - Not Found ... Test objective: The objective is to test the retrieval of individual subscription fails when subscription is not present ... Pre-conditions: none - ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -85,7 +84,7 @@ GET Individual Subscription with permitted authorization scope ... Test title: GET Individual Subscription with permitted authorization scope ... Test objective: The objective is to test the Get individual subscription with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -98,7 +97,7 @@ GET Individual Subscription with not permitted authorization scope ... Test title: GET Individual Subscription with not permitted authorization scope ... Test objective: The objective is to test the Get individual subscription with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -111,10 +110,34 @@ GET Individual Subscription - Unauthorized ... Test title: GET Individual Subscription - Unauthorized ... Test objective: The objective is to test the retrieval of individual subscription without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Get Individual Subscription - Unauthorized Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +DELETE an individual subscription - Unauthorized + [Documentation] Test ID: 7.3.1.18.10 + ... Test title: DELETE an individual subscription + ... Test objective: The objective is to test that the method fails called without authorization + ... Pre-conditions: none + ... Reference: Clause 5.4.19.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: subscription deleted from VNFM + Delete Individual subscription - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +DELETE an individual subscription - Not Found + [Documentation] Test ID: 7.3.1.18.11 + ... Test title: DELETE an individual subscription that is not found + ... Test objective: The objective is to test that the method fails when subscription is not found + ... Pre-conditions: none + ... Reference: Clause 5.4.19.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: subscription deleted from VNFM + Delete Individual subscription - Not Found + Check HTTP Response Status Code Is 404 Check HTTP Response Body Json Schema Is ProblemDetails \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot b/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot index b569bc4dcde77d199d06f8a05103413e0c10fce1..74e5b4406c039ed5ee0c13649da5f18d75645715 100644 --- a/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot +++ b/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot @@ -16,7 +16,7 @@ Post Individual VNFInstance - Method not implemented ... 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: Clause 5.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -28,7 +28,7 @@ Get Information about an individual VNF Instance ... 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: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -43,7 +43,7 @@ PUT Individual VNFInstance - Method not implemented ... 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: Clause 5.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -55,7 +55,7 @@ PATCH Individual VNFInstance ... Test title: PATCH Individual VNFInstance ... Test objective: This method modifies an individual VNF instance resource ... Pre-conditions: an existing VNF instance resource - ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNFInstance modified @@ -69,7 +69,7 @@ PATCH Individual VNFInstance Precondition failed ... Test title: PATCH Individual VNFInstance Precondition failed ... Test objective: The objective is to test that modification of a VNF instance resource fails when a precondition given in an HTTP request header is not fulfilled due to an ETag mismatch ... Pre-conditions: an existing VNF instance resource - ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -82,7 +82,7 @@ PATCH Individual VNFInstance Conflict ... Test title: PATCH Individual VNFInstance Conflict ... Test objective: The objective is to test the conflict while modifying a VNF instance resource ... Pre-conditions: another LCM operation is ongoing - ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNFInstance not modified @@ -95,7 +95,7 @@ DELETE Individual VNFInstance ... Test title: DELETE Individual VNFInstance ... Test objective: The objective is to delete a VNF instance ... Pre-conditions: the VNF instance resource is existing - ... Reference: Clause 5.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNFInstance deleted @@ -107,7 +107,7 @@ DELETE Individual VNFInstance Conflict ... Test title: DELETE Individual VNFInstance Conflict ... Test objective: The objective is to verify that the deletion 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: Clause 5.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: Resources are not deleted @@ -121,7 +121,7 @@ Get Information about an individual VNF Instance - Not Found ... Test title: Get Information about an individual VNF Instance - Not Found ... Test objective: The objective is to test that the retrieval of an individual VNF Instance fails when instance is not present. ... Pre-conditions: none - ... Reference: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -134,7 +134,7 @@ Get Information about an individual VNF Instance with permitted authorization sc ... Test title: Get Information about an individual VNF Instance with permitted authorization scope ... Test objective: The objective is to create a new VNF instance resource with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -149,7 +149,7 @@ Get Information about an individual VNF Instance with not permitted authorizatio ... Test title: Get Information about an individual VNF Instance with not permitted authorization scope ... Test objective: The objective is to create a new VNF instance resource with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -162,14 +162,62 @@ Get Information about an individual VNF Instance - Unauthorized ... Test title: Get Information about an individual VNF Instance - Unauthorized ... Test objective: The objective is to Get Information about an individual VNF Instance without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none GET individual vnfInstance - Unauthorized Check HTTP Response Status Code Is 401 Check HTTP Response Body Json Schema Is ProblemDetails - + +PATCH Individual VNFInstance - Unauthorized + [Documentation] Test ID: 7.3.1.2.13 + ... Test title: PATCH Individual VNFInstance - Unauthorized + ... Test objective: The objective is to test that modification of a VNF instance resource fails without authorization + ... Pre-conditions: an existing VNF instance resource + ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH individual vnfInstance - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +PATCH Individual VNFInstance - Not Found + [Documentation] Test ID: 7.3.1.2.14 + ... Test title: PATCH Individual VNFInstance - Not Found + ... Test objective: The objective is to test that modification of a VNF instance resource fails when instance is not present + ... Pre-conditions: none + ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH individual vnfInstance - Not Found + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails +DELETE Individual VNFInstance - Unauthorized + [Documentation] Test ID: 7.3.1.2.15 + ... Test title: DELETE Individual VNFInstance - Unauthorized + ... Test objective: The objective is to test that deletion of a VNF instance resource fails without authorization + ... Pre-conditions: an existing VNF instance resource + ... Reference: Clause 5.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: VNFInstance deleted + DELETE individual vnfInstance - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +DELETE Individual VNFInstance - Not Found + [Documentation] Test ID: 7.3.1.2.16 + ... Test title: DELETE Individual VNFInstance - Not Found + ... Test objective: The objective is to test that deletion of a VNF instance resource fails when instance is not present + ... Pre-conditions: none + ... Reference: Clause 5.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE individual vnfInstance - Not Found + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails *** Keywords *** Check resource existence Set Headers {"Accept":"${ACCEPT}"} diff --git a/SOL003/VNFLifecycleManagement-API/IndividualVNFSnapshot.robot b/SOL003/VNFLifecycleManagement-API/IndividualVNFSnapshot.robot index 3ad70c53948d0864a4bdec86c969aeccf8923c0c..2fbd58741fd7914249f953b1c206ff1bb3d7a3b9 100644 --- a/SOL003/VNFLifecycleManagement-API/IndividualVNFSnapshot.robot +++ b/SOL003/VNFLifecycleManagement-API/IndividualVNFSnapshot.robot @@ -7,7 +7,7 @@ POST Individual VNF Snapshot - Method not implemented ... Test title: POST Individual VNF Snapshot - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.24.4.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.4.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -19,7 +19,7 @@ GET Information about an individual VNF Snapshot - SUCCESSFUL ... Test title: GET Information about an individual VNF Snapshot - SUCCESSFUL ... Test objective: The objective is to GET information about an individual VNF Snapshot ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -33,7 +33,7 @@ GET Information about an individual VNF Snapshot - NOT FOUND ... Test title: GET Information about an individual VNF Snapshot - NOT FOUND ... Test objective: The objective is to test that the retrieval of individual VNF Snapshot fails when using an invalid resource identifier. ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -46,7 +46,7 @@ PUT Individual VNF Snapshot - Method not implemented ... Test title: PUT Individual VNF Snapshot - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF Snapshot not modified @@ -58,7 +58,7 @@ PATCH Individual VNF Snapshot - Success ... Test title: PATCH Individual VNF Snapshot - Success ... Test objective: The objective is to test that PATCH method successfully modifies an individual VNF Snapshot resource ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF Snapshot modified @@ -69,10 +69,10 @@ PATCH Individual VNF Snapshot - Success PATCH Individual VNF Snapshot - Conflict [Documentation] Test ID: 7.3.1.41.6 - ... Test title: PATCH Individual VNF Snapshot - Success + ... Test title: PATCH Individual VNF Snapshot - Conflict ... Test objective: The objective is to test that PATCH method cannot modify an individual VNF Snapshot resource due to the fact that another modification is ongoing. ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The Individual VNF Snapshot resource is currently being modified due to an underlying VNF snapshot operation. ... Post-Conditions: none @@ -85,7 +85,7 @@ PATCH Individual VNF Snapshot - Precondition Failed ... Test title: PATCH Individual VNF Snapshot - Precondition Failed ... Test objective: The objective is to that the modification of individual VNF Snapshot fails because precondition given in an HTTP request header is not fulfilled due to an ETag mismatch. ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF snapshot is not modified @@ -98,7 +98,7 @@ DELETE Individual VNF Snapshot ... Test title: DELETE Individual VNF Snapshot ... Test objective: The objective is to delete a VNF Snapshot ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF Snapshot deleted @@ -111,7 +111,7 @@ DELETE Individual VNF Snapshot - Conflict ... Test title: DELETE Individual VNF Snapshot Conflict ... Test objective: The objective is to verify that The operation cannot be executed currently, due to a conflict with the state of the VNF Snapshot resource. ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: VNF snapshot is in use by some operation such as reverting a VNF instance to a VNF snapshot or creating a VNF snapshot package. ... Post-Conditions: none @@ -125,7 +125,7 @@ GET Information about an individual VNF Snapshot - SUCCESSFUL with permitted aut ... Test title: GET Information about an individual VNF Snapshot - SUCCESSFUL with permitted authorization scope ... Test objective: The objective is to GET information about an individual VNF Snapshot with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -139,7 +139,7 @@ GET Information about an individual VNF Snapshot with not permitted authorizatio ... Test title: GET Information about an individual VNF Snapshot with not permitted authorization scope ... Test objective: The objective is to GET information about an individual VNF Snapshot with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -152,10 +152,60 @@ GET Information about an individual VNF Snapshot - Unauthorized ... Test title: GET Information about an individual VNF Snapshot - Unauthorized ... Test objective: The objective is to test that the retrieval of individual VNF Snapshot cannot be executed because the request is not authorized ... Pre-conditions: none - ... Reference: Clause 5.4.24.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.24.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none GET Individual VNF Snapshot - Unauthorized Check HTTP Response Status Code Is 401 Check HTTP Response Body Json Schema Is ProblemDetails + +PATCH Individual VNF Snapshot - Unauthorized + [Documentation] Test ID: 7.3.1.41.13 + ... Test title: PATCH Individual VNF Snapshot - Unauthorized + ... Test objective: The objective is to test that the modification of individual VNF Snapshot cannot be executed because the request is not authorized + ... Pre-conditions: none + ... Reference: Clause 5.4.24.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH individual VNF Snapshot - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +PATCH Individual VNF Snapshot - Not found + [Documentation] Test ID: 7.3.1.41.14 + ... Test title: PATCH Individual VNF Snapshot - Not found + ... Test objective: The objective is to test that the modification of individual VNF Snapshot fails because the specified individual VNF Snapshot resource cannot be found. + ... Pre-conditions: none + ... Reference: Clause 5.4.24.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH individual VNF Snapshot - Not found + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails +DELETE Individual VNF Snapshot - Unauthorized + [Documentation] Test ID: 7.3.1.41.15 + ... Test title: DELETE Individual VNF Snapshot - Unauthorized + ... Test objective: The objective is to test that the deletion of individual VNF Snapshot cannot be executed because the request is not authorized + ... Pre-conditions: none + ... Reference: Clause 5.4.24.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE individual VNF Snapshot - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails + +DELETE Individual VNF Snapshot - Not found + [Documentation] Test ID: 7.3.1.41.16 + ... Test title: DELETE Individual VNF Snapshot - Not found + ... Test objective: The objective is to test that the deletion of individual VNF Snapshot cannot be executed because the specified individual VNF Snapshot resource cannot be found. + ... Pre-conditions: none + ... Reference: Clause 5.4.24.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE individual VNF Snapshot - Not found + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot b/SOL003/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot index 819befc226eaf5d3c4d730d5fc7b0a429b8d0583..e37a83607363ea6164f8fdc6777df2b97be1fc63 100644 --- a/SOL003/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot +++ b/SOL003/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot @@ -11,7 +11,7 @@ Post Individual VNF LCM Operation occurrences - Method not implemented ... Test title: Post Individual VNF LCM Operation occurrences - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.13.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.13.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -23,7 +23,7 @@ Get Individual VNF LCM Operation occurrences ... Test title: Get Individual VNF LCM Operation occurrences ... Test objective: The objective is to test that this method retrieve information about a VNF lifecycle management operation occurrence ... Pre-conditions: none - ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -37,7 +37,7 @@ PUT Individual VNF LCM Operation occurrences - Method not implemented ... Test title: PUT Individual VNF LCM Operation occurrences - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.13.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.13.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -49,7 +49,7 @@ PATCH Individual VNF LCM Operation occurrences - Method not implemented ... Test title: PATCH Individual VNF LCM Operation occurrences - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.13.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.13.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -61,7 +61,7 @@ DELETE Individual VNF LCM Operation occurrences - Method not implemented ... Test title: DELETE Individual VNF LCM Operation occurrences - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.13.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.13.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -73,7 +73,7 @@ Get Individual VNF LCM Operation occurrences - Not Found ... Test title: Get Individual VNF LCM Operation occurrences - Not Found ... Test objective: The objective is to test that the retrieval of VNF lifecycle management operation occurrence fails when instance is not present. ... Pre-conditions: none - ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -86,7 +86,7 @@ Get Individual VNF LCM Operation occurrences with permitted authorization scope ... Test title: Get Individual VNF LCM Operation occurrences with permitted authorization scope ... Test objective: The objective is to test that this method retrieve information about a VNF lifecycle management operation occurrence with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -100,7 +100,7 @@ Get Individual VNF LCM Operation occurrences with not permitted authorization sc ... Test title: Get Individual VNF LCM Operation occurrences with not permitted authorization scope ... Test objective: The objective is to test that this method retrieve information about a VNF lifecycle management operation occurrence with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -113,7 +113,7 @@ Get Individual VNF LCM Operation occurrences - Unauthorized ... Test title: Get Individual VNF LCM Operation occurrences - Unauthorized ... Test objective: The objective is to test that GET method cannot retrieve information about a VNF lifecycle management operation occurrence without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot b/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot index b2876b66956c04957893ed37166453a16ce55039..d3c2258a9cacf10624552158d76bfd36612a29c5 100644 --- a/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot @@ -13,7 +13,7 @@ Instantiate a vnfInstance ... Test title: Post Instantiate Individual VNFInstance ... Test objective: The objective is to instantiate a VNF instance ... Pre-conditions: VNF instance resource is in NOT INSTANTIATED state - ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -27,7 +27,7 @@ Instantiate a vnfInstance Conflict ... 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: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -40,7 +40,7 @@ GET Instantiate VNFInstance - Method not implemented ... Test title: GET Instantiate Individual VNFInstance - Method not implemented ... Test objective: The objective is to test that GET method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -52,7 +52,7 @@ PUT Instantiate VNFInstance - Method not implemented ... Test title: PUT Instantiate Individual VNFInstance - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ PATCH Instantiate VNFInstance - Method not implemented ... Test title: PATCH Instantiate Individual VNFInstance - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -76,7 +76,7 @@ DELETE Instantiate VNFInstance - Method not implemented ... Test title: DELETE Instantiate Individual VNFInstance - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -88,7 +88,7 @@ Instantiate a vnfInstance with permitted authorization scope ... Test title: Post Instantiate Individual VNFInstance with permitted authorization scope ... Test objective: The objective is to instantiate a VNF instance with permitted authorization scope ... Pre-conditions: VNF instance resource is in NOT INSTANTIATED state - ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -102,7 +102,7 @@ Instantiate a vnfInstance with not permitted authorization scope ... Test title: Post Instantiate Individual VNFInstance with not permitted authorization scope ... Test objective: The objective is to instantiate a VNF instance with not permitted authorization scope ... Pre-conditions: VNF instance resource is in NOT INSTANTIATED state - ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -114,7 +114,7 @@ Instantiate a vnfInstance - Unauthorized ... Test title: Post Instantiate Individual VNFInstance - Unauthorized ... Test objective: The objective is to instantiate a VNF instance without authorization ... Pre-conditions: VNF instance resource is in NOT INSTANTIATED state - ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -127,7 +127,7 @@ POST Instantiate a vnfInstance - Not Found ... Test title: POST Instantiate a vnfInstance - Not Found ... Test objective: The objective is to Instantiate Individual VNFInstance when instance is not present. ... Pre-conditions: none - ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/InstantiateVNFTaskWorkflow.robot b/SOL003/VNFLifecycleManagement-API/InstantiateVNFTaskWorkflow.robot index 08ded9000ae9591dc4d3c681179fc3ceecd7c770..580f364162e3408b2e850edf0ce33b2d04b61485 100644 --- a/SOL003/VNFLifecycleManagement-API/InstantiateVNFTaskWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/InstantiateVNFTaskWorkflow.robot @@ -20,7 +20,7 @@ VNF Instantiation ... Test title: VNF Instantiation workflow ... Test objective: The objective is to test the workflow for the instantiation of a VNF instance ... Pre-conditions: VNF instance resources is already created. NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.4.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: VNF instance in INSTANTIATED state @@ -38,7 +38,7 @@ VNF Instantiation with attribute instantiationLevelId ... Test title: VNF Instantiation workflow with attribute instantiationLevelId ... Test objective: The objective is to test the workflow for the instantiation of a VNF instance ... Pre-conditions: VNF instance resources is already created. NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.4.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: VNF instance in INSTANTIATED state @@ -56,7 +56,7 @@ VNF Instantiation with attribute targetScaleLevelInfo ... Test title: VNF Instantiation workflow with attribute targetScaleLevelInfo ... Test objective: The objective is to test the workflow for the instantiation of a VNF instance ... Pre-conditions: VNF instance resources is already created. NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.4.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: VNF instance in INSTANTIATED state diff --git a/SOL003/VNFLifecycleManagement-API/ModifyVNFInformationWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ModifyVNFInformationWorkflow.robot index 63be5738c8921f47f8eef1764bd87602a85315c1..44911d0e34d107eb4b25dace2af5ad978c1010c4 100644 --- a/SOL003/VNFLifecycleManagement-API/ModifyVNFInformationWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/ModifyVNFInformationWorkflow.robot @@ -17,7 +17,7 @@ Modify info of a VNF Instance ... Test title: Update information about a VNF instance ... Test objective: The objective is to update information about a VNF instance. ... Pre-conditions: VNF instance is created - ... Reference: Clause 5.3.6 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.3.6 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM. Update information of a VNF instance is supported for the VNF (as capability in the VNFD) ... Post-Conditions: VNF instance info is updated diff --git a/SOL003/VNFLifecycleManagement-API/NotificationEndpoint.robot b/SOL003/VNFLifecycleManagement-API/NotificationEndpoint.robot index 9722762c1c161ba60f64d7c93123ed54bd3d24c8..af664b417cb9cf294365c6b67bfe1d6ab8e7cfc6 100644 --- a/SOL003/VNFLifecycleManagement-API/NotificationEndpoint.robot +++ b/SOL003/VNFLifecycleManagement-API/NotificationEndpoint.robot @@ -13,7 +13,7 @@ VNF LCM Operation Occurrence Notification ... Test title: VNF LCM Operation Occurrence Notification ... Test objective: The objective is to test that the POST request triggers VNF LCM Operation Occurrence Notification. ... Pre-conditions: A subscription for VNF LCM Operation Occurrence notifications is available in the VNFM. - ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ VNF Identifier Creation Notification ... Test title: VNF Identifier Creation Notification ... Test objective: The objective is to test that the POST request triggers VNF Identifier Creation Notification. ... Pre-conditions: A subscription for VNF identifier creation cotification is available in the VNFM. - ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -37,7 +37,7 @@ VNF Identifier Deletion Notification ... Test title: VNF Identifier Deletion Notification ... Test objective: The objective is to test that the POST request triggers VNF Identifier Deletion Notification. ... Pre-conditions: A subscription for VNF identifier deletion notifications is available in the VNFM. - ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -48,7 +48,7 @@ Test the Notification Endpoint - Successful ... Test title: Test the Notification Endpoint - Successful ... Test objective: The objective is to test the Notification Endpoint provided by the notification consumer. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 5.4.20.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.20.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -59,7 +59,7 @@ PUT Notification endpoint - Method Not Implemented ... Test title: PUT Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PUT method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 5.4.20.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.20.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -70,7 +70,7 @@ PATCH Notification endpoint - Method Not Implemented ... Test title: PATCH Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PATCH method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 5.4.20.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.20.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -81,12 +81,46 @@ DELETE Notification endpoint - Method Not Implemented ... Test title: DELETE Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the DELETE method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 5.4.20.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.20.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none DELETE notification endpoint Check HTTP Response Status Code Is 405 + +VNF LCM Operation Occurrence - Unauthorized + [Documentation] Test ID: 7.3.1.36.8 + ... Test title: VNF LCM Operation Occurrence Notification - Unauthorized + ... Test objective: The objective is to test that the POST request triggers VNF LCM Operation Occurrence Notification without authorization. + ... Pre-conditions: A subscription for VNF LCM Operation Occurrence notifications is available in the VNFM. + ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_Notif_Endpoint + ... Applicability: none + ... Post-Conditions: none + Post VNF LCM Operation Occurrence Notification - Unauthorized + Check HTTP Response Status Code Is 401 +Test the Notification Endpoint - Unauthorized + [Documentation] Test ID: 7.3.1.36.9 + ... Test title: Test the Notification Endpoint - Unauthorized + ... Test objective: The objective is to test the Notification Endpoint provided by the notification consumer without authorization. + ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. + ... Reference: Clause 5.4.20.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_Notif_Endpoint + ... Applicability: none + ... Post-Conditions: none + Get reach the notification endpoint - Unauthorized + Check HTTP Response Status Code Is 401 +Test the Notification Endpoint - Not found + [Documentation] Test ID: 7.3.1.36.10 + ... Test title: Test the Notification Endpoint - Not found + ... Test objective: The objective is to test the Notification Endpoint provided by the notification consumer when it is not found. + ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. + ... Reference: Clause 5.4.20.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_Notif_Endpoint + ... Applicability: none + ... Post-Conditions: none + Get reach the notification endpoint - Not found + Check HTTP Response Status Code Is 404 *** Keywords *** Check resource existence and get CallbackUri Set Headers {"Accept":"${ACCEPT_JSON}"} @@ -113,7 +147,16 @@ Post VNF LCM Operation Occurrence Notification Post ${callbackResp} ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} - +Post VNF LCM Operation Occurrence Notification - Unauthorized + log Trying to perform a POST to get notification without authorization + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + ${template} = Get File jsons/VnfLcmOperationOccurrenceNotification.json + ${body}= Format String ${template} subscriptionId=${subscriptionId} vnfInstanceId=${vnfInstanceId} vnfLcmOpOccId=${vnfLcmOpOccId} + Post ${callbackResp} ${body} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} Post VNF Identifier Creation Notification log Trying to perform a POST to get notification Set Headers {"Accept":"${ACCEPT}"} @@ -145,6 +188,21 @@ GET reach the notification endpoint GET ${callbackResp} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +GET reach the notification endpoint - Unauthorized + Log Trying to reach the notification endpoint using GET method without authorization. + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + GET ${callbackResp} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} +GET reach the notification endpoint - Not found + Log Trying to reach the notification endpoint using GET method with an invalid URL. + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + GET ${invalid_callbackResp} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} PUT notification endpoint Log Trying to perform a PUT. This method should not be implemented. Set Headers {"Accept": "${ACCEPT_JSON}"} diff --git a/SOL003/VNFLifecycleManagement-API/Notifications.robot b/SOL003/VNFLifecycleManagement-API/Notifications.robot index db25788fb819cbe4d06b4b48d6cbc065bc393096..554117b979feb65d044805ad56a7b16b4aa80f48 100644 --- a/SOL003/VNFLifecycleManagement-API/Notifications.robot +++ b/SOL003/VNFLifecycleManagement-API/Notifications.robot @@ -6,6 +6,7 @@ Library MockServerLibrary Library Process Library OperatingSystem Library Collections +Library REST http://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false *** Test Cases *** VNF LCM Operation Occurrence Start Notification @@ -13,35 +14,35 @@ VNF LCM Operation Occurrence Start Notification ... Test title: VNF LCM Operation Occurrence Start Notification ... Test objective: The objective is to test the dispatch of VNF LCM Operation Occurrence Start Notification when a new VNF LCM operation is started in the VNFM, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A subscription for VNF LCM Operation Occurrence notifications is available in the VNFM. - ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Trigger a VNF LCM operation (external action) Check VNF LCM Operation Occurrence Start Notification Http POST Request Body Json Schema Is VnfLcmOperationOccurrenceNotification Check VNF LCM Operation Occurrence Start Notification Http POST Request Body notificationType attribute Is VnfLcmOperationOccurrenceNotification - Check VNF LCM Operation Occurrence Start Notification Http POST Request Body notificationStatus attribute Is START + Check VNF LCM Operation Occurrence Start Notification And LCM State START VNF LCM Operation Occurrence Result Notification [Documentation] Test ID: 7.3.1.34.2 ... Test title: VNF LCM Operation Occurrence Result Notification ... Test objective: The objective is to test the dispatch of VNF LCM Operation Occurrence Result Notification when a VNF LCM operation is completed in the VNFM, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: An VNF LCM operation is in progress, and a subscription for VNF LCM Operation Occurrence notifications is available in the VNFM. - ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Trigger the completion of an VNF LCM operation (external action) Check VNF LCM Operation Occurrence Result Notification Http POST Request Body Json Schema Is VnfLcmOperationOccurrenceNotification Check VNF LCM Operation Occurrence Result Notification Http POST Request Body notificationType attribute Is VnfLcmOperationOccurrenceNotification - Check VNF LCM Operation Occurrence Start Notification Http POST Request Body notificationStatus attribute Is RESULT + Check VNF LCM Operation Occurrence Result Notification And LCM State RESULT VNF Identifier Creation Notification [Documentation] Test ID: 7.3.1.34.3 ... Test title: VNF Identifier Creation Notification ... Test objective: The objective is to test the dispatch of VNF Identifier Creation Notification when a new VNF instance resource is created in the VNFM, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A subscription for VNF identifier creation notifications is available in the VNFM. - ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -54,7 +55,7 @@ VNF Identifier Deletion Notification ... Test title: VNF Identifier Deletion Notification ... Test objective: The objective is to test the dispatch of VNF Identifier Deletion Notification when a VNF instance resource is deleted in the VNFM, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF instance resource is created, and a subscription for VNF identifier creation notifications is available in the VNFM. - ... Reference: Clause 6.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -81,20 +82,20 @@ Trigger the deletion of a VNF instance resource (external action) Check VNF LCM Operation Occurrence Start Notification Http POST Request Body Json Schema Is [Arguments] ${element} - ${schema}= Get File schemas/${element}.schema.json + ${schema}= Get File SOL003/VNFLifecycleManagement-API/schemas/${element}.schema.json Configure Notification Forward ${schema} ${callback_endpoint} ${callback_endpoint_fwd} Check VNF LCM Operation Occurrence Start Notification Http POST Request Body notificationType attribute Is [Arguments] ${type} Configure Notification VNF LCM Operation Occurrence Start Handler ${callback_endpoint_fwd} ${type} START Wait Until Keyword Succeeds 2 min 10 sec Verify Mock Expectation ${notification_request} - Clear Requests ${callback_endpoint} - Clear Requests ${callback_endpoint_fwd} + # Clear Requests ${callback_endpoint} + # Clear Requests ${callback_endpoint_fwd} Configure Notification VNF LCM Operation Occurrence Start Handler [Arguments] ${endpoint} ${type} ${status} ${json}= evaluate {} - set to dictionary ${json} notificationType ${type} changeType ${status} + set to dictionary ${json} notificationType ${type} notificationStatus ${status} ${BODY}= evaluate json.dumps(${json}) json Log Creating mock request and response to handle status notification &{req}= Create Mock Request Matcher POST ${endpoint} body_type="JSON" body=${BODY} @@ -111,13 +112,13 @@ Check VNF LCM Operation Occurrence Result Notification Http POST Request Body no [Arguments] ${type} Configure Notification VNF LCM Operation Occurrence Result Handler ${callback_endpoint_fwd} ${type} RESULT Wait Until Keyword Succeeds 2 min 10 sec Verify Mock Expectation ${notification_request} - Clear Requests ${callback_endpoint} - Clear Requests ${callback_endpoint_fwd} - + # Clear Requests ${callback_endpoint} + # Clear Requests ${callback_endpoint_fwd} + Configure Notification VNF LCM Operation Occurrence Result Handler [Arguments] ${endpoint} ${type} ${status} ${json}= evaluate {} - set to dictionary ${json} notificationType ${type} changeType ${status} + set to dictionary ${json} notificationType ${type} notificationStatus ${status} ${BODY}= evaluate json.dumps(${json}) json Log Creating mock request and response to handle status notification &{req}= Create Mock Request Matcher POST ${endpoint} body_type="JSON" body=${BODY} @@ -134,8 +135,8 @@ Check VNF Identifier Creation Notification Http POST Request Body notificationTy [Arguments] ${type} Configure Notification VNF Identifier Creation Handler ${callback_endpoint_fwd} ${type} Wait Until Keyword Succeeds 2 min 10 sec Verify Mock Expectation ${notification_request} - Clear Requests ${callback_endpoint} - Clear Requests ${callback_endpoint_fwd} + # Clear Requests ${callback_endpoint} + # Clear Requests ${callback_endpoint_fwd} Configure Notification VNF Identifier Creation Handler [Arguments] ${endpoint} ${type} @@ -189,7 +190,143 @@ Configure Notification Forward Create Mock Expectation With Http Forward ${notification_tmp} ${notification_fwd} Create Sessions + Start Process python3 ${CURDIR}/../../vnfm_stub.py --port ${VNFM_PORT} alias=vnfmStub + Wait For Process handle=vnfmStub timeout=5s on_timeout=continue Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance Wait For Process handle=mockInstance timeout=5s on_timeout=continue Create Mock Session ${callback_uri}:${callback_port} +Check VNF LCM Operation Occurrence Start Notification And LCM State + Log CALLBACK_FWD = ${callback_endpoint_fwd} + Log CALLBACK = ${callback_endpoint} + [Arguments] ${expected_status} + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} msg=No notification received at callback endpoint! + + ${request_type}= Evaluate type(${requests}) + Log Request type: ${request_type} + + ${last_request}= Run Keyword If "${request_type}" == "" + ... Get From List ${requests} -1 + ... ELSE + ... Set Variable ${requests} + + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + Log Raw body: ${body_text} + + ${notification}= Evaluate json.loads(r'''${body_text}''') json + + Log Parsed notification: ${notification} + Should Not Be Empty ${notification} + # Validate notification content + Dictionary Should Contain Key ${notification} notificationType + Dictionary Should Contain Key ${notification} notificationStatus + Dictionary Should Contain Key ${notification} vnfInstanceId + Dictionary Should Contain Key ${notification} vnfLcmOpOccId + + Should Be Equal As Strings + ... ${notification['notificationType']} + ... VnfLcmOperationOccurrenceNotification + + Should Be Equal As Strings + ... ${notification['notificationStatus']} + ... ${expected_status} + + ${vnfInstanceId}= Get From Dictionary ${notification} vnfInstanceId + ${vnfLcmOpOccId}= Get From Dictionary ${notification} vnfLcmOpOccId + + Set Headers {"Accept": "${ACCEPT_JSON}"} + + Run Keyword If ${AUTH_USAGE} == 1 + ... Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + + # Validate VNF Instance + GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances/${vnfInstanceId} + Integer response status 200 + + # Validate LCM operation occurrence + GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId} + Integer response status 200 + + ${response_body}= Output response body + + ${lcm_state}= Get From Dictionary ${response_body} operationState + ${returned_id}= Get From Dictionary ${response_body} id + + Should Be Equal As Strings ${returned_id} ${vnfLcmOpOccId} + + @{allowed_states}= Create List STARTING PROCESSING + + List Should Contain Value + ... ${allowed_states} + ... ${lcm_state} +Check VNF LCM Operation Occurrence Result Notification And LCM State + [Arguments] ${expected_status} + # 1. Retrieve the latest notification + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} msg=No notification received at callback endpoint! + + ${request_type}= Evaluate type(${requests}) + Log Request type: ${request_type} + + # Handle both single request and list of requests + ${last_request}= Run Keyword If "${request_type}" == "" + ... Get From List ${requests} -1 + ... ELSE + ... Set Variable ${requests} + + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + Log Raw body: ${body_text} + + ${notification}= Evaluate json.loads(r'''${body_text}''') json + + Log [NOTIFICATION] Received Result Notification: ${notification} + + # 2. Content Validation of Notification + Dictionary Should Contain Key ${notification} notificationType + Dictionary Should Contain Key ${notification} notificationStatus + Dictionary Should Contain Key ${notification} vnfInstanceId + Dictionary Should Contain Key ${notification} vnfLcmOpOccId + + Should Be Equal As Strings ${notification['notificationType']} VnfLcmOperationOccurrenceNotification + Should Be Equal As Strings ${notification['notificationStatus']} ${expected_status} + ... msg=Expected notificationStatus=RESULT but got ${notification['notificationStatus']} + + ${vnfInstanceId}= Get From Dictionary ${notification} vnfInstanceId + ${vnfLcmOpOccId}= Get From Dictionary ${notification} vnfLcmOpOccId + + # Post-condition Verification + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 + ... Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + + # Validate VNF Instance + GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances/${vnfInstanceId} + Integer response status 200 + Log VNF Instance ${vnfInstanceId} validated successfully + + # Validate LCM Operation Occurrence + GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId} + Integer response status 200 + + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + ${lcm_state}= Get From Dictionary ${response['body']} operationState + + # ID Consistency Check + ${returned_id}= Get From Dictionary ${response['body']} id + Should Be Equal As Strings ${returned_id} ${vnfLcmOpOccId} + ... msg=ID mismatch! LCM Op Occ ID in notification (${vnfLcmOpOccId}) does not match resource ID (${returned_id}) + + Log LCM operationState = ${lcm_state} + + # Allowed states for RESULT notification + @{allowed_states}= Create List COMPLETED FAILED FAILED_TEMP ROLLING_BACK ROLLED_BACK + List Should Contain Value ${allowed_states} ${lcm_state} + ... msg=Unexpected operationState '${lcm_state}' after RESULT notification + + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} + diff --git a/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot b/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot index 4f09ab79e9ad468220fee4ab27697e235333c8d1..e4722e522751bfbacdd8234a19d4053d117f6bd4 100644 --- a/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot @@ -14,7 +14,7 @@ POST Operate a vnfInstance ... Test title: POST Operate a vnfInstance ... Test objective: The objective is to test that POST method operate a VNF instance ... Pre-conditions: none - ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -29,7 +29,7 @@ POST Operate a vnfInstance Conflict (Not-Instantiated) ... Test title: POST Operate a vnfInstance Conflict (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: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -42,7 +42,7 @@ POST Operate a vnfInstance Not Found ... Test title: POST Operate a vnfInstance Not Found ... 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: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -55,7 +55,7 @@ GET Operate VNFInstance - Method not implemented ... 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: Clause 5.4.10.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.10.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -67,7 +67,7 @@ PUT Operate VNFInstance - Method not implemented ... 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: Clause 5.4.10.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.10.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -79,7 +79,7 @@ PATCH Operate VNFInstance - Method not implemented ... 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: Clause 5.4.10.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.10.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -91,7 +91,7 @@ DELETE Operate VNFInstance - Method not implemented ... 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: Clause 5.4.10.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.10.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -103,7 +103,7 @@ POST Operate a vnfInstance with permitted authorization scope ... Test title: POST Operate a vnfInstance with permitted authorization scope ... Test objective: The objective is to test that POST method operate a VNF instance with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -119,7 +119,7 @@ POST Operate a vnfInstance with not permitted authorization scope ... Test title: POST Operate a vnfInstance with not permitted authorization scope ... Test objective: The objective is to test that POST method operate a VNF instance with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -132,7 +132,7 @@ POST Operate a vnfInstance - Unauthorized ... Test title: POST Operate a vnfInstance - Unauthorized ... Test objective: The objective is to test that POST method cannot trigger operate without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/OperateVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/OperateVNFWorkflow.robot index 1c6a131e646c280da1e48b62ff1030af60bdbee1..e469fc44f7d9e6829174eb95be9e933e48c068d9 100644 --- a/SOL003/VNFLifecycleManagement-API/OperateVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/OperateVNFWorkflow.robot @@ -18,7 +18,7 @@ Operate a VNF Instance ... Test title: Operate a VNF Instance ... Test objective: The objective is to test the workflow of operational change of a VNF instance. ... Pre-conditions: VNF instance in INSTANTIATED state - ... Reference: Clause 5.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: change the operational state of a VNF instance is supported for the VNF (as capability in the VNFD) ... Post-Conditions: VNF instance still in INSTANTIATED state and the operational state is changed diff --git a/SOL003/VNFLifecycleManagement-API/RetryOperationTask.robot b/SOL003/VNFLifecycleManagement-API/RetryOperationTask.robot index 7b590a2e3362f711d96e999386855c717d761660..427da6737ad367917d799ae1e53aef4892e357ca 100644 --- a/SOL003/VNFLifecycleManagement-API/RetryOperationTask.robot +++ b/SOL003/VNFLifecycleManagement-API/RetryOperationTask.robot @@ -15,20 +15,19 @@ Post Retry operation task ... Test title: Post Retry operation task ... Test objective: The objective is to test that POST method The POST method initiates retrying a VNF lifecycle operation if the operation is in FAILED_TEMP state ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Post Retry operation Check HTTP Response Status Code Is 202 - Check HTTP Response Header Contains Location Post Retry operation task Conflict (Not-FAILED_TEMP) [Documentation] Test ID: 7.3.1.13.2 ... Test title: Post Retry operation task Conflict (Not-FAILED_TEMP) ... Test objective: The objective is to test that the retry operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. (i.e. the VNF instance resource is not in FAILED_TEMP state) ... Pre-conditions: the "VNF LCM operation occurrence" resource is not in "FAILED_TEMP" state. - ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -41,7 +40,7 @@ Post Retry operation task Not Found ... Test title: Post Retry operation task Not Found ... Test objective: The objective is to test that the retry operation cannot be executed because the operation is not supported ... Pre-conditions: - ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -54,7 +53,7 @@ GET Retry operation task - Method not implemented ... Test title: GET Retry operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.14.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.14.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -66,7 +65,7 @@ PUT Retry operation task - Method not implemented ... Test title: PUT Retry operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.14.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.14.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -78,7 +77,7 @@ PATCH Retry operation task - Method not implemented ... Test title: PATCH Retry operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.14.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.14.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -90,7 +89,7 @@ DELETE Retry operation task - Method not implemented ... Test title: DELETE Retry operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.14.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.14.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -102,20 +101,19 @@ Post Retry operation task with permitted authorization scope ... Test title: Post Retry operation task with permitted authorization scope ... Test objective: The objective is to test that POST method The POST method initiates retrying a VNF lifecycle operation if the operation is in FAILED_TEMP state with permitted authorization scope ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Post Retry operation with permitted authorization scope Check HTTP Response Status Code Is 202 - Check HTTP Response Header Contains Location Post Retry operation task with not permitted authorization scope [Documentation] Test ID: 7.3.1.13.9 ... Test title: Post Retry operation task with not permitted authorization scope ... Test objective: The objective is to test that POST method The POST method initiates retrying a VNF lifecycle operation if the operation is in FAILED_TEMP state with not permitted authorization scope ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -128,7 +126,7 @@ POST Retry operation task - Unauthorized ... Test title: POST Retry operation task - Unauthorized ... Test objective: The objective is to test that the retry operation cannot be executed because the request is not authorized ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.14.4.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/RetryOperationWorkflow.robot b/SOL003/VNFLifecycleManagement-API/RetryOperationWorkflow.robot index 0ec8c1ec5d4301895f904b684a4baa57018df176..123039a7a558df6847930fb961c04ebee67aca78 100644 --- a/SOL003/VNFLifecycleManagement-API/RetryOperationWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/RetryOperationWorkflow.robot @@ -15,7 +15,7 @@ Retry VNF LCM Operation - Successful ... Test title: Retry VNF LCM Operation - Successful ... Test objective: The objective is to test the workflow for a successful Retry VNF LCM Operation and the status notifications ... Pre-conditions: The VNF lifecycle management operation occurrence is in FAILED_TEMP state. NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.3.10 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.3.10 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: The VNF lifecycle management operation occurrence is in COMPLETED state @@ -30,7 +30,7 @@ Retry VNF LCM Operation - Unsuccessful ... Test title: Retry VNF LCM Operation - Unsuccessful ... Test objective: The objective is to test the workflow for an unsuccesful Retry VNF LCM Operation and the status notifications ... Pre-conditions: The VNF lifecycle management operation occurrence is in FAILED_TEMP state. NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.3.10 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.3.10 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: The VNF lifecycle management operation occurrence is in FAILED_TEMP state diff --git a/SOL003/VNFLifecycleManagement-API/RevertToVNFSnapshotTask.robot b/SOL003/VNFLifecycleManagement-API/RevertToVNFSnapshotTask.robot index 9a3fa091878ca88c3c40669c35aa9060c793d351..2aefeeddb04020a8d3cca21752a35a91097f026d 100644 --- a/SOL003/VNFLifecycleManagement-API/RevertToVNFSnapshotTask.robot +++ b/SOL003/VNFLifecycleManagement-API/RevertToVNFSnapshotTask.robot @@ -13,7 +13,7 @@ POST Revert to VNF Snapshot Task ... Test title: POST Revert to VNF Snapshot Task ... Test objective: The objective is to test that POST method requests reverting a VNF/VNFC instance to a VNF/VNFC snapshot. ... Pre-conditions: none - ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -26,7 +26,7 @@ POST Revert to VNF Snapshot Task - NOT FOUND ... Test title: POST Revert to VNF Snapshot Task - NOT FOUND ... Test objective: The objective is to test that the POST method cannot request reverting to a snapshot if the task is not supported for the VNF instance represented by the parent resource. ... Pre-conditions: none - ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: Task is not supported for the VNF instance represented by the parent resource. ... Post-Conditions: none @@ -39,7 +39,7 @@ POST Revert to VNF Snapshot Task - CONFLICT ... Test title: POST Revert to VNF Snapshot Task - CONFLICT ... Test objective: The objective is to test that the POST method cannot request reverting to a snapshot when the VNF instance is in NOT_INSTANTIATED state. ... Pre-conditions: none - ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: VNF instance is in NOT_INSTANTIATED state. ... Post-Conditions: none @@ -52,7 +52,7 @@ GET Revert to VNF Snapshot Task - Method not implemented ... Test title: GET Revert to VNF Snapshot Task - Method not implemented ... Test objective: The objective is to test that GET method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.22.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.22.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ PUT Revert to VNF Snapshot Task - Method not implemented ... Test title: PUT Revert to VNF Snapshot Task - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.22.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.22.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -76,7 +76,7 @@ PATCH Revert to VNF Snapshot Task - Method not implemented ... Test title: PATCH Revert to VNF Snapshot Task - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.22.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.22.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -88,7 +88,7 @@ DELETE Revert to VNF Snapshot Task - Method not implemented ... Test title: DELETE Revert to sVNF Snapshot Task - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.22.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.22.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -100,7 +100,7 @@ POST Revert to VNF Snapshot Task with permitted authorization scope ... Test title: POST Revert to VNF Snapshot Task with permitted authorization scope ... Test objective: The objective is to test that POST method requests reverting a VNF/VNFC instance to a VNF/VNFC snapshot with permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -115,7 +115,7 @@ POST Revert to VNF Snapshot Task with not permitted authorization scope ... Test title: POST Revert to VNF Snapshot Task with not permitted authorization scope ... Test objective: The objective is to test that POST method requests reverting a VNF/VNFC instance to a VNF/VNFC snapshot with not permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -128,7 +128,7 @@ POST Revert to VNF Snapshot Task - Unauthorized ... Test title: POST Revert to VNF Snapshot Task - Unauthorized ... Test objective: The objective is to test that POST method requests reverting a VNF/VNFC instance to a VNF/VNFC snapshot without authorization. ... Pre-conditions: none - ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.22.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/RollBackOperationWorkflow.robot b/SOL003/VNFLifecycleManagement-API/RollBackOperationWorkflow.robot index 26a6ff903481a25ff5583b7afc1db696316bd24d..9a40f607dae51be3855c02b7a4d36459c9f2d3ef 100644 --- a/SOL003/VNFLifecycleManagement-API/RollBackOperationWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/RollBackOperationWorkflow.robot @@ -17,7 +17,7 @@ Rollback a VNF LCM Operation - Successful ... Test title: Rollback VNF LCM Operation - Successful ... Test objective: The objective is to test the workflow for a Rolling Back a VNF LCM Operation and the operation is successful ... Pre-conditions: The VNF lifecycle management operation occurrence is in FAILED_TEMP state. NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.3.11 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.3.11 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: The VNF lifecycle management operation occurrence is in ROLLED_BACK state @@ -32,7 +32,7 @@ Rollback VNF LCM Operation - Unsuccessful ... Test title: Rollback VNF LCM Operation - Unsuccessful ... Test objective: The objective is to test the workflow for a Rollback VNF LCM Operation and the operation is not successful ... Pre-conditions: The VNF lifecycle management operation occurrence is in FAILED_TEMP state. NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.3.10 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.3.10 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM ... Post-Conditions: The VNF lifecycle management operation occurrence is in FAILED_TEMP state diff --git a/SOL003/VNFLifecycleManagement-API/RollbackOperationTask.robot b/SOL003/VNFLifecycleManagement-API/RollbackOperationTask.robot index aee8f2f554479595722210d4f474538911f3826d..5f3d497ac3c8d9baa1ada48d36df4698cf7e8947 100644 --- a/SOL003/VNFLifecycleManagement-API/RollbackOperationTask.robot +++ b/SOL003/VNFLifecycleManagement-API/RollbackOperationTask.robot @@ -14,20 +14,19 @@ Post Rollback operation task ... Test title: Post Rollback operation task ... Test objective: The objective is to test that POST method initiates rollback on a VNF lifecycle operation ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Post Rollback operation Check HTTP Response Status Code Is 202 - Check HTTP Response Header Contains Location POST Rollback operation task Conflict (Not-FAILED_TEMP) [Documentation] Test ID: 7.3.1.14.2 ... Test title: POST Rollback operation task Conflict (Not-FAILED_TEMP) ... Test objective: The objective is to test that POST method initiates a rollback on a VNF lifecycle operation ... Pre-conditions: the "VNF LCM operation occurrence" resource is not in "FAILED_TEMP" state. - ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -40,7 +39,7 @@ POST Rollback operation task Not Found ... Test title: POST Rollback operation task Not Found ... Test objective: The objective is to test that the retry operation cannot be executed because the operation is not supported ... Pre-conditions: - ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -53,7 +52,7 @@ GET Rollback operation task - Method not implemented ... Test title: GET Rollback operation task - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.15.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.15.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -65,7 +64,7 @@ PUT Rollback operation task - Method not implemented ... Test title: PUT Rollback operation task - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.15.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.15.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -77,7 +76,7 @@ PATCH Rollback operation task - Method not implemented ... Test title: PATCH Rollback operation task - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.15.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.15.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -89,7 +88,7 @@ DELETE Rollback operation task - Method not implemented ... Test title: DELETE Rollback operation task - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.15.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.15.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -101,20 +100,19 @@ Post Rollback operation task with permitted authorization scope ... Test title: Post Rollback operation task with permitted authorization scope ... Test objective: The objective is to test that POST method initiates rollback on a VNF lifecycle operation with permitted authorization scope ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Post Rollback operation with permitted authorization scope Check HTTP Response Status Code Is 202 - Check HTTP Response Header Contains Location Post Rollback operation task with not permitted authorization scope [Documentation] Test ID: 7.3.1.14.9 ... Test title: Post Rollback operation task with not permitted authorization scope ... Test objective: The objective is to test that POST method initiates rollback on a VNF lifecycle operation with not permitted authorization scope ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -127,7 +125,7 @@ POST Rollback operation task - Unauthorized ... Test title: POST Rollback operation task - Unauthorized ... Test objective: The objective is to test that the rollback operation cannot be executed because the request is not authorized ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot b/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot index 4b3859cdbcd089771860dd9d8fdb87e2f164dbef..45e7cca68eff99c4f886d1efbc0bedd7f0316829 100644 --- a/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot @@ -13,7 +13,7 @@ POST Scale a vnfInstance ... Test title: POST Scale a vnfInstance ... Test objective: The objective is to scale a VNF instance ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -28,7 +28,7 @@ POST Scale a vnfInstance Conflict (Not-Instantiated) ... Test title: POST Scale a vnfInstance Conflict (Not-Instantiated) ... Test objective: The objective is to verify that the scale operation cannot be executed ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state - ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -41,7 +41,7 @@ POST Scale a vnfInstance Not Found ... Test title: POST Scale a vnfInstance Not Found ... Test objective: The objective is to verify that the operation cannot be executed currently, because the VNF instance resource is not found. ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -54,7 +54,7 @@ GET Scale VNFInstance - Method not implemented ... Test title: GET Scale VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -66,7 +66,7 @@ PUT Scale VNFInstance - Method not implemented ... Test title: PUT Scale VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -78,7 +78,7 @@ PATCH Scale VNFInstance - Method not implemented ... Test title: PATCH Scale VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -90,7 +90,7 @@ DELETE Scale VNFInstance - Method not implemented ... Test title: DELETE Scale VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -102,7 +102,7 @@ POST Scale a vnfInstance with permitted authorization scope ... Test title: POST Scale a vnfInstance with permitted authorization scope ... Test objective: The objective is to scale a VNF instance with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -117,7 +117,7 @@ POST Scale a vnfInstance with not permitted authorization scope ... Test title: POST Scale a vnfInstance with not permitted authorization scope ... Test objective: The objective is to scale a VNF instance with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -130,7 +130,7 @@ POST Scale a vnfInstance Scale Vertical - Compute ... Test title: POST Scale a vnfInstance Scale Vertical - Compute ... Test objective: The objective is to scale a VNF instance with vertical scaling in terms of compute ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -144,7 +144,7 @@ POST Scale a vnfInstance Scale Vertical - Storage ... Test title: POST Scale a vnfInstance Scale Vertical - Storage ... Test objective: The objective is to scale a VNF instance with vertical scaling in terms of storage ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -158,7 +158,7 @@ POST Scale a vnfInstance Scale Vertical - Oscontainer ... Test title: POST Scale a vnfInstance Scale Vertical - Oscontainer ... Test objective: The objective is to scale a VNF instance with vertical scaling in terms of oscontainer ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -172,7 +172,7 @@ POST Scale a vnfInstance - Unauthorized ... Test title: Post Scale a vnfInstance - Unauthorized ... Test objective: The objective is to scale a VNF instance without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot b/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot index 857dce85d29508ee71f45e1ad762836e3576db09..451bdf63690394735bdf63a6b87526bb9ea6e4ce 100644 --- a/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot @@ -12,7 +12,7 @@ POST Scale a vnfInstance to level - with InstantiationLevelId attribute ... 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: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -26,7 +26,7 @@ POST Scale a vnfInstance to level Conflict (Not-Instantiated) ... Test title: POST Scale a vnfInstance to level Conflict (Not-Instantiated) ... Test objective: The objective is to verify that the scale operation cannot be executed because the resource is not instantiated ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state - ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -39,7 +39,7 @@ Scale a vnfInstance Not Found ... Test title: Scale a vnfInstance Not Found ... Test objective: The objective is to verify that the operation cannot be executed , because the VNF instance resource cannot be found. ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state - ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -52,7 +52,7 @@ GET Scale to level VNFInstance - Method not implemented ... 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: none - ... Reference: Clause 5.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ PUT Scale to level VNFInstance - Method not implemented ... Test title: PUT Scale to level VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -76,7 +76,7 @@ PATCH Scale to level VNFInstance - Method not implemented ... Test title: PATCH Scale to level VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -88,7 +88,7 @@ DELETE Scale to level VNFInstance - Method not implemented ... 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: none - ... Reference: Clause 5.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -100,12 +100,13 @@ POST Scale a vnfInstance to level - with scaleInfo attribute ... Test title: POST Scale a vnfInstance to level with scaleInfo attribute ... Test objective: The objective is to scale a VNF instance to a target level. ... Pre-conditions: none - ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none POST Scale vnfInstance to level with scaleInfo attribute Check HTTP Response Status Code Is 202 + Check HTTP Response Header Contains Location Check Operation Occurrence Id existence POST Scale a vnfInstance to level - with InstantiationLevelId attribute with permitted authorization scope @@ -113,7 +114,7 @@ POST Scale a vnfInstance to level - with InstantiationLevelId attribute with per ... Test title: POST Scale a vnfInstance to level with permitted authorization scope ... Test objective: The objective is to scale a VNF instance to a target level with permitted authorization scope . ... Pre-conditions: none - ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -126,7 +127,7 @@ POST Scale a vnfInstance to level - with InstantiationLevelId attribute with not ... Test title: POST Scale a vnfInstance to level with not permitted authorization scope ... Test objective: The objective is to scale a VNF instance to a target level with not permitted authorization scope . ... Pre-conditions: none - ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -139,10 +140,23 @@ POST Scale a vnfInstance to level - Unauthorized ... Test title: Post Scale a vnfInstance to level - Unauthorized ... Test objective: The objective is to scale a VNF instance to level without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none POST scale vnfInstance to level with InstantiationLevelId attribute - Unauthorized Check HTTP Response Status Code Is 401 - Check HTTP Response Body Json Schema Is ProblemDetails \ No newline at end of file + Check HTTP Response Body Json Schema Is ProblemDetails +POST Scale a vnfInstance to level with powerProfileId attribute + [Documentation] Test ID: 7.3.1.5.12 + ... Test title: POST Scale a vnfInstance to level with powerProfileId attribute + ... Test objective: The objective is to scale a VNF instance to a target level. + ... Pre-conditions: none + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST Scale vnfInstance to level with powerProfileId attribute + Check HTTP Response Status Code Is 202 + Check HTTP Response Header Contains Location + Check Operation Occurrence Resource Available \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelWorkflow.robot index 4477135badb92ff1be41bceed907ca1bac64b4a4..e53de89f6266399bb93afdabaad25ce69cf0f0bc 100644 --- a/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelWorkflow.robot @@ -15,7 +15,7 @@ VNF Instance Scale To Level ... Test title: VNF Instance Scale To Level workflow ... Test objective: The objective is to test the workflow for the scale to level of a VNF instance ... Pre-conditions: VNF instance in INSTANTIATED state . NFVO is subscribed to VNF LCM Operation Occurrence notifications - ... Reference: Clause 5.4.6 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.6 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM. Scale operation is supported for the VNF (as capability in the VNFD) ... Post-Conditions: VNF instance still in INSTANTIATED state and VNF is scaled to the new level diff --git a/SOL003/VNFLifecycleManagement-API/ScaleVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ScaleVNFWorkflow.robot index 3cb59a550a05dbbbc7abc193aec74670056622d0..397588f1e656ae5589ef45b118dbf9ada5c3de61 100644 --- a/SOL003/VNFLifecycleManagement-API/ScaleVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/ScaleVNFWorkflow.robot @@ -15,7 +15,7 @@ VNF Instance Scale Out ... Test title: VNF Instance Scale Out workflow ... Test objective: The objective is to test the workflow for the scaling out a VNF instance ... Pre-conditions: VNF instance in INSTANTIATED state (Test ID 5.4.4.1). NFVO is subscribed to VNF LCM Operation Occurrence notifications (Test ID 5.4.20.1) - ... Reference: Clause 5.4.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM. Scale operation is supported for the VNF (as capability in the VNFD) ... Post-Conditions: VNF instance still in INSTANTIATED state and VNF is scaled out diff --git a/SOL003/VNFLifecycleManagement-API/Subscriptions.robot b/SOL003/VNFLifecycleManagement-API/Subscriptions.robot index a5d91922e308f97af5b686b74f66770c434aae00..dcabacc7f750b06aa65ffc9f5a9e09c8ccec6274 100644 --- a/SOL003/VNFLifecycleManagement-API/Subscriptions.robot +++ b/SOL003/VNFLifecycleManagement-API/Subscriptions.robot @@ -15,7 +15,7 @@ POST Create a new subscription ... Test title: POST Create a new subscription ... Test objective: The POST method creates a new subscription ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -29,7 +29,7 @@ Create a new Subscription - DUPLICATION ... Test title: POST Create a new subscription - DUPLICATION ... Test objective: The objective is to test request to create a duplicate (same callbackurl and filter) subscription ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: duplication is supported by SUT ... Post-Conditions: in response header Location shall not be null @@ -43,20 +43,22 @@ Create a new Subscription - NO-DUPLICATION ... Test title: POST Create a new subscription - NO-DUPLICATION ... Test objective: The objective is to test the request that does not create a duplicate (same callbackurl and filter) subscription ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: duplication is not supported by SUT ... Post-Conditions: in response header Location shall not be null Post Create subscription - NO-DUPLICATION Check HTTP Response Status Code Is 303 Check Operation Occurrence Id existence + Check HTTP Response Header Contains Location + GET Subscriptions [Documentation] Test ID: 7.3.1.17.4 ... Test title: GET Subscriptions ... Test objective: The objective is Get the list of active subscriptions ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -69,7 +71,7 @@ GET Subscription - Filter ... Test title: GET Subscriptions - Filter ... Test objective: The objective is Get the list of active subscriptions using a filter ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -83,7 +85,7 @@ GET subscriptions - Bad Request Invalid attribute-based filtering parameters ... Test title: GET subscriptions - Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is Get the list of active subscriptions using an invalid filter ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -140,7 +142,7 @@ PUT subscriptions - Method not implemented ... Test title: PUT subscriptions - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -152,7 +154,7 @@ PATCH subscriptions - Method not implemented ... Test title: PATCH subscriptions - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -164,7 +166,7 @@ DELETE subscriptions - Method not implemented ... Test title: DELETE subscriptions - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -176,7 +178,7 @@ GET Subscriptions as a Paged Response ... Test title: GET Subscriptions as a Paged Response ... Test objective: The objective is Get the list of active subscriptions as a Paged Response. ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the subscriptions resources ... Post-Conditions: none @@ -189,7 +191,7 @@ GET subscriptions - Bad Request Response too Big ... Test title: GET subscriptions - Bad Request Response too Big ... Test objective: The objective is to test that the retrieval of the list of active subscriptions fails because response is too big. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -202,7 +204,7 @@ POST Create a new Subscription - Unprocessable Content ... Test title: POST Create a new Subscription - Unprocessable Content ... Test objective: The objective is to test that content type of the message content is supported and the message content of a request contains syntactically correct data but the data cannot be processed. ... re-conditions: none - ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -215,7 +217,7 @@ GET Subscriptions as a Paged Response with nextpage_opauque_marker parameter ... Test title: GET Subscriptions as a Paged Response with nextpage_opauque_marker parameter ... Test objective: The objective is to Get the list of active subscriptions as a Paged Response and retrieve the next page using the nextpage_opaque_marker parameter ... Pre-conditions: A request for retrieving subscriptions as a paged response has been successfully issued (Test ID 7.3.1.17.14) - ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the subscriptions resources ... Post-Conditions: none @@ -227,20 +229,21 @@ POST Create a new subscription with permitted authorization scope ... Test title: POST Create a new subscription with permitted authorization scope ... Test objective: The POST method creates a new subscription with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null Post Create subscription with permitted authorization scope Check HTTP Response Status Code Is 201 Check HTTP Response Body Json Schema Is Subscription + Check HTTP Response Header Contains Location POST Create a new subscription with not permitted authorization scope [Documentation] Test ID: 7.3.1.17.19 ... Test title: POST Create a new subscription with not permitted authorization scope ... Test objective: The POST method creates a new subscription with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -253,7 +256,7 @@ POST Create a new subscription - Unauthorized ... Test title: POST Create a new subscription - Unauthorized ... Test objective: The POST method creates a new subscription without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -266,7 +269,7 @@ GET Subscription with invalid resource endpoint ... Test title: GET VNF Subscription with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of subscription fails when using invalid resource endpoint. ... Pre-conditions: none - ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -274,6 +277,18 @@ GET Subscription with invalid resource endpoint Check HTTP Response Status Code Is 404 Check HTTP Response Body Json Schema Is ProblemDetails +GET Subscriptions - Unauthorized + [Documentation] Test ID: 7.3.1.17.22 + ... Test title: GET Subscriptions - Unauthorized + ... Test objective: The objective is to test that the retrieval of the list of active subscriptions fails without authorization. + ... Pre-conditions: none + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Get subscriptions - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails *** Keywords *** Void Log do nothing diff --git a/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot b/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot index 0436c6bf5c70beb1bb66a6588a05d7860d4f142c..25fbe2c79d8fb101139811c21bc0045cdc143f7c 100644 --- a/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot @@ -13,7 +13,7 @@ POST Terminate a vnfInstance ... Test title: POST Terminate a vnfInstance ... Test objective: The objective is to test that POST method terminate a VNF instance ... Pre-conditions: none - ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -27,7 +27,7 @@ POST Terminate a vnfInstance Conflict (Not-Instantiated) ... Test title: POST Terminate a vnfInstance Conflict (Not-Instantiated) ... Test objective: The objective is to test that the vnf Instance cannot be terminated ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state - ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -40,7 +40,7 @@ GET Terminate VNFInstance - Method not implemented ... 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: Clause 5.4.8.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.8.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -52,7 +52,7 @@ PUT Terminate VNFInstance - Method not implemented ... Test title: PUT Terminate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.8.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.8.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ PATCH Terminate VNFInstance - Method not implemented ... Test title: PATCH Terminate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.8.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.8.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -76,7 +76,7 @@ DELETE Terminate VNFInstance - Method not implemented ... Test title: DELETE Terminate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.8.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.8.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -88,7 +88,7 @@ POST Terminate a vnfInstance with permitted authorization scope ... Test title: POST Terminate a vnfInstance with permitted authorization scope ... Test objective: The objective is to test that POST method terminate a VNF instance with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -102,7 +102,7 @@ POST Terminate a vnfInstance with not permitted authorization scope ... Test title: POST Terminate a vnfInstance with not permitted authorization scope ... Test objective: The objective is to test that POST method terminate a VNF instance with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -115,7 +115,7 @@ POST Terminate a vnfInstance Not Found ... Test title: POST Terminate a vnfInstance Not Found ... Test objective: The objective is to test that POST method cannot trigger terminate because the VNF instance resource is not found. ... Pre-conditions: none - ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -128,7 +128,7 @@ POST Terminate a vnfInstance - Unauthorized ... Test title: POST Terminate a vnfInstance - Unauthorized ... Test objective: The objective is to test that POST method cannot trigger terminate without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/TerminateVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/TerminateVNFWorkflow.robot index 0c4116de948ddebc0ce12646efeb83dd3ed7273b..c192ba56312814d26ac9eff46e1d65eee85e4f38 100644 --- a/SOL003/VNFLifecycleManagement-API/TerminateVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/TerminateVNFWorkflow.robot @@ -15,7 +15,7 @@ Terminate a VNF Instance ... Test title: Terminate a VNF Instance ... Test objective: The objective is to terminate a VNF instance. ... Pre-conditions: VNF instance in INSTANTIATED state - ... Reference: Clause 5.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: NFVO is able to receive notifications from VNFM. ... Post-Conditions: VNF instance in NOT_INSTANTIATED state diff --git a/SOL003/VNFLifecycleManagement-API/VNFInstances.robot b/SOL003/VNFLifecycleManagement-API/VNFInstances.robot index eeabbe443c4d2a16788c0dd8d684c52bc942e7c5..2a6c7b843c9b0fa11cda21c3bb8ed1417bab3a3e 100644 --- a/SOL003/VNFLifecycleManagement-API/VNFInstances.robot +++ b/SOL003/VNFLifecycleManagement-API/VNFInstances.robot @@ -13,7 +13,7 @@ POST Create a new vnfInstance ... Test title: POST Create a new vnfInstance ... Test objective: The objective is to create a new VNF instance resource ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF instance created @@ -28,7 +28,7 @@ GET information about multiple VNF instances ... Test title: GET information about multiple VNF instances ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -40,8 +40,8 @@ GET information about multiple VNF instances Bad Request Invalid attribute-based [Documentation] Test ID: 7.3.1.1.3 ... Test title: GET information about multiple VNF instances Bad Request 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: A VNF is instantiated, a bad filter selector (filter selectors are listed in Table 5.4.2.3.2-1 - ETSI GS NFV-SOL 003 [1] v5.2.1). - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Pre-conditions: A VNF is instantiated, a bad filter selector (filter selectors are listed in Table 5.4.2.3.2-1 - ETSI GS NFV-SOL 003 [1] v5.3.1). + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -54,8 +54,8 @@ GET information about multiple VNF instances Bad Request Invalid attribute selec [Documentation] Test ID: 7.3.1.1.4 ... Test title: GET information about multiple VNF instances Bad Request Invalid attribute selector ... Test objective: The objective is to query information about multiple VNF instances with Invalid attribute selector - ... Pre-conditions: A VNF is instantiated, a bad attribute selector (attribute selectors are listed in Table 5.4.2.3.2-1 - ETSI GS NFV-SOL 003 [1] v5.2.1). - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Pre-conditions: A VNF is instantiated, a bad attribute selector (attribute selectors are listed in Table 5.4.2.3.2-1 - ETSI GS NFV-SOL 003 [1] v5.3.1). + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -68,7 +68,7 @@ GET information about multiple VNF instances with "all_fields" attribute selecto ... Test title: GET information about multiple VNF instances with "all_fields" attribute selector ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -81,7 +81,7 @@ GET information about multiple VNF instances with "exclude_default" attribute se ... Test title: GET information about multiple VNF instances with "exclude_default" attribute selector ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -94,7 +94,7 @@ GET information about multiple VNF instances with "fields" attribute selector ... Test title: GET information about multiple VNF instances with "fields" attribute selector ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -107,7 +107,7 @@ GET information about multiple VNF instances with "exclude_fields" attribute sel ... Test title: GET information about multiple VNF instances with "exclude_fields" attribute selector ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -120,7 +120,7 @@ PUT multiples VNFInstances - Method not implemented ... Test title: PUT multiples VNFInstances - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -132,7 +132,7 @@ PATCH multiples VNFInstances - Method not implemented ... Test title: PATCH multiples VNFInstances - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -144,7 +144,7 @@ DELETE VNFInstances - Method not implemented ... Test title: DELETE multiples VNFInstances - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -156,7 +156,7 @@ GET information about multiple VNF instances to get Paged Response ... Test title: GET information about multiple VNF instances to get Paged Response ... Test objective: The objective is to query information about multiple VNF instances to get Paged Response. ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the subscriptions resources ... Post-Conditions: none @@ -169,7 +169,7 @@ GET information about multiple VNF instances as a Paged Response with nextpage_o ... Test title: GET information about multiple VNF instances as a Paged Response with nextpage_opauque_marker parameter ... Test objective: The objective is to query information about multiple VNF instances as a Paged Response and retrieve the next page using the nextpage_opaque_marker parameter ... Pre-conditions: A request for retrieving multiple VNF instances as a paged response has been successfully issued (Test ID 7.3.1.1.12) - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the VNF instance resources ... Post-Conditions: none @@ -180,8 +180,8 @@ GET information about multiple VNF instances - Bad Request Response too Big [Documentation] Test ID: 7.3.1.1.13 ... Test title: GET information about multiple VNF instances - Bad Request Response too Big ... Test objective: The objective is to query information about multiple VNF instances fails because response is too big. The test also checks the JSON schema of the unsuccessful operation HTTP response. - ... Pre-conditions: A VNF is instantiated, a bad attribute selector (attribute selectors are listed in Table 5.4.2.3.2-1 - ETSI GS NFV-SOL 003 [1] v5.2.1). - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Pre-conditions: A VNF is instantiated, a bad attribute selector (attribute selectors are listed in Table 5.4.2.3.2-1 - ETSI GS NFV-SOL 003 [1] v5.3.1). + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -194,7 +194,7 @@ GET information about multiple VNF instances with "exclude_default" and "fields" ... Test title: GET information about multiple VNF instances with "exclude_default" and "fields" attribute selector ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -207,7 +207,7 @@ POST Create a new vnfInstance - Unprocessable Content ... Test title: POST Create a new vnfInstance - Unprocessable Content ... Test objective: The objective is to test that correct error code is returned when VNF package referenced by the "vnfdId" attribute in the "CreateVnfRequest" structure is not in the "ENABLED" state or does not exist. ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNF package referenced by the "vnfdId" attribute in the "CreateVnfRequest" structure is not in the "ENABLED" state or does not exist. ... Post-Conditions: none @@ -220,7 +220,7 @@ GET information about multiple VNF instances using Filter ... Test title: GET information about multiple VNF instances using Filter ... Test objective: The objective is to query information about multiple VNF instances using filter ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -233,7 +233,7 @@ POST Create a new vnfInstance with permitted authorization scope ... Test title: POST Create a new vnfInstance with permitted authorization scope ... Test objective: The objective is to create a new VNF instance resource with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF instance created @@ -248,7 +248,7 @@ POST Create a new vnfInstance with not permitted authorization scope ... Test title: POST Create a new vnfInstance with not permitted authorization scope ... Test objective: The objective is to create a new VNF instance resource with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF instance created @@ -261,7 +261,7 @@ POST Create a new vnfInstance - UNPROCESSABLE CONTENT ... Test title: POST Create a new vnfInstance - UNPROCESSABLE CONTENT ... Test objective: The objective is to test that a new VNF instance resource is not created when vnfdId of the referenced VNF package is not in ENABLED state or does not exist. ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VE ... Applicability: vnfdId of the referenced VNF package is not in ENABLED state or does not exist. ... Post-Conditions: VNF instance not created @@ -274,7 +274,7 @@ POST Create a new vnfInstance - Unauthorized ... Test title: POST Create a new vnfInstance - Unauthorized ... Test objective: The objective is to Create a new vnfInstance without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -287,7 +287,7 @@ GET information about instances with invalid resource endpoint ... Test title: GET information about VNF instances with invalid resource endpoint ... Test objective: The objective is to query information about VNF instances with invalid resource endpoint ... Pre-conditions: none - ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -295,3 +295,15 @@ GET information about instances with invalid resource endpoint Check HTTP Response Status Code Is 404 Check HTTP Response Body Json Schema Is ProblemDetails +GET information about multiple VNF instances - Unauthorized + [Documentation] Test ID: 7.3.1.1.22 + ... Test title: GET information about multiple VNF instances - Unauthorized + ... Test objective: The objective is to query information about multiple VNF instances without authorization + ... Pre-conditions: none + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET multiple vnfInstances - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails diff --git a/SOL003/VNFLifecycleManagement-API/VNFSelectDeployableModules.robot b/SOL003/VNFLifecycleManagement-API/VNFSelectDeployableModules.robot index 2e9770f9e842c983b918c87d1695e39d3fafb64f..bbf869e0435b56e37ecf67240d88c2252ab3c673 100644 --- a/SOL003/VNFLifecycleManagement-API/VNFSelectDeployableModules.robot +++ b/SOL003/VNFLifecycleManagement-API/VNFSelectDeployableModules.robot @@ -14,7 +14,7 @@ POST Select VNF Deployable Module ... Test title: POST Select VNF Deployable Module ... Test objective: The objective is to select VNF Deployable Module ... Pre-conditions: The VNF instance resource is in INSTANTIATED state - ... Reference: Clause 5.4.26.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.26.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -28,7 +28,7 @@ POST Select VNF Deployable Module Not Found ... Test title: POST Select VNF Deployable Module Not Found ... Test objective: The objective is to test that the POST Select VNF Deployable Module fails when the resource is not present. ... Pre-conditions: none - ... Reference: Clause 5.4.26.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.26.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -41,7 +41,7 @@ POST Select VNF Deployable Module with conflict (Not Instantiated) ... Test title: POST Operate a vnfInstance Conflict (Not-Instantiated) ... Test objective: The objective is to test that the operation fails when there is a conflict with the resource state. ... Pre-conditions: the VNF instance resource is in NOT-INSTANTIATED state - ... Reference: Clause 5.4.26.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.26.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -54,7 +54,7 @@ GET Select VNF Deployable Module - Method not implemented ... Test title: GET Select VNF Deployable Module - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.26.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.26.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -66,7 +66,7 @@ PUT Select VNF Deployable Module - Method not implemented ... Test title: PUT Select VNF Deployable Module - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.26.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.26.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -78,7 +78,7 @@ PATCH Select VNF Deployable Module - Method Not implemented ... Test title: PATCH Select VNF Deployable Module - Method Not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.26.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.26.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -90,7 +90,7 @@ DELETE Select VNF Deployable Module - Method Not implemented ... Test title: DELETE Select VNF Deployable Module - Method Not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.26.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.26.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -102,7 +102,7 @@ POST Select VNF Deployable Module - Unauthorized ... Test title: POST Select VNF Deployable Module - Unauthorized ... Test objective: The objective is to test that POST method cannot trigger a Select VNF Deployable Module without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.26.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.26.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/VNFSnapshots.robot b/SOL003/VNFLifecycleManagement-API/VNFSnapshots.robot index 523dd1ab52278286b8a7235005ebeb363ade4340..c4ac3bde9102d62b4baa2c7be01a657d88304500 100644 --- a/SOL003/VNFLifecycleManagement-API/VNFSnapshots.robot +++ b/SOL003/VNFLifecycleManagement-API/VNFSnapshots.robot @@ -7,7 +7,7 @@ POST Create a new VNF Snapshot ... Test title: POST Create a new VNF Snapshot ... Test objective: The objective is to create a new VNF snapshot ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF snapshot is created @@ -22,7 +22,7 @@ GET information about multiple VNF Snapshots ... Test title: GET information about multiple VNF Snapshots ... Test objective: The objective is to get information about multiples VNF snapshots ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -35,7 +35,7 @@ GET information about multiple VNF Snapshots Bad Request Invalid attribute-based ... Test title: GET information about multiple VNF Snapshots Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is to get information about multiples VNF Snapshots with Invalid attribute-based filtering parameters ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -48,7 +48,7 @@ GET information about multiple VNF Snapshots Bad Request Invalid attribute selec ... Test title: GET information about multiple VNF Snapshots Bad Request Invalid attribute selector ... Test objective: The objective is to get information about multiples VNF Snapshots with Invalid attribute-based filtering parameters ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -61,7 +61,7 @@ GET information about multiple VNF Snapshots with "all_fields" attribute selecto ... Test title: GET information about multiple VNF Snapshots with "all_fields" attribute selector ... Test objective: The objective is to query information about multiple VNF Snapshots ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -74,7 +74,7 @@ GET information about multiple VNF Snapshots with "exclude_default" attribute se ... Test title: GET information about multiple VNF Snapshots with "exclude_default" attribute selector ... Test objective: The objective is to query information about multiple VNF Snapshots ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -87,7 +87,7 @@ GET information about multiple VNF Snapshots with "fields" attribute selector ... Test title: GET information about multiple VNF Snapshots with "fields" attribute selector ... Test objective: The objective is to query information about multiple VNF Snapshots ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -100,7 +100,7 @@ GET information about multiple VNF Snapshots with "exclude_default" and "fields" ... Test title: GET information about multiple VNF Snapshots with "exclude_default" and "fields" attribute selector ... Test objective: The objective is to query information about multiple VNF Snapshots ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -113,7 +113,7 @@ GET information about multiple VNF Snapshots with "exclude_fields" attribute sel ... Test title: GET information about multiple VNF Snapshots with "exclude_fields" attribute selector ... Test objective: The objective is to query information about multiple VNF Snapshots ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -126,7 +126,7 @@ GET VNF Snapshots - Bad Request Response too Big ... Test title: GET VNF Snapshots - Bad Request Response too Big ... Test objective: The objective is test that the retrieval of existing VNF Snapshots list fails because response is too big, and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: VNFM does not support paged response. ... Post-Conditions: none @@ -139,7 +139,7 @@ GET VNF Snapshots as Paged Response ... Test title: GET VNF Snapshots as Paged Response ... Test objective: The objective is to test that GET method retrieves the list of existing VNF Snapshots as paged response. ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: VNFM supports paged response. ... Post-Conditions: none @@ -152,7 +152,7 @@ PUT VNF Snapshots - Method not implemented ... Test title: PUT VNF Snapshots - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -164,7 +164,7 @@ PATCH VNF Snapshots - Method not implemented ... Test title: PATCH VNF Snapshots - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -176,7 +176,7 @@ DELETE VNF Snapshots - Method not implemented ... Test title: DELETE VNF Snapshots - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF instance not deleted @@ -188,7 +188,7 @@ GET information about multiple VNF Snapshots using Filter ... Test title: GET information about multiple VNF Snapshots using Filter ... Test objective: The objective is to get information about multiples VNF snapshots using filter ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -201,7 +201,7 @@ POST Create a new VNF Snapshot with permitted authorization scope ... Test title: POST Create a new VNF Snapshot with permitted authorization scope ... Test objective: The objective is to create a new VNF snapshot with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF snapshot is created @@ -216,7 +216,7 @@ POST Create a new VNF Snapshot with not permitted authorization scope ... Test title: POST Create a new VNF Snapshot with not permitted authorization scope ... Test objective: The objective is to create a new VNF snapshot with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF snapshot is created @@ -229,10 +229,22 @@ POST Create a new VNF Snapshot - Unauthorized ... Test title: POST Create a new VNF Snapshot - Unauthorized ... Test objective: The objective is to create a new VNF snapshot without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.23.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.23.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF snapshot is created POST Create a new VNF Snapshot - Unauthorized Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +GET information about multiple VNF Snapshots - Unauthorized + [Documentation] Test ID: 7.3.1.40.19 + ... Test title: GET information about multiple VNF Snapshots - Unauthorized + ... Test objective: The objective is to get information about multiples VNF snapshots without authorization + ... Pre-conditions: none + ... Reference: Clause 5.4.23.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET multiple VNF Snapshots - Unauthorized + Check HTTP Response Status Code Is 401 Check HTTP Response Body Json Schema Is ProblemDetails \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/VNFStateSnapshot.robot b/SOL003/VNFLifecycleManagement-API/VNFStateSnapshot.robot index e75316511ba91a8fa8f44cd02f8e74ee87c57710..b7c794fcef57c41c9015a8140988de47a3358192 100644 --- a/SOL003/VNFLifecycleManagement-API/VNFStateSnapshot.robot +++ b/SOL003/VNFLifecycleManagement-API/VNFStateSnapshot.robot @@ -7,7 +7,7 @@ POST VNF State Snapshot - Method not implemented ... Test title: POST VNF State Snapshot - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -19,7 +19,7 @@ GET VNF State Snapshot - Complete File ... Test title: GET Information about an individual VNF State Snapshot - Complete File ... Test objective: The objective is to fetch the whole content of a VNF State Snapshot using GET method. ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -32,7 +32,7 @@ GET VNF State Snapshot - Partial Content ... Test title: GET VNF State Snapshot - Partial Content ... Test objective: The objective is to fetch partial content of a VNF State Snapshot by sending a range request using GET method. ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: VNFM supports range requests ... Post-Conditions: none @@ -46,7 +46,7 @@ GET VNF State Snapshot - Range Request Not Supported ... Test title: GET VNF State Snapshot - Range Request Not Supported ... Test objective: The objective is to test that the whole content of a VNF State Snapshot is delivered even with a range request when VNFM does not support range requests. ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: VNFM does not support range requests ... Post-Conditions: none @@ -60,7 +60,7 @@ GET VNF State Snapshot - Range Not Satisfiable ... Test title: GET VNF State Snapshot - Range Not Satisfiable ... Test objective: The objective is to test that an error is returned when the byte range passed in the "Range" header does not match any available byte range in the VNF State Snapshot package file. ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: VNFM supports range requests ... Post-Conditions: none @@ -72,7 +72,7 @@ GET VNF State Snapshot - Conflict ... Test title: GET VNF State Snapshot - Conflict ... Test objective: The objective is to test that an error is returned when there is a conflict with the state of the VNF snapshot resource. ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: Typically, this is due to the fact that the VNF snapshot creation process is not completed. ... Post-Conditions: none @@ -84,7 +84,7 @@ PUT VNF State Snapshot - Method not implemented ... Test title: PUT VNF State Snapshot - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: VNF State Snapshot Package not modified @@ -96,7 +96,7 @@ PATCH VNF State Snapshot - Method Not implemented ... Test title: PATCH VNF State Snapshot ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -108,7 +108,7 @@ DELETE VNF State Snapshot - Method Not implemented ... Test title: DELETE VNF State Snapshot - Method Not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -120,7 +120,7 @@ GET VNF State Snapshot - Complete File with permitted authorization scope ... Test title: GET Information about an individual VNF State Snapshot - Complete File with permitted authorization scope ... Test objective: The objective is to fetch the whole content of a VNF State Snapshot using GET method with permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -133,7 +133,7 @@ GET VNF State Snapshot - Complete File with not permitted authorization scope ... Test title: GET Information about an individual VNF State Snapshot - Complete File with not permitted authorization scope ... Test objective: The objective is to fetch the whole content of a VNF State Snapshot using GET method with not permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -146,10 +146,22 @@ GET VNF State Snapshot - Unauthorized ... Test title: GET VNF State Snapshot - Unauthorized ... Test objective: The objective is to fetch the whole content of a VNF State Snapshot using GET method without authorization. ... Pre-conditions: none - ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none GET VNF State Snapshot - Unauthorized Check HTTP Response Status Code Is 401 Check HTTP Response Body Json Schema Is ProblemDetails +GET VNF State Snapshot - Not Found + [Documentation] Test ID:7.3.1.42.13 + ... Test title: GET VNF State Snapshot - Not Found + ... Test objective: The objective is to fetch the whole content of a VNF State Snapshot using GET method with an invalid identifier. + ... Pre-conditions: none + ... Reference: Clause 5.4.25.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET VNF State Snapshot - Not Found + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot b/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot index 6245de2b45b062aabdec1b048f0cd0dbfa847458..a8cd7cdf53a0c3cc938c2d2e44c12858f1cbb4e9 100644 --- a/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot +++ b/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot @@ -595,6 +595,15 @@ GET multiple vnfInstances ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +GET multiple vnfInstances - Unauthorized + Log Query VNF The GET method queries information about multiple VNF instances without authorization. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} Get multiple vnfInstances with nextpage_opaque_marker parameter Log Get next page of subscriptions Set Headers {"Accept":"${ACCEPT}"} @@ -825,6 +834,29 @@ PATCH individual vnfInstance ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +PATCH individual vnfInstance - Unauthorized + log Trying to modify an individual VNF instance without authorization + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} + Run Keyword If ${check_descriptors} == 1 PARSE the Descriptor File + ${template}= Get File jsons/patchBodyRequest.json + ${body}= Format String ${template} vnfdId=${Descriptor_ID} vnfdVersion= ${Descriptor_Version} + Patch ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances/${vnfInstanceId} ${body} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} +PATCH individual vnfInstance - Not Found + log Trying to modify an individual VNF instance that does not exist + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + Run Keyword If ${check_descriptors} == 1 PARSE the Descriptor File + ${template}= Get File jsons/patchBodyRequest.json + ${body}= Format String ${template} vnfdId=${Descriptor_ID} vnfdVersion= ${Descriptor_Version} + Patch ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances/${notExistingVnfInstanceId} ${body} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} POST conflicting operation Log Trying to create conflicting operation. Set Headers {"Accept":"${ACCEPT}"} @@ -871,6 +903,19 @@ DELETE individual vnfInstance ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +DELETE individual vnfInstance - Unauthorized + log Trying to delete an individual VNF instance without authorization + Set Headers {"Version": "${API_VERSION}"} + Delete ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances/${vnfInstanceId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} +DELETE individual vnfInstance - Not Found + log Trying to delete an individual VNF instance that does not exist + Set Headers {"Version": "${API_VERSION}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + Delete ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances/${notExistingVnfInstanceId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} DELETE individual vnfInstance in INSTANTIATED state log Trying to delete an individual VNF instance Set Headers {"Version": "${API_VERSION}"} @@ -1116,6 +1161,18 @@ POST Scale vnfInstance to level with VNF NOT-INSTANTIATED Post ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances/${notInstantiatedVnfInstanceId}/scale_to_level ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} + +POST Scale vnfInstance to level with powerProfileId attribute + Log Trying to scale a vnf Instance to level + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + ${template}= Get File jsons/scaleVnfToLevelRequestPowerProfileId.json + ${body}= Format String ${template} powerProfileId=${powerProfileId} + Post ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} POST Scale vnfInstance to level with not existing VNF Log Trying to scale a vnf Instance to level Set Headers {"Accept":"${ACCEPT}"} @@ -2060,7 +2117,16 @@ Get subscriptions Get ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} - + +Get subscriptions - Unauthorized + Log Get the list of active subscriptions without authorization + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} Get subscriptions with nextpage_opaque_marker parameter Log Get next page of subscriptions Set Headers {"Accept":"${ACCEPT}"} @@ -2286,6 +2352,21 @@ Delete Individual subscription ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +Delete Individual subscription - Unauthorized + log Try to delete an individual subscription without authorization + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Delete ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} +Delete Individual subscription - Not found + log Try to delete an individual subscription which doesn't exist + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${Authorization_Token}"} + Delete ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${notExistingSubscriptionId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} Put Notification subscription log Trying to perform a PUT. This method should not be implemented Set Headers {"Version": "${API_VERSION}"} @@ -2888,7 +2969,14 @@ GET multiple VNF Snapshots Get ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshots ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} - +GET multiple VNF Snapshots - Unauthorized + Log Query VNF The GET method queries information about multiple VNF snapshots without authorization. + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Get ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshots + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} GET multiple VNF Snapshots with bad attribute Log Query VNF The GET method queries information about multiple VNF snapshots. Set Headers {"Accept":"${ACCEPT}"} @@ -3090,6 +3178,30 @@ PATCH individual VNF Snapshot ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +PATCH individual VNF Snapshot - Unauthorized + log Trying to perform a PATCH to modify individual VNF snapshot without authorization + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} + Set Headers {"If-Match": "${original_etag}"} + ${template} = Get File jsons/VnfSnapshotInfoModificationRequest.json + ${body}= Format String ${template} vnfSnapshotPkgId=${vnfSnapshotPkgId} + Patch ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshots/${vnfSnapshotInfoId} ${body} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH individual VNF Snapshot - Not found + log Trying to perform a PATCH to modify individual VNF snapshot with invalid identifier + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} + Set Headers {"If-Match": "${original_etag}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + ${template} = Get File jsons/VnfSnapshotInfoModificationRequest.json + ${body}= Format String ${template} vnfSnapshotPkgId=${vnfSnapshotPkgId} + Patch ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshots/${invalid_vnfSnapshotInfoId} ${body} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} PATCH individual VNF Snapshot - ETag mismatch log Trying to perform a PATCH to modify individual VNF snapshot Set Headers {"Accept":"${ACCEPT}"} @@ -3113,6 +3225,23 @@ DELETE individual VNF Snapshot ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +DELETE individual VNF Snapshot - Unauthorized + log Trying to DELETE an individual VNF Snapshot without authorization + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Delete ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshots/${vnfSnapshotInfoId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} +DELETE individual VNF Snapshot - Not found + log Trying to DELETE an individual VNF Snapshot with invalid identifier + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + Delete ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshots/${invalid_vnfSnapshotInfoId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} DELETE individual VNF Snapshot - CONFLICT log Trying to DELETE an individual VNF Snapshot that is already in use by another operation Set Headers {"Accept":"${ACCEPT}"} @@ -3245,6 +3374,14 @@ GET VNF State Snapshot - Unauthorized ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +GET VNF State Snapshot - Not Found + log Trying to fetch the complete contents of an VNF State Snapshot with an invalid identifier + Set Headers {"Accept":"${ACCEPT_OCTET}"} + Set Headers {"Version": "${API_VERSION}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + Get ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshots/${invalid_vnfSnapshotInfoId}/vnf_state_snapshot + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} PUT VNF State Snapshot log Trying to perform a PUT. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} diff --git a/SOL003/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot b/SOL003/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot index 8b04f14cc977e81fca44638d549abc323ae019ff..b1e79e17e5fb1eaceba5ed5b2f24b9ddcfce65ea 100644 --- a/SOL003/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot +++ b/SOL003/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot @@ -11,7 +11,7 @@ POST VNF LCM Operation occurrences - Method not implemented ... Test title: POST VNF LCM Operation occurrences - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -23,7 +23,7 @@ GET status information about multiple VNF LCM Operation OCC ... Test title: GET status information about multiple VNF LCM Operation OCC ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -36,7 +36,7 @@ GET status information about multiple VNF LCM Operation OCC Bad Request Invalid ... Test title: GET status information about multiple VNF LCM Operation OCC Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is to test that GET method fail retrieving status information about multiple VNF lifecycle management operation occurrences because attribute is invalid. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -49,7 +49,7 @@ GET status information about multiple VNF LCM Operation OCC Bad Request Invalid ... Test title: GET status information about multiple VNF LCM Operation OCC Bad Request Invalid attribute selector ... Test objective: The objective is to test that GET method fail retrieving status information about multiple VNF lifecycle management operation occurrences because attribute is invalid. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -62,7 +62,7 @@ GET status information about multiple VNF LCM Operation OCC with "all_fields" ... Test title: GET status information about multiple VNF LCM Operation OCC with "all_fields" ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -75,7 +75,7 @@ GET status information about multiple VNF LCM Operation OCC with "exlude_default ... Test title: GET status information about multiple VNF LCM Operation OCC with "exclude_default" ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -88,7 +88,7 @@ GET status information about multiple VNF LCM Operation OCC with "fields" ... Test title: GET status information about multiple VNF LCM Operation OCC with "fields" ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -101,7 +101,7 @@ GET status information about multiple VNF LCM Operation OCC with "exclude_fields ... Test title: GET status information about multiple VNF LCM Operation OCC with "exclude_fields" ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -114,7 +114,7 @@ PUT status information about multiple VNF LCM Operation OCC - Method not impleme ... Test title: PUT status information about multiple VNF LCM Operation OCC - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -126,7 +126,7 @@ PATCH status information about multiple VNF LCM Operation OCC - Method not imple ... Test title: PATCH status information about multiple VNF LCM Operation OCC - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -138,7 +138,7 @@ DELETE status information about multiple VNF LCM Operation OCC - Method not impl ... Test title: DELETE status information about multiple VNF LCM Operation OCC - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -150,7 +150,7 @@ GET status information about multiple VNF LCM Operation OCC to get Paged Respons ... Test title: GET status information about multiple VNF LCM Operation OCC to get Paged Response ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences to get a Paged Response. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the VNF lifecycle management operation occurrences resources ... Post-Conditions: none @@ -163,7 +163,7 @@ GET information about multiple VNF LCM Operation OCC as a Paged Response with ne ... Test title: GET information about multiple VNF LCM Operation OCC as a Paged Response with nextpage_opauque_marker parameter ... Test objective: The objective is to query information about multiple VNF lifecycle management operation occurrences as a Paged Response and retrieve the next page using the nextpage_opaque_marker parameter ... Pre-conditions: A request for retrieving multiple VNF lifecycle management operation occurrences as a paged response has been successfully issued (Test ID 7.3.1.11.12) - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the VNF lifecycle management operation occurrences resources ... Post-Conditions: none @@ -175,7 +175,7 @@ GET status information about multiple VNF LCM Operation OCC - Bad Request Respon ... Test title: GET status information about multiple VNF LCM Operation OCC - Bad Request Response too Big ... Test objective: The objective is to test that GET method fail retrieving status information about multiple VNF lifecycle management operation occurrences because response is too big. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -188,7 +188,7 @@ GET status information about multiple VNF LCM Operation OCC with "exclude_defaul ... Test title: GET status information about multiple VNF LCM Operation OCC with "exclude_default" and "fields" ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -201,7 +201,7 @@ GET status information about multiple VNF LCM Operation OCC with permitted autho ... Test title: GET status information about multiple VNF LCM Operation OCC with permitted authorization scope ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences with permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -214,7 +214,7 @@ GET status information about multiple VNF LCM Operation OCC with not permitted a ... Test title: GET status information about multiple VNF LCM Operation OCC with not permitted authorization scope ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences with not permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -227,7 +227,7 @@ GET status information about multiple VNF LCM operation occurrences - Unauthoriz ... Test title: GET status information about multiple VNF LCM operation occurrences - Unauthorized ... Test objective: The objective is to test that GET method cannot retrieve Query status information about multiple VNF lifecycle management operation occurrences without authorization ... Pre-conditions: none - ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleManagement-API/descriptors/SOL001/VNFD/vnfd_SOL001.yaml b/SOL003/VNFLifecycleManagement-API/descriptors/SOL001/VNFD/vnfd_SOL001.yaml index bc9413093f9855844eb046e2826465a8161e4df8..3b8103f8d261f180b0babcef58be6fdea30295f3 100644 --- a/SOL003/VNFLifecycleManagement-API/descriptors/SOL001/VNFD/vnfd_SOL001.yaml +++ b/SOL003/VNFLifecycleManagement-API/descriptors/SOL001/VNFD/vnfd_SOL001.yaml @@ -44,7 +44,7 @@ node_types: type: list entry_schema: type: string - default: [ 'etsivnfm:v5.2.1' ] + default: [ 'etsivnfm:v5.3.1' ] interfaces: Vnflcm: type: "tosca.interfaces.nfv.Vnflcm" diff --git a/SOL003/VNFLifecycleManagement-API/environment/variables.txt b/SOL003/VNFLifecycleManagement-API/environment/variables.txt index 6d623e0a3ea9d510995d7e05959ddfb9ee2aabcf..9a5d8f0a8ec62440e86afd92ee5e13a264f5c4e3 100644 --- a/SOL003/VNFLifecycleManagement-API/environment/variables.txt +++ b/SOL003/VNFLifecycleManagement-API/environment/variables.txt @@ -59,7 +59,7 @@ ${VNF_STATE_SNAPSHOT_NOT_PERMITTED_SCOPE} vnflcm:v2:vnf_state_snapshot:invalid ${apiRoot} / ${apiName} vnflcm ${apiMajorVersion} v2 -${API_VERSION} 2.15.0 +${API_VERSION} 2.16.0 ${CancelMode} GRACEFUL ${VNFM_DUPLICATION} 0 @@ -87,8 +87,10 @@ ${notInstantiatedVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f ${notExistingVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f ${vnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f ${subscriptionId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${notExistingSubscriptionId} notExistingSubscriptionId ${vnfInstanceId_NoSnapshotTask} no-snapshot-task-supported ${vnfSnapshotInfoId} +${invalid_vnfSnapshotInfoId} invalid_vnfSnapshotInfoId ${vnfSnapshotInfoId_InUse} snapshotId-of-a-resource-AlreadyInUse-bySomeOther-operation ${vnfSnapshotInfoId_creationIncomplete} snapshotId-of-a-resource-whose-creation-isn't-complete ${invalidVnfSnapshotInfoId} @@ -156,9 +158,10 @@ ${HEADER_TEST_SUPPORTED} 0 ${scaleInfo} ${element} ${aspectId} +${powerProfileId} ${callbackResp} localhost - +${invalid_callbackResp} invalid_callbackResp ${descriptorType} SOL001 ${check_descriptors} 1 diff --git a/SOL003/VNFLifecycleManagement-API/jsons/scaleVnfToLevelRequestPowerProfileId.json b/SOL003/VNFLifecycleManagement-API/jsons/scaleVnfToLevelRequestPowerProfileId.json new file mode 100644 index 0000000000000000000000000000000000000000..84a9319f65b21194da6f6cf28866ad5413c869a0 --- /dev/null +++ b/SOL003/VNFLifecycleManagement-API/jsons/scaleVnfToLevelRequestPowerProfileId.json @@ -0,0 +1,3 @@ +{{ + "powerProfileId": "{powerProfileId}" +}} \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOpOcc.schema.json b/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOpOcc.schema.json index bc828494d2d69037c358f62622ee10c348c532a1..944556f9d47c7f56b05b37af28fbf4eec4058934 100644 --- a/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOpOcc.schema.json +++ b/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOpOcc.schema.json @@ -1055,6 +1055,31 @@ } } } + }, + "cpSecurityGroupData": { + "description": "Parameters for modifying and overriding security groups information bound to this CP. The parameters identify which \"SecurityGroupRule\" specified in the VNFD is activated/deactivated and for an activated security group rule the values of attributes defined in the VNFD that can be overridden such as \"portRangeMin\" and \"portRangeMax\". If no security group configuration is provided for a given \"SecurityGroupRule\" specified in the VNFD as part of this attribute, the VNFM shall use the configuration as specified in the VNFD.\n", + "type": "object", + "required": [ + "securityGroupRuleId" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "isActivated": { + "description": "Indicates whether the rule is to be active (true) or inactive (false). If no attribute value is provided, the Security Group Rule is activated by default.\n", + "type": "boolean" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + } + } } } } diff --git a/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOpOccs.schema.json b/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOpOccs.schema.json index 31dfac51430bb99131f5409b6aa880c73218cd8d..c323a0c7d581e8ecafa3d82794d494ca21cd363c 100644 --- a/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOpOccs.schema.json +++ b/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOpOccs.schema.json @@ -1057,6 +1057,31 @@ } } } + }, + "cpSecurityGroupData": { + "description": "Parameters for modifying and overriding security groups information bound to this CP. The parameters identify which \"SecurityGroupRule\" specified in the VNFD is activated/deactivated and for an activated security group rule the values of attributes defined in the VNFD that can be overridden such as \"portRangeMin\" and \"portRangeMax\". If no security group configuration is provided for a given \"SecurityGroupRule\" specified in the VNFD as part of this attribute, the VNFM shall use the configuration as specified in the VNFD.\n", + "type": "object", + "required": [ + "securityGroupRuleId" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "isActivated": { + "description": "Indicates whether the rule is to be active (true) or inactive (false). If no attribute value is provided, the Security Group Rule is activated by default.\n", + "type": "boolean" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + } + } } } } diff --git a/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOperationOccurrenceNotification.schema.json b/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOperationOccurrenceNotification.schema.json index 48d7b9e70e8ce124c6e4dbded57239b51db9b4f4..4df8c56a1477cbfd4646193ef5a51e7246c51c6a 100644 --- a/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOperationOccurrenceNotification.schema.json +++ b/SOL003/VNFLifecycleManagement-API/schemas/VnfLcmOperationOccurrenceNotification.schema.json @@ -238,7 +238,7 @@ "type": "string" }, "vnfdId": { - "description": "Identifier of the VNFD. Shall be present in case of a \"change current VNF Package\" to identify whether the affected VL instance is associated with a VLD which is referred from the source or destination VNFD.\n", + "description": "Identifier of the VNFD. Shall be present in case of a \"change current VNF Package\" to identify whether the affected VL instance is associated with a VLD which is referred from the source or destination VNFD.\n", "type": "string" }, "changeType": { @@ -1093,6 +1093,31 @@ } } } + }, + "cpSecurityGroupData": { + "description": "Parameters for modifying and overriding security groups information bound to this CP. The parameters identify which \"SecurityGroupRule\" specified in the VNFD is activated/deactivated and for an activated security group rule the values of attributes defined in the VNFD that can be overridden such as \"portRangeMin\" and \"portRangeMax\". If no security group configuration is provided for a given \"SecurityGroupRule\" specified in the VNFD as part of this attribute, the VNFM shall use the configuration as specified in the VNFD.\n", + "type": "object", + "required": [ + "securityGroupRuleId" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "isActivated": { + "description": "Indicates whether the rule is to be active (true) or inactive (false). If no attribute value is provided, the Security Group Rule is activated by default.\n", + "type": "boolean" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + } + } } } } diff --git a/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotInfo.schema.json b/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotInfo.schema.json index 07acd76822ec3532fc40545473d72ea2f69d4119..174e97db58d1a6b435bef8475fe8442fe34886c7 100644 --- a/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotInfo.schema.json +++ b/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotInfo.schema.json @@ -49,7 +49,7 @@ "type": "string" }, "vnfInstance": { - "description": "This type represents a VNF instance.\nNOTE:\tClause B.3.2 provides examples illustrating the relationship among the different run-time \n information elements (CP, VL and link ports) used to represent the connectivity of a VNF.\n\nNOTE 1:\tModifying the value of this attribute shall not be performed when conflicts exist between \n the previous and the newly referred VNF package, i.e. when the new VNFD is changed with \n respect to the previous VNFD in other aspects than merely referencing to other VNF software \n images. In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded \n VNF Package, the values of attributes in the VnfInstance that have corresponding attributes \n in the VNFD shall be kept in sync with the values in the VNFD.\nNOTE 2:\tETSI GS NFV-SOL 001 [14] specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3:\tVNF configurable properties are sometimes also referred to as configuration parameters applicable \n to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n some are set prior to instantiation (are part of initial configuration) and can be modified later, \n and others can be set only after instantiation. The applicability of certain configuration may \n depend on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4:\tUpon creation of the VnfInstance structure, the VNFM shall create and initialize all child attributes \n of \"vnfConfigurableProperties\", \"metadata\" and \"extensions\" that were declared in the VNFD with a defined \n initial value. The defined initial values can be declared in the VNFD, and/or, in case of \"metadata\", \n obtained from the \"CreateVnfRequest\" structure. Child attributes of \"vnfConfigurableProperties\", \n \"metadata\" and \"extensions\" that have no defined initial value shall not be created, in order to be \n consistent with the semantics of the JSON Merge Patch method (see IETF RFC 7396) that interprets null \n values as deletion request.\nNOTE 5:\tIt is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a \n multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n multi-site VL instance (refer to clause 5.5.3.3).\nNOTE 6:\tEven though externally-managed internal VLs are also used for VNF-internal connectivity, they shall \n not be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\nNOTE 7: Subports need not be used for containerized VNFCs. The application container can send and receive IP \n packets with any VLAN tag as long as the network interface to connect to the secondary container cluster \n network has been configured appropriately. Thus, no individual vnfcCpInfo, except the one representing \n the trunk, need be modelled to allow traffic tagged with a particular VLAN through the connection point.\nNOTE 8: For a scaling aspect whose related VNFCs have not been instantiated due to the selection of deployable \n modules, the \"scaleStatus\" indicates the scale level that would be applicable to the aspect if a VNF LCM \n operation changes the selected deployable modules and the related VNFCs are instantiated, unless the \n VNF LCM operation explicitly indicates the scale level for the aspect.\n", + "description": "This type represents a VNF instance.\nNOTE:\tClause B.3.2 provides examples illustrating the relationship among the different run-time \n information elements (CP, VL and link ports) used to represent the connectivity of a VNF.\n\nNOTE 1:\tModifying the value of this attribute shall not be performed when conflicts exist between \n the previous and the newly referred VNF package, i.e. when the new VNFD is changed with \n respect to the previous VNFD in other aspects than merely referencing to other VNF software \n images. In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded \n VNF Package, the values of attributes in the VnfInstance that have corresponding attributes \n in the VNFD shall be kept in sync with the values in the VNFD.\nNOTE 2:\tETSI GS NFV-SOL 001 [14] specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3:\tVNF configurable properties are sometimes also referred to as configuration parameters applicable \n to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n some are set prior to instantiation (are part of initial configuration) and can be modified later, \n and others can be set only after instantiation. The applicability of certain configuration may \n depend on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4:\tUpon creation of the VnfInstance structure, the VNFM shall create and initialize all child attributes \n of \"vnfConfigurableProperties\", \"metadata\" and \"extensions\" that were declared in the VNFD with a defined \n initial value. The defined initial values can be declared in the VNFD, and/or, in case of \"metadata\", \n obtained from the \"CreateVnfRequest\" structure. Child attributes of \"vnfConfigurableProperties\", \n \"metadata\" and \"extensions\" that have no defined initial value shall not be created, in order to be \n consistent with the semantics of the JSON Merge Patch method (see IETF RFC 7396) that interprets null \n values as deletion request.\nNOTE 5:\tIt is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a \n multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n multi-site VL instance (refer to clause 5.5.3.3).\nNOTE 6:\tEven though externally-managed internal VLs are also used for VNF-internal connectivity, they shall \n not be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\nNOTE 7: Subports need not be used for containerized VNFCs. The application container can send and receive IP \n packets with any VLAN tag as long as the network interface to connect to the secondary container cluster \n network has been configured appropriately. Thus, no individual vnfcCpInfo, except the one representing \n the trunk, need be modelled to allow traffic tagged with a particular VLAN through the connection point.\nNOTE 8: For a scaling aspect whose related VNFCs have not been instantiated due to the selection of deployable \n modules, the “scaleStatus” indicates the scale level that would be applicable to the aspect if a VNF LCM \n operation changes the selected deployable modules and the related VNFCs are instantiated, unless the \n VNF LCM operation explicitly indicates the scale level for the aspect.\nNOTE 9: The recentVnfLcmOperationLinks attribute does not provide a complete historical record of LCM changes\n that a VNF instance experienced during its lifecycle. The information in this attribute should not be used to\n create a chronological order of events that cannot be inferred by looking only at the most recent operation\n occurrences due to potential gaps in timeline. This is because there can be many possible combination of\n LCM changes that a VNF may have gone through between two operation occurrences recorded in the\n recentVnfLcmOperationLinks attribute. For example, there can be many scaling related LCM changes since\n an individual VNF instance has been instantiated until the most recent scaling operation occurrence linked in\n the attribute. In another example, the most recent LCM operation occurrence related to instantiate VNF\n operation may be more recent than the one that caused the VNF instance to be terminated last time, which\n prevents the possibility to create a meaningful chronological timeline of VNF LCM events.\n", "type": "object", "required": [ "id", @@ -502,6 +502,47 @@ "STOPPED" ] }, + "vnfPowerState": { + "description": "The power state of the VNF instance. Only present if the VNF instance is in a power state or a scale status (refer to attribute \"scaleStatus\") that has an associated power profile, as defined in the VNFD.\n", + "type": "object", + "required": [ + "powerProfileId", + "name" + ], + "properties": { + "powerProfileId": { + "description": "Identifier of the power profile, as defined in the VNFD, applied to the VNF instance.\n", + "type": "string" + }, + "name": { + "description": "Name of the power profile as provided in the VNFD.\n", + "type": "string" + }, + "powerConsumptionInfo": { + "description": "Estimated power consumption information of the resources associated with this power profile, as provided in the VNFD. VNFM exposes and can use this information to control the VNF instance to operate according to the power profile and selected power state, e.g. monitoring actual energy or power consumption of the VNF instance and compare against the estimated one.\n", + "type": "object", + "required": [ + "minPowerConsumption", + "maxPowerConsumption", + "averagePowerConsumption" + ], + "properties": { + "minPowerConsumption": { + "description": "Minimum power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + }, + "maxPowerConsumption": { + "description": "Maximum power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + }, + "averagePowerConsumption": { + "description": "Average power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + } + } + } + } + }, "scaleStatus": { "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\nThis attribute shall be present if the VNF supports scaling. See clause B.2 for an explanation of VNF scaling.\nFor an aspect that has not been deployed because the related deployableModule has not been selected, it indicates the scale level that has been requested in the instantiation or in a scaling operation, or, if none has been requested in any of them, the scale level applicable to the aspect based on the default instantiation level. See note 8.\n", "type": "array", @@ -642,6 +683,11 @@ "required": [ "hugePageResources" ] + }, + { + "required": [ + "cpuPowerStateRequirements" + ] } ], "properties": { @@ -691,6 +737,27 @@ "description": "A number defined in IETF RFC 8259.\n", "type": "number" } + }, + "cpuPowerStateRequirements": { + "description": "Requirements of virtual CPU power state configuration data for the OS container resource.\nThis type provides virtual CPU power state configuration data for the virtual compute or OS container resource.\n", + "type": "object", + "required": [ + "cpuPowerStateManagementPolicy" + ], + "properties": { + "cpuPowerStateManagementPolicy": { + "description": "Indicates the policy for CPU power state management. Permitted values:\n * STATIC\n * DYNAMIC\nIn case of \"STATIC\", the virtual CPU cores are requested to be allocated to logical CPU cores according to the cpuOperationalPowerStates attribute. In case of \"DYNAMIC\", the CPU power states of virtual CPU cores can be allocated to logical CPU cores whose power states can be adjusted dynamically depending on core utilization.\n * NOTE 1: In case the value of the cpuPowerStateManagementPolicy attribute\n is \"DYNAMIC\", dynamic adjustment of CPU power states of logical CPU cores\n should adhere to the range of CPU P and C states defined in the\n cpuOperationalPowerStates attribute.\n", + "type": "string", + "enum": [ + "STATIC", + "DYNAMIC" + ] + }, + "cpuOperationalPowerStates": { + "description": "Provides the list of operational power states (i.e. P and C states) defined for the virtual CPU.\n * NOTE 2: In case the value of the cpuPowerStateManagementPolicy attribute\n is \"STATIC\", the cpuOperationalPowerStates attribute shall contain only\n one set of CPU P and C states requested for the virtual CPU.\n If the value of the cpuPowerStateManagementPolicy attribute is\n \"DYNAMIC\", multiple CPU P and C states can be defined to indicate the\n range of allowed P/C state values during dynamic power state management.\n", + "type": "object" + } + } } } } @@ -721,6 +788,11 @@ "required": [ "hugePagesRequirements" ] + }, + { + "required": [ + "cpuPowerStateRequirements" + ] } ], "properties": { @@ -747,6 +819,27 @@ "description": "A number defined in IETF RFC 8259.\n", "type": "number" } + }, + "cpuPowerStateRequirements": { + "description": "Requirements of virtual CPU power state configuration data for the virtual compute resource of a VM.\n", + "type": "object", + "required": [ + "cpuPowerStateManagementPolicy" + ], + "properties": { + "cpuPowerStateManagementPolicy": { + "description": "Indicates the policy for CPU power state management. Permitted values:\n * STATIC\n * DYNAMIC\nIn case of \"STATIC\", the virtual CPU cores are requested to be allocated to logical CPU cores according to the cpuOperationalPowerStates attribute. In case of \"DYNAMIC\", the CPU power states of virtual CPU cores can be allocated to logical CPU cores whose power states can be adjusted dynamically depending on core utilization.\n NOTE 1: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"DYNAMIC\", dynamic adjustment of CPU power states of logical CPU cores should adhere to the range of CPU P and C states defined in the \"cpuOperationalPowerStates\" attribute.\n", + "type": "string", + "enum": [ + "STATIC", + "DYNAMIC" + ] + }, + "cpuOperationalPowerStates": { + "description": "Provides the list of operational power states (i.e. P and C states) defined for the virtual CPU. \n NOTE 2: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"STATIC\", the \"cpuOperationalPowerStates\" attribute shall contain only one set of CPU P and C states requested for the virtual CPU.", + "type": "object" + } + } } } }, @@ -1010,6 +1103,47 @@ "description": "An identifier with the intention of being globally unique.\n", "type": "string" } + }, + "cpSecurityGroupInfo": { + "description": "List of active security group rules applied to this external CP instance. The type identifies which \"SecurityGroupRule\" specified in the VNFD are activated and the values of its attributes.\n", + "type": "object", + "required": [ + "securityGroupRuleId", + "etherType", + "protocol", + "portRangeMin", + "portRangeMax" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "description": { + "description": "Human readable description of the security group rule.\n", + "type": "string" + }, + "etherType": { + "description": "Indicates the protocol carried over the Ethernet layer. Permitted values: IPV4, IPV6.\n", + "type": "string", + "enum": [ + "IPV4", + "IPV6" + ] + }, + "protocol": { + "description": "Indicates the protocol carried over the IP layer. Permitted values: any protocol defined in the IANA protocol registry (refer to clause 9.10.1.2 ofd ETSI GS NFV-SOL 001 for further information).\n", + "type": "string" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule.\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule.\n", + "type": "integer" + } + } } } } @@ -1898,6 +2032,31 @@ } } } + }, + "cpSecurityGroupData": { + "description": "Parameters for modifying and overriding security groups information bound to this CP. The parameters identify which \"SecurityGroupRule\" specified in the VNFD is activated/deactivated and for an activated security group rule the values of attributes defined in the VNFD that can be overridden such as \"portRangeMin\" and \"portRangeMax\". If no security group configuration is provided for a given \"SecurityGroupRule\" specified in the VNFD as part of this attribute, the VNFM shall use the configuration as specified in the VNFD.\n", + "type": "object", + "required": [ + "securityGroupRuleId" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "isActivated": { + "description": "Indicates whether the rule is to be active (true) or inactive (false). If no attribute value is provided, the Security Group Rule is activated by default.\n", + "type": "boolean" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + } + } } } } @@ -3205,6 +3364,194 @@ } } } + }, + "recentVnfLcmOperationLinks": { + "description": "Links to the most recent LCM operation occurrences related to this resource. See note 9.\n", + "type": "object", + "properties": { + "recentVnfLcmOperation": { + "description": "Link to the most recent LCM operation occurrence of any type that has been triggered on this VNF instance, such as Instantiate, Scale or Heal.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmInstantiation": { + "description": "Link to the most recent LCM operation occurrence of type \"INSTANTIATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmScale": { + "description": "Link to the most recent LCM operation occurrence of type \"SCALE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmScaleToLevel": { + "description": "Link to the most recent LCM operation occurrence of type \"SCALE_TO_LEVEL\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeFlavour": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_FLAVOUR\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmTerminate": { + "description": "Link to the most recent LCM operation occurrence of type \"TERMINATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmHeal": { + "description": "Link to the most recent LCM operation occurrence of type \"HEAL\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmOperate": { + "description": "Link to the most recent LCM operation occurrence of type \"OPERATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeExtConn": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_EXT_CONN\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmModifyInfo": { + "description": "Link to the most recent LCM operation occurrence of type \"MODIFY_INFO\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmCreateSnapshot": { + "description": "Link to the most recent LCM operation occurrence of type \"CREATE_SNAPSHOT\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmRevertToSnapshot": { + "description": "Link to the most recent LCM operation occurrence of type \"REVERT_TO_SNAPSHOT\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeVnfPkg": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_VNFPKG\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmSelectDplMods": { + "description": "Link to the most recent LCM operation occurrence of type \"SELECT_DPL_MODS\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + } + } } } }, diff --git a/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotInfoModifications.schema.json b/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotInfoModifications.schema.json index 9bffd76279826397504ec69261f4acaa30613c65..e462496ba579297dd847757f126ddac242e96dba 100644 --- a/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotInfoModifications.schema.json +++ b/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotInfoModifications.schema.json @@ -41,7 +41,7 @@ "type": "string" }, "vnfInstance": { - "description": "This type represents a VNF instance.\nNOTE:\tClause B.3.2 provides examples illustrating the relationship among the different run-time \n information elements (CP, VL and link ports) used to represent the connectivity of a VNF.\n\nNOTE 1:\tModifying the value of this attribute shall not be performed when conflicts exist between \n the previous and the newly referred VNF package, i.e. when the new VNFD is changed with \n respect to the previous VNFD in other aspects than merely referencing to other VNF software \n images. In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded \n VNF Package, the values of attributes in the VnfInstance that have corresponding attributes \n in the VNFD shall be kept in sync with the values in the VNFD.\nNOTE 2:\tETSI GS NFV-SOL 001 [14] specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3:\tVNF configurable properties are sometimes also referred to as configuration parameters applicable \n to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n some are set prior to instantiation (are part of initial configuration) and can be modified later, \n and others can be set only after instantiation. The applicability of certain configuration may \n depend on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4:\tUpon creation of the VnfInstance structure, the VNFM shall create and initialize all child attributes \n of \"vnfConfigurableProperties\", \"metadata\" and \"extensions\" that were declared in the VNFD with a defined \n initial value. The defined initial values can be declared in the VNFD, and/or, in case of \"metadata\", \n obtained from the \"CreateVnfRequest\" structure. Child attributes of \"vnfConfigurableProperties\", \n \"metadata\" and \"extensions\" that have no defined initial value shall not be created, in order to be \n consistent with the semantics of the JSON Merge Patch method (see IETF RFC 7396) that interprets null \n values as deletion request.\nNOTE 5:\tIt is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a \n multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n multi-site VL instance (refer to clause 5.5.3.3).\nNOTE 6:\tEven though externally-managed internal VLs are also used for VNF-internal connectivity, they shall \n not be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\nNOTE 7: Subports need not be used for containerized VNFCs. The application container can send and receive IP \n packets with any VLAN tag as long as the network interface to connect to the secondary container cluster \n network has been configured appropriately. Thus, no individual vnfcCpInfo, except the one representing \n the trunk, need be modelled to allow traffic tagged with a particular VLAN through the connection point.\nNOTE 8: For a scaling aspect whose related VNFCs have not been instantiated due to the selection of deployable \n modules, the \"scaleStatus\" indicates the scale level that would be applicable to the aspect if a VNF LCM \n operation changes the selected deployable modules and the related VNFCs are instantiated, unless the \n VNF LCM operation explicitly indicates the scale level for the aspect.\n", + "description": "This type represents a VNF instance.\nNOTE:\tClause B.3.2 provides examples illustrating the relationship among the different run-time \n information elements (CP, VL and link ports) used to represent the connectivity of a VNF.\n\nNOTE 1:\tModifying the value of this attribute shall not be performed when conflicts exist between \n the previous and the newly referred VNF package, i.e. when the new VNFD is changed with \n respect to the previous VNFD in other aspects than merely referencing to other VNF software \n images. In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded \n VNF Package, the values of attributes in the VnfInstance that have corresponding attributes \n in the VNFD shall be kept in sync with the values in the VNFD.\nNOTE 2:\tETSI GS NFV-SOL 001 [14] specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3:\tVNF configurable properties are sometimes also referred to as configuration parameters applicable \n to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n some are set prior to instantiation (are part of initial configuration) and can be modified later, \n and others can be set only after instantiation. The applicability of certain configuration may \n depend on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4:\tUpon creation of the VnfInstance structure, the VNFM shall create and initialize all child attributes \n of \"vnfConfigurableProperties\", \"metadata\" and \"extensions\" that were declared in the VNFD with a defined \n initial value. The defined initial values can be declared in the VNFD, and/or, in case of \"metadata\", \n obtained from the \"CreateVnfRequest\" structure. Child attributes of \"vnfConfigurableProperties\", \n \"metadata\" and \"extensions\" that have no defined initial value shall not be created, in order to be \n consistent with the semantics of the JSON Merge Patch method (see IETF RFC 7396) that interprets null \n values as deletion request.\nNOTE 5:\tIt is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a \n multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n multi-site VL instance (refer to clause 5.5.3.3).\nNOTE 6:\tEven though externally-managed internal VLs are also used for VNF-internal connectivity, they shall \n not be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\nNOTE 7: Subports need not be used for containerized VNFCs. The application container can send and receive IP \n packets with any VLAN tag as long as the network interface to connect to the secondary container cluster \n network has been configured appropriately. Thus, no individual vnfcCpInfo, except the one representing \n the trunk, need be modelled to allow traffic tagged with a particular VLAN through the connection point.\nNOTE 8: For a scaling aspect whose related VNFCs have not been instantiated due to the selection of deployable \n modules, the “scaleStatus” indicates the scale level that would be applicable to the aspect if a VNF LCM \n operation changes the selected deployable modules and the related VNFCs are instantiated, unless the \n VNF LCM operation explicitly indicates the scale level for the aspect.\nNOTE 9: The recentVnfLcmOperationLinks attribute does not provide a complete historical record of LCM changes\n that a VNF instance experienced during its lifecycle. The information in this attribute should not be used to\n create a chronological order of events that cannot be inferred by looking only at the most recent operation\n occurrences due to potential gaps in timeline. This is because there can be many possible combination of\n LCM changes that a VNF may have gone through between two operation occurrences recorded in the\n recentVnfLcmOperationLinks attribute. For example, there can be many scaling related LCM changes since\n an individual VNF instance has been instantiated until the most recent scaling operation occurrence linked in\n the attribute. In another example, the most recent LCM operation occurrence related to instantiate VNF\n operation may be more recent than the one that caused the VNF instance to be terminated last time, which\n prevents the possibility to create a meaningful chronological timeline of VNF LCM events.\n", "type": "object", "required": [ "id", @@ -494,6 +494,47 @@ "STOPPED" ] }, + "vnfPowerState": { + "description": "The power state of the VNF instance. Only present if the VNF instance is in a power state or a scale status (refer to attribute \"scaleStatus\") that has an associated power profile, as defined in the VNFD.\n", + "type": "object", + "required": [ + "powerProfileId", + "name" + ], + "properties": { + "powerProfileId": { + "description": "Identifier of the power profile, as defined in the VNFD, applied to the VNF instance.\n", + "type": "string" + }, + "name": { + "description": "Name of the power profile as provided in the VNFD.\n", + "type": "string" + }, + "powerConsumptionInfo": { + "description": "Estimated power consumption information of the resources associated with this power profile, as provided in the VNFD. VNFM exposes and can use this information to control the VNF instance to operate according to the power profile and selected power state, e.g. monitoring actual energy or power consumption of the VNF instance and compare against the estimated one.\n", + "type": "object", + "required": [ + "minPowerConsumption", + "maxPowerConsumption", + "averagePowerConsumption" + ], + "properties": { + "minPowerConsumption": { + "description": "Minimum power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + }, + "maxPowerConsumption": { + "description": "Maximum power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + }, + "averagePowerConsumption": { + "description": "Average power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + } + } + } + } + }, "scaleStatus": { "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\nThis attribute shall be present if the VNF supports scaling. See clause B.2 for an explanation of VNF scaling.\nFor an aspect that has not been deployed because the related deployableModule has not been selected, it indicates the scale level that has been requested in the instantiation or in a scaling operation, or, if none has been requested in any of them, the scale level applicable to the aspect based on the default instantiation level. See note 8.\n", "type": "array", @@ -634,6 +675,11 @@ "required": [ "hugePageResources" ] + }, + { + "required": [ + "cpuPowerStateRequirements" + ] } ], "properties": { @@ -683,6 +729,27 @@ "description": "A number defined in IETF RFC 8259.\n", "type": "number" } + }, + "cpuPowerStateRequirements": { + "description": "Requirements of virtual CPU power state configuration data for the OS container resource.\nThis type provides virtual CPU power state configuration data for the virtual compute or OS container resource.\n", + "type": "object", + "required": [ + "cpuPowerStateManagementPolicy" + ], + "properties": { + "cpuPowerStateManagementPolicy": { + "description": "Indicates the policy for CPU power state management. Permitted values:\n * STATIC\n * DYNAMIC\nIn case of \"STATIC\", the virtual CPU cores are requested to be allocated to logical CPU cores according to the cpuOperationalPowerStates attribute. In case of \"DYNAMIC\", the CPU power states of virtual CPU cores can be allocated to logical CPU cores whose power states can be adjusted dynamically depending on core utilization.\n * NOTE 1: In case the value of the cpuPowerStateManagementPolicy attribute\n is \"DYNAMIC\", dynamic adjustment of CPU power states of logical CPU cores\n should adhere to the range of CPU P and C states defined in the\n cpuOperationalPowerStates attribute.\n", + "type": "string", + "enum": [ + "STATIC", + "DYNAMIC" + ] + }, + "cpuOperationalPowerStates": { + "description": "Provides the list of operational power states (i.e. P and C states) defined for the virtual CPU. \n NOTE 2: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"STATIC\", the \"cpuOperationalPowerStates\" attribute shall contain only one set of CPU P and C states requested for the virtual CPU. If the value of the \"cpuPowerStateManagementPolicy\" attribute is \"DYNAMIC\", multiple CPU P and C states can be defined to indicate the range of allowed P/C state values during dynamic power state management.\n", + "type": "object" + } + } } } } @@ -713,6 +780,11 @@ "required": [ "hugePagesRequirements" ] + }, + { + "required": [ + "cpuPowerStateRequirements" + ] } ], "properties": { @@ -739,6 +811,27 @@ "description": "A number defined in IETF RFC 8259.\n", "type": "number" } + }, + "cpuPowerStateRequirements": { + "description": "Requirements of virtual CPU power state configuration data for the virtual compute resource.", + "type": "object", + "required": [ + "cpuPowerStateManagementPolicy" + ], + "properties": { + "cpuPowerStateManagementPolicy": { + "description": "Indicates the policy for CPU power state management. Permitted values:\n * STATIC\n * DYNAMIC\nIn case of \"STATIC\", the virtual CPU cores are requested to be allocated to logical CPU cores according to the cpuOperationalPowerStates attribute. In case of \"DYNAMIC\", the CPU power states of virtual CPU cores can be allocated to logical CPU cores whose power states can be adjusted dynamically depending on core utilization.\n * NOTE 1: In case the value of the cpuPowerStateManagementPolicy attribute\n is \"DYNAMIC\", dynamic adjustment of CPU power states of logical CPU cores\n should adhere to the range of CPU P and C states defined in the\n cpuOperationalPowerStates attribute.\n", + "type": "string", + "enum": [ + "STATIC", + "DYNAMIC" + ] + }, + "cpuOperationalPowerStates": { + "description": "Provides the list of operational power states (i.e. P and C states) defined for the virtual CPU .\n * NOTE 2: In case the value of the cpuPowerStateManagementPolicy attribute\n is \"STATIC\", the cpuOperationalPowerStates attribute shall contain only\n one set of CPU P and C states requested for the virtual CPU.\n If the value of the cpuPowerStateManagementPolicy attribute is\n \"DYNAMIC\", multiple CPU P and C states can be defined to indicate the\n range of allowed P/C state values during dynamic power state management.\n", + "type": "object" + } + } } } }, @@ -1002,6 +1095,47 @@ "description": "An identifier with the intention of being globally unique.\n", "type": "string" } + }, + "cpSecurityGroupInfo": { + "description": "List of active security group rules applied to this external CP instance. The type identifies which \"SecurityGroupRule\" specified in the VNFD are activated and the values of its attributes.\n", + "type": "object", + "required": [ + "securityGroupRuleId", + "etherType", + "protocol", + "portRangeMin", + "portRangeMax" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "description": { + "description": "Human readable description of the security group rule.\n", + "type": "string" + }, + "etherType": { + "description": "Indicates the protocol carried over the Ethernet layer. Permitted values: IPV4, IPV6.\n", + "type": "string", + "enum": [ + "IPV4", + "IPV6" + ] + }, + "protocol": { + "description": "Indicates the protocol carried over the IP layer. Permitted values: any protocol defined in the IANA protocol registry (refer to clause 9.10.1.2 ofd ETSI GS NFV-SOL 001 for further information).\n", + "type": "string" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule.\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule.\n", + "type": "integer" + } + } } } } @@ -1193,7 +1327,7 @@ } }, "vnfLinkPortId": { - "description": "Identifier of the \"VnfLinkPortInfo\" structure in the \"VnfVirtualLinkResourceInfo\" or \"ExtManagedVirtualLinkInfo\" structure. Shall be present if the CP is associated with a link port on an internal VL (including externally-managed internal VL).\n", + "description": "Identifier of the \"VnfLinkPortInfo\" structure in the \"VnfVirtualLinkResourceInfo\" or \"ExtManagedVirtualLinkInfo\" structure. Shall be present if the CP is associated with a link port on an internal VL (including externally-managed internal VL).\n", "type": "string" }, "metadata": { @@ -1890,6 +2024,31 @@ } } } + }, + "cpSecurityGroupData": { + "description": "Parameters for modifying and overriding security groups information bound to this CP. The parameters identify which \"SecurityGroupRule\" specified in the VNFD is activated/deactivated and for an activated security group rule the values of attributes defined in the VNFD that can be overridden such as \"portRangeMin\" and \"portRangeMax\". If no security group configuration is provided for a given \"SecurityGroupRule\" specified in the VNFD as part of this attribute, the VNFM shall use the configuration as specified in the VNFD.\n", + "type": "object", + "required": [ + "securityGroupRuleId" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "isActivated": { + "description": "Indicates whether the rule is to be active (true) or inactive (false). If no attribute value is provided, the Security Group Rule is activated by default.\n", + "type": "boolean" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + } + } } } } @@ -3197,6 +3356,194 @@ } } } + }, + "recentVnfLcmOperationLinks": { + "description": "Links to the most recent LCM operation occurrences related to this resource. See note 9.\n", + "type": "object", + "properties": { + "recentVnfLcmOperation": { + "description": "Link to the most recent LCM operation occurrence of any type that has been triggered on this VNF instance, such as Instantiate, Scale or Heal.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmInstantiation": { + "description": "Link to the most recent LCM operation occurrence of type \"INSTANTIATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmScale": { + "description": "Link to the most recent LCM operation occurrence of type \"SCALE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmScaleToLevel": { + "description": "Link to the most recent LCM operation occurrence of type \"SCALE_TO_LEVEL\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeFlavour": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_FLAVOUR\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmTerminate": { + "description": "Link to the most recent LCM operation occurrence of type \"TERMINATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmHeal": { + "description": "Link to the most recent LCM operation occurrence of type \"HEAL\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmOperate": { + "description": "Link to the most recent LCM operation occurrence of type \"OPERATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeExtConn": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_EXT_CONN\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmModifyInfo": { + "description": "Link to the most recent LCM operation occurrence of type \"MODIFY_INFO\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmCreateSnapshot": { + "description": "Link to the most recent LCM operation occurrence of type \"CREATE_SNAPSHOT\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmRevertToSnapshot": { + "description": "Link to the most recent LCM operation occurrence of type \"REVERT_TO_SNAPSHOT\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeVnfPkg": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_VNFPKG\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmSelectDplMods": { + "description": "Link to the most recent LCM operation occurrence of type \"SELECT_DPL_MODS\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + } + } } } }, diff --git a/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotsInfo.schema.json b/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotsInfo.schema.json index 853ec3c0344deea9fdd89fcff551c6ab148f72de..9c86a55d0674ea2822cadce3ef274ea11f27a309 100644 --- a/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotsInfo.schema.json +++ b/SOL003/VNFLifecycleManagement-API/schemas/VnfSnapshotsInfo.schema.json @@ -51,7 +51,7 @@ "type": "string" }, "vnfInstance": { - "description": "This type represents a VNF instance.\nNOTE:\tClause B.3.2 provides examples illustrating the relationship among the different run-time \n information elements (CP, VL and link ports) used to represent the connectivity of a VNF.\n\nNOTE 1:\tModifying the value of this attribute shall not be performed when conflicts exist between \n the previous and the newly referred VNF package, i.e. when the new VNFD is changed with \n respect to the previous VNFD in other aspects than merely referencing to other VNF software \n images. In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded \n VNF Package, the values of attributes in the VnfInstance that have corresponding attributes \n in the VNFD shall be kept in sync with the values in the VNFD.\nNOTE 2:\tETSI GS NFV-SOL 001 [14] specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3:\tVNF configurable properties are sometimes also referred to as configuration parameters applicable \n to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n some are set prior to instantiation (are part of initial configuration) and can be modified later, \n and others can be set only after instantiation. The applicability of certain configuration may \n depend on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4:\tUpon creation of the VnfInstance structure, the VNFM shall create and initialize all child attributes \n of \"vnfConfigurableProperties\", \"metadata\" and \"extensions\" that were declared in the VNFD with a defined \n initial value. The defined initial values can be declared in the VNFD, and/or, in case of \"metadata\", \n obtained from the \"CreateVnfRequest\" structure. Child attributes of \"vnfConfigurableProperties\", \n \"metadata\" and \"extensions\" that have no defined initial value shall not be created, in order to be \n consistent with the semantics of the JSON Merge Patch method (see IETF RFC 7396) that interprets null \n values as deletion request.\nNOTE 5:\tIt is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a \n multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n multi-site VL instance (refer to clause 5.5.3.3).\nNOTE 6:\tEven though externally-managed internal VLs are also used for VNF-internal connectivity, they shall \n not be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\nNOTE 7: Subports need not be used for containerized VNFCs. The application container can send and receive IP \n packets with any VLAN tag as long as the network interface to connect to the secondary container cluster \n network has been configured appropriately. Thus, no individual vnfcCpInfo, except the one representing \n the trunk, need be modelled to allow traffic tagged with a particular VLAN through the connection point.\nNOTE 8: For a scaling aspect whose related VNFCs have not been instantiated due to the selection of deployable \n modules, the \"scaleStatus\" indicates the scale level that would be applicable to the aspect if a VNF LCM \n operation changes the selected deployable modules and the related VNFCs are instantiated, unless the \n VNF LCM operation explicitly indicates the scale level for the aspect.\n", + "description": "This type represents a VNF instance.\nNOTE:\tClause B.3.2 provides examples illustrating the relationship among the different run-time \n information elements (CP, VL and link ports) used to represent the connectivity of a VNF.\n\nNOTE 1:\tModifying the value of this attribute shall not be performed when conflicts exist between \n the previous and the newly referred VNF package, i.e. when the new VNFD is changed with \n respect to the previous VNFD in other aspects than merely referencing to other VNF software \n images. In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded \n VNF Package, the values of attributes in the VnfInstance that have corresponding attributes \n in the VNFD shall be kept in sync with the values in the VNFD.\nNOTE 2:\tETSI GS NFV-SOL 001 [14] specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3:\tVNF configurable properties are sometimes also referred to as configuration parameters applicable \n to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n some are set prior to instantiation (are part of initial configuration) and can be modified later, \n and others can be set only after instantiation. The applicability of certain configuration may \n depend on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4:\tUpon creation of the VnfInstance structure, the VNFM shall create and initialize all child attributes \n of \"vnfConfigurableProperties\", \"metadata\" and \"extensions\" that were declared in the VNFD with a defined \n initial value. The defined initial values can be declared in the VNFD, and/or, in case of \"metadata\", \n obtained from the \"CreateVnfRequest\" structure. Child attributes of \"vnfConfigurableProperties\", \n \"metadata\" and \"extensions\" that have no defined initial value shall not be created, in order to be \n consistent with the semantics of the JSON Merge Patch method (see IETF RFC 7396) that interprets null \n values as deletion request.\nNOTE 5:\tIt is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a \n multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n multi-site VL instance (refer to clause 5.5.3.3).\nNOTE 6:\tEven though externally-managed internal VLs are also used for VNF-internal connectivity, they shall \n not be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\nNOTE 7: Subports need not be used for containerized VNFCs. The application container can send and receive IP \n packets with any VLAN tag as long as the network interface to connect to the secondary container cluster \n network has been configured appropriately. Thus, no individual vnfcCpInfo, except the one representing \n the trunk, need be modelled to allow traffic tagged with a particular VLAN through the connection point.\nNOTE 8: For a scaling aspect whose related VNFCs have not been instantiated due to the selection of deployable \n modules, the “scaleStatus” indicates the scale level that would be applicable to the aspect if a VNF LCM \n operation changes the selected deployable modules and the related VNFCs are instantiated, unless the \n VNF LCM operation explicitly indicates the scale level for the aspect.\nNOTE 9: The recentVnfLcmOperationLinks attribute does not provide a complete historical record of LCM changes\n that a VNF instance experienced during its lifecycle. The information in this attribute should not be used to\n create a chronological order of events that cannot be inferred by looking only at the most recent operation\n occurrences due to potential gaps in timeline. This is because there can be many possible combination of\n LCM changes that a VNF may have gone through between two operation occurrences recorded in the\n recentVnfLcmOperationLinks attribute. For example, there can be many scaling related LCM changes since\n an individual VNF instance has been instantiated until the most recent scaling operation occurrence linked in\n the attribute. In another example, the most recent LCM operation occurrence related to instantiate VNF\n operation may be more recent than the one that caused the VNF instance to be terminated last time, which\n prevents the possibility to create a meaningful chronological timeline of VNF LCM events.\n", "type": "object", "required": [ "id", @@ -504,6 +504,47 @@ "STOPPED" ] }, + "vnfPowerState": { + "description": "The power state of the VNF instance. Only present if the VNF instance is in a power state or a scale status (refer to attribute \"scaleStatus\") that has an associated power profile, as defined in the VNFD.\n", + "type": "object", + "required": [ + "powerProfileId", + "name" + ], + "properties": { + "powerProfileId": { + "description": "Identifier of the power profile, as defined in the VNFD, applied to the VNF instance.\n", + "type": "string" + }, + "name": { + "description": "Name of the power profile as provided in the VNFD.\n", + "type": "string" + }, + "powerConsumptionInfo": { + "description": "Estimated power consumption information of the resources associated with this power profile, as provided in the VNFD. VNFM exposes and can use this information to control the VNF instance to operate according to the power profile and selected power state, e.g. monitoring actual energy or power consumption of the VNF instance and compare against the estimated one.\n", + "type": "object", + "required": [ + "minPowerConsumption", + "maxPowerConsumption", + "averagePowerConsumption" + ], + "properties": { + "minPowerConsumption": { + "description": "Minimum power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + }, + "maxPowerConsumption": { + "description": "Maximum power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + }, + "averagePowerConsumption": { + "description": "Average power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + } + } + } + } + }, "scaleStatus": { "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\nThis attribute shall be present if the VNF supports scaling. See clause B.2 for an explanation of VNF scaling.\nFor an aspect that has not been deployed because the related deployableModule has not been selected, it indicates the scale level that has been requested in the instantiation or in a scaling operation, or, if none has been requested in any of them, the scale level applicable to the aspect based on the default instantiation level. See note 8.\n", "type": "array", @@ -644,6 +685,11 @@ "required": [ "hugePageResources" ] + }, + { + "required": [ + "cpuPowerStateRequirements" + ] } ], "properties": { @@ -693,6 +739,27 @@ "description": "A number defined in IETF RFC 8259.\n", "type": "number" } + }, + "cpuPowerStateRequirements": { + "description": "Requirements of virtual CPU power state configuration data for the OS container resource.\nThis type provides virtual CPU power state configuration data for the virtual compute or OS container resource.\n", + "type": "object", + "required": [ + "cpuPowerStateManagementPolicy" + ], + "properties": { + "cpuPowerStateManagementPolicy": { + "description": "Indicates the policy for CPU power state management. Permitted values:\n * STATIC\n * DYNAMIC\nIn case of \"STATIC\", the virtual CPU cores are requested to be allocated to logical CPU cores according to the cpuOperationalPowerStates attribute. In case of \"DYNAMIC\", the CPU power states of virtual CPU cores can be allocated to logical CPU cores whose power states can be adjusted dynamically depending on core utilization.\n NOTE 1: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"DYNAMIC\", dynamic adjustment of CPU power states of logical CPU cores should adhere to the range of CPU P and C states defined in the \"cpuOperationalPowerStates\" attribute.\n", + "type": "string", + "enum": [ + "STATIC", + "DYNAMIC" + ] + }, + "cpuOperationalPowerStates": { + "description": "Provides the list of operational power states (i.e. P and C states) defined for the virtual CPU. \n NOTE 2: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"STATIC\", the \"cpuOperationalPowerStates\" attribute shall contain only one set of CPU P and C states requested for the virtual CPU. If the value of the \"cpuPowerStateManagementPolicy\" attribute is \"DYNAMIC\", multiple CPU P and C states can be defined to indicate the range of allowed P/C state values during dynamic power state management.\n", + "type": "object" + } + } } } } @@ -723,6 +790,11 @@ "required": [ "hugePagesRequirements" ] + }, + { + "required": [ + "cpuPowerStateRequirements" + ] } ], "properties": { @@ -749,7 +821,26 @@ "description": "A number defined in IETF RFC 8259.\n", "type": "number" } - } + }, + "cpuPowerStateRequirements": { + "description": "Requirements of virtual CPU power state configuration data for the virtual compute resource of a VM.\n", + "type": "object", + "required": [ + "cpuPowerStateManagementPolicy" + ], + "properties": { + "cpuPowerStateManagementPolicy": { + "description": "Indicates the policy for CPU power state management. Permitted values:\n * STATIC\n * DYNAMIC\nIn case of \"STATIC\", the virtual CPU cores are requested to be allocated to logical CPU cores according to the cpuOperationalPowerStates attribute. In case of \"DYNAMIC\", the CPU power states of virtual CPU cores can be allocated to logical CPU cores whose power states can be adjusted dynamically depending on core utilization.\n NOTE 1: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"DYNAMIC\", dynamic adjustment of CPU power states of logical CPU cores should adhere to the range of CPU P and C states defined in the \"cpuOperationalPowerStates\" attribute.\n", + "type": "string", + "enum": [ + "STATIC", + "DYNAMIC" + ] + }, + "cpuOperationalPowerStates": { + "description": "Provides the list of operational power states (i.e. P and C states) defined for the virtual CPU. \n NOTE 2: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"STATIC\", the \"cpuOperationalPowerStates\" attribute shall contain only one set of CPU P and C states requested for the virtual CPU. If the value of the \"cpuPowerStateManagementPolicy\" attribute is \"DYNAMIC\", multiple CPU P and C states can be defined to indicate the range of allowed P/C state values during dynamic power state management.\n", + "type": "object" + } } }, "virtualStorageDescData": { @@ -1012,6 +1103,47 @@ "description": "An identifier with the intention of being globally unique.\n", "type": "string" } + }, + "cpSecurityGroupInfo": { + "description": "List of active security group rules applied to this external CP instance. The type identifies which \"SecurityGroupRule\" specified in the VNFD are activated and the values of its attributes.\n", + "type": "object", + "required": [ + "securityGroupRuleId", + "etherType", + "protocol", + "portRangeMin", + "portRangeMax" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "description": { + "description": "Human readable description of the security group rule.\n", + "type": "string" + }, + "etherType": { + "description": "Indicates the protocol carried over the Ethernet layer. Permitted values: IPV4, IPV6.\n", + "type": "string", + "enum": [ + "IPV4", + "IPV6" + ] + }, + "protocol": { + "description": "Indicates the protocol carried over the IP layer. Permitted values: any protocol defined in the IANA protocol registry (refer to clause 9.10.1.2 ofd ETSI GS NFV-SOL 001 for further information).\n", + "type": "string" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule.\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule.\n", + "type": "integer" + } + } } } } @@ -1900,6 +2032,31 @@ } } } + }, + "cpSecurityGroupData": { + "description": "Parameters for modifying and overriding security groups information bound to this CP. The parameters identify which \"SecurityGroupRule\" specified in the VNFD is activated/deactivated and for an activated security group rule the values of attributes defined in the VNFD that can be overridden such as \"portRangeMin\" and \"portRangeMax\". If no security group configuration is provided for a given \"SecurityGroupRule\" specified in the VNFD as part of this attribute, the VNFM shall use the configuration as specified in the VNFD.\n", + "type": "object", + "required": [ + "securityGroupRuleId" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "isActivated": { + "description": "Indicates whether the rule is to be active (true) or inactive (false). If no attribute value is provided, the Security Group Rule is activated by default.\n", + "type": "boolean" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + } + } } } } @@ -3207,6 +3364,194 @@ } } } + }, + "recentVnfLcmOperationLinks": { + "description": "Links to the most recent LCM operation occurrences related to this resource. See note 9.\n", + "type": "object", + "properties": { + "recentVnfLcmOperation": { + "description": "Link to the most recent LCM operation occurrence of any type that has been triggered on this VNF instance, such as Instantiate, Scale or Heal.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmInstantiation": { + "description": "Link to the most recent LCM operation occurrence of type \"INSTANTIATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmScale": { + "description": "Link to the most recent LCM operation occurrence of type \"SCALE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmScaleToLevel": { + "description": "Link to the most recent LCM operation occurrence of type \"SCALE_TO_LEVEL\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeFlavour": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_FLAVOUR\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmTerminate": { + "description": "Link to the most recent LCM operation occurrence of type \"TERMINATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmHeal": { + "description": "Link to the most recent LCM operation occurrence of type \"HEAL\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmOperate": { + "description": "Link to the most recent LCM operation occurrence of type \"OPERATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeExtConn": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_EXT_CONN\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmModifyInfo": { + "description": "Link to the most recent LCM operation occurrence of type \"MODIFY_INFO\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmCreateSnapshot": { + "description": "Link to the most recent LCM operation occurrence of type \"CREATE_SNAPSHOT\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmRevertToSnapshot": { + "description": "Link to the most recent LCM operation occurrence of type \"REVERT_TO_SNAPSHOT\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeVnfPkg": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_VNFPKG\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmSelectDplMods": { + "description": "Link to the most recent LCM operation occurrence of type \"SELECT_DPL_MODS\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + } + } } } }, @@ -3419,4 +3764,6 @@ } } } +} +} } \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/schemas/vnfInstance.schema.json b/SOL003/VNFLifecycleManagement-API/schemas/vnfInstance.schema.json index 1b01d682b0823242495ab9870603db7c94a053e7..fa4b7cb03a04b61f2657f1a96f866ad680469881 100644 --- a/SOL003/VNFLifecycleManagement-API/schemas/vnfInstance.schema.json +++ b/SOL003/VNFLifecycleManagement-API/schemas/vnfInstance.schema.json @@ -1,5 +1,5 @@ { - "description": "This type represents a VNF instance.\nNOTE:\tClause B.3.2 provides examples illustrating the relationship among the different run-time \n information elements (CP, VL and link ports) used to represent the connectivity of a VNF.\n\nNOTE 1:\tModifying the value of this attribute shall not be performed when conflicts exist between \n the previous and the newly referred VNF package, i.e. when the new VNFD is changed with \n respect to the previous VNFD in other aspects than merely referencing to other VNF software \n images. In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded \n VNF Package, the values of attributes in the VnfInstance that have corresponding attributes \n in the VNFD shall be kept in sync with the values in the VNFD.\nNOTE 2:\tETSI GS NFV-SOL 001 [14] specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3:\tVNF configurable properties are sometimes also referred to as configuration parameters applicable \n to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n some are set prior to instantiation (are part of initial configuration) and can be modified later, \n and others can be set only after instantiation. The applicability of certain configuration may \n depend on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4:\tUpon creation of the VnfInstance structure, the VNFM shall create and initialize all child attributes \n of \"vnfConfigurableProperties\", \"metadata\" and \"extensions\" that were declared in the VNFD with a defined \n initial value. The defined initial values can be declared in the VNFD, and/or, in case of \"metadata\", \n obtained from the \"CreateVnfRequest\" structure. Child attributes of \"vnfConfigurableProperties\", \n \"metadata\" and \"extensions\" that have no defined initial value shall not be created, in order to be \n consistent with the semantics of the JSON Merge Patch method (see IETF RFC 7396) that interprets null \n values as deletion request.\nNOTE 5:\tIt is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a \n multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n multi-site VL instance (refer to clause 5.5.3.3).\nNOTE 6:\tEven though externally-managed internal VLs are also used for VNF-internal connectivity, they shall \n not be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\nNOTE 7: Subports need not be used for containerized VNFCs. The application container can send and receive IP \n packets with any VLAN tag as long as the network interface to connect to the secondary container cluster \n network has been configured appropriately. Thus, no individual vnfcCpInfo, except the one representing \n the trunk, need be modelled to allow traffic tagged with a particular VLAN through the connection point.\nNOTE 8: For a scaling aspect whose related VNFCs have not been instantiated due to the selection of deployable \n modules, the \"scaleStatus\" indicates the scale level that would be applicable to the aspect if a VNF LCM \n operation changes the selected deployable modules and the related VNFCs are instantiated, unless the \n VNF LCM operation explicitly indicates the scale level for the aspect.\n", + "description": "This type represents a VNF instance.\nNOTE:\tClause B.3.2 provides examples illustrating the relationship among the different run-time \n information elements (CP, VL and link ports) used to represent the connectivity of a VNF.\n\nNOTE 1:\tModifying the value of this attribute shall not be performed when conflicts exist between \n the previous and the newly referred VNF package, i.e. when the new VNFD is changed with \n respect to the previous VNFD in other aspects than merely referencing to other VNF software \n images. In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded \n VNF Package, the values of attributes in the VnfInstance that have corresponding attributes \n in the VNFD shall be kept in sync with the values in the VNFD.\nNOTE 2:\tETSI GS NFV-SOL 001 [14] specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3:\tVNF configurable properties are sometimes also referred to as configuration parameters applicable \n to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n some are set prior to instantiation (are part of initial configuration) and can be modified later, \n and others can be set only after instantiation. The applicability of certain configuration may \n depend on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4:\tUpon creation of the VnfInstance structure, the VNFM shall create and initialize all child attributes \n of \"vnfConfigurableProperties\", \"metadata\" and \"extensions\" that were declared in the VNFD with a defined \n initial value. The defined initial values can be declared in the VNFD, and/or, in case of \"metadata\", \n obtained from the \"CreateVnfRequest\" structure. Child attributes of \"vnfConfigurableProperties\", \n \"metadata\" and \"extensions\" that have no defined initial value shall not be created, in order to be \n consistent with the semantics of the JSON Merge Patch method (see IETF RFC 7396) that interprets null \n values as deletion request.\nNOTE 5:\tIt is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a \n multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n multi-site VL instance (refer to clause 5.5.3.3).\nNOTE 6:\tEven though externally-managed internal VLs are also used for VNF-internal connectivity, they shall \n not be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\nNOTE 7: Subports need not be used for containerized VNFCs. The application container can send and receive IP \n packets with any VLAN tag as long as the network interface to connect to the secondary container cluster \n network has been configured appropriately. Thus, no individual vnfcCpInfo, except the one representing \n the trunk, need be modelled to allow traffic tagged with a particular VLAN through the connection point.\nNOTE 8: For a scaling aspect whose related VNFCs have not been instantiated due to the selection of deployable \n modules, the “scaleStatus” indicates the scale level that would be applicable to the aspect if a VNF LCM \n operation changes the selected deployable modules and the related VNFCs are instantiated, unless the \n VNF LCM operation explicitly indicates the scale level for the aspect.\nNOTE 9: The recentVnfLcmOperationLinks attribute does not provide a complete historical record of LCM changes\n that a VNF instance experienced during its lifecycle. The information in this attribute should not be used to\n create a chronological order of events that cannot be inferred by looking only at the most recent operation\n occurrences due to potential gaps in timeline. This is because there can be many possible combination of\n LCM changes that a VNF may have gone through between two operation occurrences recorded in the\n recentVnfLcmOperationLinks attribute. For example, there can be many scaling related LCM changes since\n an individual VNF instance has been instantiated until the most recent scaling operation occurrence linked in\n the attribute. In another example, the most recent LCM operation occurrence related to instantiate VNF\n operation may be more recent than the one that caused the VNF instance to be terminated last time, which\n prevents the possibility to create a meaningful chronological timeline of VNF LCM events.\n", "type": "object", "required": [ "id", @@ -452,6 +452,47 @@ "STOPPED" ] }, + "vnfPowerState": { + "description": "The power state of the VNF instance. Only present if the VNF instance is in a power state or a scale status (refer to attribute \"scaleStatus\") that has an associated power profile, as defined in the VNFD.\n", + "type": "object", + "required": [ + "powerProfileId", + "name" + ], + "properties": { + "powerProfileId": { + "description": "Identifier of the power profile, as defined in the VNFD, applied to the VNF instance.\n", + "type": "string" + }, + "name": { + "description": "Name of the power profile as provided in the VNFD.\n", + "type": "string" + }, + "powerConsumptionInfo": { + "description": "Estimated power consumption information of the resources associated with this power profile, as provided in the VNFD. VNFM exposes and can use this information to control the VNF instance to operate according to the power profile and selected power state, e.g. monitoring actual energy or power consumption of the VNF instance and compare against the estimated one.\n", + "type": "object", + "required": [ + "minPowerConsumption", + "maxPowerConsumption", + "averagePowerConsumption" + ], + "properties": { + "minPowerConsumption": { + "description": "Minimum power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + }, + "maxPowerConsumption": { + "description": "Maximum power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + }, + "averagePowerConsumption": { + "description": "Average power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + } + } + } + } + }, "scaleStatus": { "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\nThis attribute shall be present if the VNF supports scaling. See clause B.2 for an explanation of VNF scaling.\nFor an aspect that has not been deployed because the related deployableModule has not been selected, it indicates the scale level that has been requested in the instantiation or in a scaling operation, or, if none has been requested in any of them, the scale level applicable to the aspect based on the default instantiation level. See note 8.\n", "type": "array", @@ -592,6 +633,11 @@ "required": [ "hugePageResources" ] + }, + { + "required": [ + "cpuPowerStateRequirements" + ] } ], "properties": { @@ -641,6 +687,27 @@ "description": "A number defined in IETF RFC 8259.\n", "type": "number" } + }, + "cpuPowerStateRequirements": { + "description": "Requirements of virtual CPU power state configuration data for the OS container resource.\nThis type provides virtual CPU power state configuration data for the virtual compute or OS container resource.\n", + "type": "object", + "required": [ + "cpuPowerStateManagementPolicy" + ], + "properties": { + "cpuPowerStateManagementPolicy": { + "description": "Indicates the policy for CPU power state management. Permitted values:\n * STATIC\n * DYNAMIC\nIn case of \"STATIC\", the virtual CPU cores are requested to be allocated to logical CPU cores according to the cpuOperationalPowerStates attribute. In case of \"DYNAMIC\", the CPU power states of virtual CPU cores can be allocated to logical CPU cores whose power states can be adjusted dynamically depending on core utilization.\n * NOTE 1: In case the value of the cpuPowerStateManagementPolicy attribute\n is \"DYNAMIC\", dynamic adjustment of CPU power states of logical CPU cores\n should adhere to the range of CPU P and C states defined in the\n cpuOperationalPowerStates attribute.\n", + "type": "string", + "enum": [ + "STATIC", + "DYNAMIC" + ] + }, + "cpuOperationalPowerStates": { + "description": "Provides the list of operational power states (i.e. P and C states) defined for the virtual CPU.\n * NOTE 2: In case the value of the cpuPowerStateManagementPolicy attribute\n is \"STATIC\", the cpuOperationalPowerStates attribute shall contain only\n one set of CPU P and C states requested for the virtual CPU.\n If the value of the cpuPowerStateManagementPolicy attribute is\n \"DYNAMIC\", multiple CPU P and C states can be defined to indicate the\n range of allowed P/C state values during dynamic power state management.\n", + "type": "object" + } + } } } } @@ -671,6 +738,11 @@ "required": [ "hugePagesRequirements" ] + }, + { + "required": [ + "cpuPowerStateRequirements" + ] } ], "properties": { @@ -697,7 +769,27 @@ "description": "A number defined in IETF RFC 8259.\n", "type": "number" } - } + }, + "cpuPowerStateRequirements": { + "description": "Requirements of virtual CPU power state configuration data for the virtual compute resource of a VM.\n", + "type": "object", + "required": [ + "cpuPowerStateManagementPolicy" + ], + "properties": { + "cpuPowerStateManagementPolicy": { + "description": "Indicates the policy for CPU power state management. Permitted values:\n * STATIC\n * DYNAMIC\nIn case of \"STATIC\", the virtual CPU cores are requested to be allocated to logical CPU cores according to the cpuOperationalPowerStates attribute. In case of \"DYNAMIC\", the CPU power states of virtual CPU cores can be allocated to logical CPU cores whose power states can be adjusted dynamically depending on core utilization.\n NOTE 1: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"DYNAMIC\", dynamic adjustment of CPU power states of logical CPU cores should adhere to the range of CPU P and C states defined in the \"cpuOperationalPowerStates\" attribute.\n", + "type": "string", + "enum": [ + "STATIC", + "DYNAMIC" + ] + }, + "cpuOperationalPowerStates": { + "description": "Provides the list of operational power states (i.e. P and C states) defined for the virtual CPU. \n NOTE 2: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"STATIC\", the \"cpuOperationalPowerStates\" attribute shall contain only one set of CPU P and C states requested for the virtual CPU.", + "type": "object" + } + } } }, "virtualStorageDescData": { @@ -960,6 +1052,47 @@ "description": "An identifier with the intention of being globally unique.\n", "type": "string" } + }, + "cpSecurityGroupInfo": { + "description": "List of active security group rules applied to this external CP instance. The type identifies which \"SecurityGroupRule\" specified in the VNFD are activated and the values of its attributes.\n", + "type": "object", + "required": [ + "securityGroupRuleId", + "etherType", + "protocol", + "portRangeMin", + "portRangeMax" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "description": { + "description": "Human readable description of the security group rule.\n", + "type": "string" + }, + "etherType": { + "description": "Indicates the protocol carried over the Ethernet layer. Permitted values: IPV4, IPV6.\n", + "type": "string", + "enum": [ + "IPV4", + "IPV6" + ] + }, + "protocol": { + "description": "Indicates the protocol carried over the IP layer. Permitted values: any protocol defined in the IANA protocol registry (refer to clause 9.10.1.2 ofd ETSI GS NFV-SOL 001 for further information).\n", + "type": "string" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule.\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule.\n", + "type": "integer" + } + } } } } @@ -1848,6 +1981,31 @@ } } } + }, + "cpSecurityGroupData": { + "description": "Parameters for modifying and overriding security groups information bound to this CP. The parameters identify which \"SecurityGroupRule\" specified in the VNFD is activated/deactivated and for an activated security group rule the values of attributes defined in the VNFD that can be overridden such as \"portRangeMin\" and \"portRangeMax\". If no security group configuration is provided for a given \"SecurityGroupRule\" specified in the VNFD as part of this attribute, the VNFM shall use the configuration as specified in the VNFD.\n", + "type": "object", + "required": [ + "securityGroupRuleId" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "isActivated": { + "description": "Indicates whether the rule is to be active (true) or inactive (false). If no attribute value is provided, the Security Group Rule is activated by default.\n", + "type": "boolean" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + } + } } } } @@ -3155,6 +3313,194 @@ } } } + }, + "recentVnfLcmOperationLinks": { + "description": "Links to the most recent LCM operation occurrences related to this resource. See note 9.\n", + "type": "object", + "properties": { + "recentVnfLcmOperation": { + "description": "Link to the most recent LCM operation occurrence of any type that has been triggered on this VNF instance, such as Instantiate, Scale or Heal.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmInstantiation": { + "description": "Link to the most recent LCM operation occurrence of type \"INSTANTIATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmScale": { + "description": "Link to the most recent LCM operation occurrence of type \"SCALE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmScaleToLevel": { + "description": "Link to the most recent LCM operation occurrence of type \"SCALE_TO_LEVEL\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeFlavour": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_FLAVOUR\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmTerminate": { + "description": "Link to the most recent LCM operation occurrence of type \"TERMINATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmHeal": { + "description": "Link to the most recent LCM operation occurrence of type \"HEAL\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmOperate": { + "description": "Link to the most recent LCM operation occurrence of type \"OPERATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeExtConn": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_EXT_CONN\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmModifyInfo": { + "description": "Link to the most recent LCM operation occurrence of type \"MODIFY_INFO\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmCreateSnapshot": { + "description": "Link to the most recent LCM operation occurrence of type \"CREATE_SNAPSHOT\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmRevertToSnapshot": { + "description": "Link to the most recent LCM operation occurrence of type \"REVERT_TO_SNAPSHOT\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeVnfPkg": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_VNFPKG\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmSelectDplMods": { + "description": "Link to the most recent LCM operation occurrence of type \"SELECT_DPL_MODS\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + } + } } } } \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/schemas/vnfInstances.schema.json b/SOL003/VNFLifecycleManagement-API/schemas/vnfInstances.schema.json index be17a8201997f50e0349a69d2ca3fcc8c53e36f5..ac78cc9c8e511ff3f27c3118f4d60d11f9bf746a 100644 --- a/SOL003/VNFLifecycleManagement-API/schemas/vnfInstances.schema.json +++ b/SOL003/VNFLifecycleManagement-API/schemas/vnfInstances.schema.json @@ -1,7 +1,7 @@ { "type": "array", "items": { - "description": "This type represents a VNF instance.\nNOTE:\tClause B.3.2 provides examples illustrating the relationship among the different run-time \n information elements (CP, VL and link ports) used to represent the connectivity of a VNF.\n\nNOTE 1:\tModifying the value of this attribute shall not be performed when conflicts exist between \n the previous and the newly referred VNF package, i.e. when the new VNFD is changed with \n respect to the previous VNFD in other aspects than merely referencing to other VNF software \n images. In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded \n VNF Package, the values of attributes in the VnfInstance that have corresponding attributes \n in the VNFD shall be kept in sync with the values in the VNFD.\nNOTE 2:\tETSI GS NFV-SOL 001 [14] specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3:\tVNF configurable properties are sometimes also referred to as configuration parameters applicable \n to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n some are set prior to instantiation (are part of initial configuration) and can be modified later, \n and others can be set only after instantiation. The applicability of certain configuration may \n depend on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4:\tUpon creation of the VnfInstance structure, the VNFM shall create and initialize all child attributes \n of \"vnfConfigurableProperties\", \"metadata\" and \"extensions\" that were declared in the VNFD with a defined \n initial value. The defined initial values can be declared in the VNFD, and/or, in case of \"metadata\", \n obtained from the \"CreateVnfRequest\" structure. Child attributes of \"vnfConfigurableProperties\", \n \"metadata\" and \"extensions\" that have no defined initial value shall not be created, in order to be \n consistent with the semantics of the JSON Merge Patch method (see IETF RFC 7396) that interprets null \n values as deletion request.\nNOTE 5:\tIt is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a \n multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n multi-site VL instance (refer to clause 5.5.3.3).\nNOTE 6:\tEven though externally-managed internal VLs are also used for VNF-internal connectivity, they shall \n not be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\nNOTE 7: Subports need not be used for containerized VNFCs. The application container can send and receive IP \n packets with any VLAN tag as long as the network interface to connect to the secondary container cluster \n network has been configured appropriately. Thus, no individual vnfcCpInfo, except the one representing \n the trunk, need be modelled to allow traffic tagged with a particular VLAN through the connection point.\nNOTE 8: For a scaling aspect whose related VNFCs have not been instantiated due to the selection of deployable \n modules, the \"scaleStatus\" indicates the scale level that would be applicable to the aspect if a VNF LCM \n operation changes the selected deployable modules and the related VNFCs are instantiated, unless the \n VNF LCM operation explicitly indicates the scale level for the aspect.\n", + "description": "This type represents a VNF instance.\nNOTE:\tClause B.3.2 provides examples illustrating the relationship among the different run-time \n information elements (CP, VL and link ports) used to represent the connectivity of a VNF.\n\nNOTE 1:\tModifying the value of this attribute shall not be performed when conflicts exist between \n the previous and the newly referred VNF package, i.e. when the new VNFD is changed with \n respect to the previous VNFD in other aspects than merely referencing to other VNF software \n images. In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded \n VNF Package, the values of attributes in the VnfInstance that have corresponding attributes \n in the VNFD shall be kept in sync with the values in the VNFD.\nNOTE 2:\tETSI GS NFV-SOL 001 [14] specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3:\tVNF configurable properties are sometimes also referred to as configuration parameters applicable \n to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n some are set prior to instantiation (are part of initial configuration) and can be modified later, \n and others can be set only after instantiation. The applicability of certain configuration may \n depend on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4:\tUpon creation of the VnfInstance structure, the VNFM shall create and initialize all child attributes \n of \"vnfConfigurableProperties\", \"metadata\" and \"extensions\" that were declared in the VNFD with a defined \n initial value. The defined initial values can be declared in the VNFD, and/or, in case of \"metadata\", \n obtained from the \"CreateVnfRequest\" structure. Child attributes of \"vnfConfigurableProperties\", \n \"metadata\" and \"extensions\" that have no defined initial value shall not be created, in order to be \n consistent with the semantics of the JSON Merge Patch method (see IETF RFC 7396) that interprets null \n values as deletion request.\nNOTE 5:\tIt is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a \n multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n multi-site VL instance (refer to clause 5.5.3.3).\nNOTE 6:\tEven though externally-managed internal VLs are also used for VNF-internal connectivity, they shall \n not be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\nNOTE 7: Subports need not be used for containerized VNFCs. The application container can send and receive IP \n packets with any VLAN tag as long as the network interface to connect to the secondary container cluster \n network has been configured appropriately. Thus, no individual vnfcCpInfo, except the one representing \n the trunk, need be modelled to allow traffic tagged with a particular VLAN through the connection point.\nNOTE 8: For a scaling aspect whose related VNFCs have not been instantiated due to the selection of deployable \n modules, the “scaleStatus” indicates the scale level that would be applicable to the aspect if a VNF LCM \n operation changes the selected deployable modules and the related VNFCs are instantiated, unless the \n VNF LCM operation explicitly indicates the scale level for the aspect.\nNOTE 9: The recentVnfLcmOperationLinks attribute does not provide a complete historical record of LCM changes\n that a VNF instance experienced during its lifecycle. The information in this attribute should not be used to\n create a chronological order of events that cannot be inferred by looking only at the most recent operation\n occurrences due to potential gaps in timeline. This is because there can be many possible combination of\n LCM changes that a VNF may have gone through between two operation occurrences recorded in the\n recentVnfLcmOperationLinks attribute. For example, there can be many scaling related LCM changes since\n an individual VNF instance has been instantiated until the most recent scaling operation occurrence linked in\n the attribute. In another example, the most recent LCM operation occurrence related to instantiate VNF\n operation may be more recent than the one that caused the VNF instance to be terminated last time, which\n prevents the possibility to create a meaningful chronological timeline of VNF LCM events.\n", "type": "object", "required": [ "id", @@ -454,6 +454,47 @@ "STOPPED" ] }, + "vnfPowerState": { + "description": "The power state of the VNF instance. Only present if the VNF instance is in a power state or a scale status (refer to attribute \"scaleStatus\") that has an associated power profile, as defined in the VNFD.\n", + "type": "object", + "required": [ + "powerProfileId", + "name" + ], + "properties": { + "powerProfileId": { + "description": "Identifier of the power profile, as defined in the VNFD, applied to the VNF instance.\n", + "type": "string" + }, + "name": { + "description": "Name of the power profile as provided in the VNFD.\n", + "type": "string" + }, + "powerConsumptionInfo": { + "description": "Estimated power consumption information of the resources associated with this power profile, as provided in the VNFD. VNFM exposes and can use this information to control the VNF instance to operate according to the power profile and selected power state, e.g. monitoring actual energy or power consumption of the VNF instance and compare against the estimated one.\n", + "type": "object", + "required": [ + "minPowerConsumption", + "maxPowerConsumption", + "averagePowerConsumption" + ], + "properties": { + "minPowerConsumption": { + "description": "Minimum power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + }, + "maxPowerConsumption": { + "description": "Maximum power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + }, + "averagePowerConsumption": { + "description": "Average power consumption of this power profile. Unit is KW/h.\n", + "type": "integer" + } + } + } + } + }, "scaleStatus": { "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\nThis attribute shall be present if the VNF supports scaling. See clause B.2 for an explanation of VNF scaling.\nFor an aspect that has not been deployed because the related deployableModule has not been selected, it indicates the scale level that has been requested in the instantiation or in a scaling operation, or, if none has been requested in any of them, the scale level applicable to the aspect based on the default instantiation level. See note 8.\n", "type": "array", @@ -594,6 +635,11 @@ "required": [ "hugePageResources" ] + }, + { + "required": [ + "cpuPowerStateRequirements" + ] } ], "properties": { @@ -643,6 +689,27 @@ "description": "A number defined in IETF RFC 8259.\n", "type": "number" } + }, + "cpuPowerStateRequirements": { + "description": "Requirements of virtual CPU power state configuration data for the OS container resource.\nThis type provides virtual CPU power state configuration data for the virtual compute or OS container resource.\n", + "type": "object", + "required": [ + "cpuPowerStateManagementPolicy" + ], + "properties": { + "cpuPowerStateManagementPolicy": { + "description": "Indicates the policy for CPU power state management. Permitted values:\n * STATIC\n * DYNAMIC\nIn case of \"STATIC\", the virtual CPU cores are requested to be allocated to logical CPU cores according to the cpuOperationalPowerStates attribute. In case of \"DYNAMIC\", the CPU power states of virtual CPU cores can be allocated to logical CPU cores whose power states can be adjusted dynamically depending on core utilization.\n * NOTE 1: In case the value of the cpuPowerStateManagementPolicy attribute\n is \"DYNAMIC\", dynamic adjustment of CPU power states of logical CPU cores\n should adhere to the range of CPU P and C states defined in the\n cpuOperationalPowerStates attribute.\n", + "type": "string", + "enum": [ + "STATIC", + "DYNAMIC" + ] + }, + "cpuOperationalPowerStates": { + "description": "Provides the list of operational power states (i.e. P and C states) defined for the virtual CPU.\n * NOTE 2: In case the value of the cpuPowerStateManagementPolicy attribute\n is \"STATIC\", the cpuOperationalPowerStates attribute shall contain only\n one set of CPU P and C states requested for the virtual CPU.\n If the value of the cpuPowerStateManagementPolicy attribute is\n \"DYNAMIC\", multiple CPU P and C states can be defined to indicate the\n range of allowed P/C state values during dynamic power state management.\n", + "type": "object" + } + } } } } @@ -673,6 +740,11 @@ "required": [ "hugePagesRequirements" ] + }, + { + "required": [ + "cpuPowerStateRequirements" + ] } ], "properties": { @@ -699,9 +771,28 @@ "description": "A number defined in IETF RFC 8259.\n", "type": "number" } - } - } - }, + }, + "cpuPowerStateRequirements": { + "description": "Requirements of virtual CPU power state configuration data for the virtual compute resource of a VM.\n", + "type": "object", + "required": [ + "cpuPowerStateManagementPolicy" + ], + "properties": { + "cpuPowerStateManagementPolicy": { + "description": "Indicates the policy for CPU power state management. Permitted values:\n * STATIC\n * DYNAMIC\nIn case of \"STATIC\", the virtual CPU cores are requested to be allocated to logical CPU cores according to the cpuOperationalPowerStates attribute. In case of \"DYNAMIC\", the CPU power states of virtual CPU cores can be allocated to logical CPU cores whose power states can be adjusted dynamically depending on core utilization.\n NOTE 1: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"DYNAMIC\", dynamic adjustment of CPU power states of logical CPU cores should adhere to the range of CPU P and C states defined in the \"cpuOperationalPowerStates\" attribute.\n", + "type": "string", + "enum": [ + "STATIC", + "DYNAMIC" + ] + }, + "cpuOperationalPowerStates": { + "description": "Provides the list of operational power states (i.e. P and C states) defined for the virtual CPU. \n NOTE 2: In case the value of the \"cpuPowerStateManagementPolicy\" attribute is \"STATIC\", the \"cpuOperationalPowerStates\" attribute shall contain only one set of CPU P and C states requested for the virtual CPU.", + "type": "object" + } + } + }, "virtualStorageDescData": { "description": "Indicates the value for the storage size related attribute in an VirtualStorageDesc. It shall be present when the attribute 'type' indicates STORAGE and absent otherwise.\n", "type": "array", @@ -962,6 +1053,47 @@ "description": "An identifier with the intention of being globally unique.\n", "type": "string" } + }, + "cpSecurityGroupInfo": { + "description": "List of active security group rules applied to this external CP instance. The type identifies which \"SecurityGroupRule\" specified in the VNFD are activated and the values of its attributes.\n", + "type": "object", + "required": [ + "securityGroupRuleId", + "etherType", + "protocol", + "portRangeMin", + "portRangeMax" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "description": { + "description": "Human readable description of the security group rule.\n", + "type": "string" + }, + "etherType": { + "description": "Indicates the protocol carried over the Ethernet layer. Permitted values: IPV4, IPV6.\n", + "type": "string", + "enum": [ + "IPV4", + "IPV6" + ] + }, + "protocol": { + "description": "Indicates the protocol carried over the IP layer. Permitted values: any protocol defined in the IANA protocol registry (refer to clause 9.10.1.2 ofd ETSI GS NFV-SOL 001 for further information).\n", + "type": "string" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule.\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule.\n", + "type": "integer" + } + } } } } @@ -1850,6 +1982,31 @@ } } } + }, + "cpSecurityGroupData": { + "description": "Parameters for modifying and overriding security groups information bound to this CP. The parameters identify which \"SecurityGroupRule\" specified in the VNFD is activated/deactivated and for an activated security group rule the values of attributes defined in the VNFD that can be overridden such as \"portRangeMin\" and \"portRangeMax\". If no security group configuration is provided for a given \"SecurityGroupRule\" specified in the VNFD as part of this attribute, the VNFM shall use the configuration as specified in the VNFD.\n", + "type": "object", + "required": [ + "securityGroupRuleId" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "isActivated": { + "description": "Indicates whether the rule is to be active (true) or inactive (false). If no attribute value is provided, the Security Group Rule is activated by default.\n", + "type": "boolean" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + } + } } } } @@ -3157,7 +3314,197 @@ } } } + }, + "recentVnfLcmOperationLinks": { + "description": "Links to the most recent LCM operation occurrences related to this resource. See note 9.\n", + "type": "object", + "properties": { + "recentVnfLcmOperation": { + "description": "Link to the most recent LCM operation occurrence of any type that has been triggered on this VNF instance, such as Instantiate, Scale or Heal.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmInstantiation": { + "description": "Link to the most recent LCM operation occurrence of type \"INSTANTIATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmScale": { + "description": "Link to the most recent LCM operation occurrence of type \"SCALE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmScaleToLevel": { + "description": "Link to the most recent LCM operation occurrence of type \"SCALE_TO_LEVEL\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeFlavour": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_FLAVOUR\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmTerminate": { + "description": "Link to the most recent LCM operation occurrence of type \"TERMINATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmHeal": { + "description": "Link to the most recent LCM operation occurrence of type \"HEAL\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmOperate": { + "description": "Link to the most recent LCM operation occurrence of type \"OPERATE\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeExtConn": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_EXT_CONN\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmModifyInfo": { + "description": "Link to the most recent LCM operation occurrence of type \"MODIFY_INFO\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmCreateSnapshot": { + "description": "Link to the most recent LCM operation occurrence of type \"CREATE_SNAPSHOT\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmRevertToSnapshot": { + "description": "Link to the most recent LCM operation occurrence of type \"REVERT_TO_SNAPSHOT\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmChangeVnfPkg": { + "description": "Link to the most recent LCM operation occurrence of type \"CHANGE_VNFPKG\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "recentVnfLcmSelectDplMods": { + "description": "Link to the most recent LCM operation occurrence of type \"SELECT_DPL_MODS\" that has been triggered on this VNF instance.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + } + } } } } +} +} } \ No newline at end of file diff --git a/SOL003/VNFLifecycleOperationGranting-API/ApiVersion.robot b/SOL003/VNFLifecycleOperationGranting-API/ApiVersion.robot index c1d55aaf72ebc93d01690e88823a2445153476e4..140055e7efe6b06016a82e6536dbcbdbcbc62038 100644 --- a/SOL003/VNFLifecycleOperationGranting-API/ApiVersion.robot +++ b/SOL003/VNFLifecycleOperationGranting-API/ApiVersion.robot @@ -13,7 +13,7 @@ POST API Version - Method not implemented ... Test title: POST API version - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ GET API Version ... Test title: GET API Version ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ PUT API Version - Method not implemented ... Test title: PUT API Version - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -50,7 +50,7 @@ PATCH API Version - Method not implemented ... Test title: PATCH API Version - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -62,7 +62,7 @@ DELETE API Version - Method not implemented ... Test title: DELETE API Version - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -74,7 +74,7 @@ POST API Version with apiMajorVerion - Method not implemented ... Test title: POST API version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -86,7 +86,7 @@ GET API Version with apiMajorVerion ... Test title: GET API Version with apiMajorVerion ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -99,7 +99,7 @@ PUT API Version with apiMajorVerion - Method not implemented ... Test title: PUT API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -111,7 +111,7 @@ PATCH API Version with apiMajorVerion - Method not implemented ... Test title: PATCH API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -123,7 +123,7 @@ DELETE API Version with apiMajorVerion - Method not implemented ... Test title: DELETE API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFLifecycleOperationGranting-API/Grants.robot b/SOL003/VNFLifecycleOperationGranting-API/Grants.robot index 5b7f5b015b033054ccdf102e7188caeafa0228d9..b59fff228551c9980d9eab03a5881bf2033e568d 100644 --- a/SOL003/VNFLifecycleOperationGranting-API/Grants.robot +++ b/SOL003/VNFLifecycleOperationGranting-API/Grants.robot @@ -22,7 +22,7 @@ Requests a grant for a particular VNF lifecycle operation - Synchronous mode ... Test title: Requests a grant for a particular VNF lifecycle operation - Synchronous mode ... Test objective: The objective is to request a grant for a particular VNF lifecycle operation and perform a JSON schema validation on the returned grant data structure ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO can decide immediately what to respond to a grant request ... Post-Conditions: The grant information is available to the VNFM. @@ -39,7 +39,7 @@ Requests a grant for a particular VNF lifecycle operation - Asynchronous mode ... Test title: Requests a grant for a particular VNF lifecycle operation - Asynchronous mode ... Test objective: The objective is to request a grant for a particular VNF lifecycle operation and perform a JSON schema validation on the returned grant data structure ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO can not decide immediately what to respond to a grant request ... Post-Conditions: The grant information is available to the VNFM. @@ -55,7 +55,7 @@ Requests a grant for a particular VNF lifecycle operation - Forbidden ... Test title: Requests a grant for a particular VNF lifecycle operation - Forbidden ... Test objective: The objective is to request a grant for a particular VNF lifecycle operation and the grant is rejected ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -68,7 +68,7 @@ GET Grants - Method not implemented ... Test title: GET Grants - Method not implemented ... Test objective: The objective is to test that GET method is not allowed for Life cycle operation granting ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -80,7 +80,7 @@ PUT Grants - Method not implemented ... Test title: PUT Grants - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed for Life cycle operation granting ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -92,7 +92,7 @@ PATCH Grants - Method not implemented ... Test title: PATCH Grants - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed for Life cycle operation granting ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -104,7 +104,7 @@ DELETE Grants - Method not implemented ... Test title: DELETE Grants - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed for Life cycle operation granting ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: resources are not deleted @@ -116,7 +116,7 @@ Requests a grant for a particular VNF lifecycle operation - Synchronous mode usi ... Test title: Requests a grant for a particular VNF lifecycle operation - Synchronous mode using instantiationLevelId for Target size ... Test objective: The objective is to request a grant for a particular VNF lifecycle operation and perform a JSON schema validation on the returned grant data structure ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO can decide immediately what to respond to a grant request ... Post-Conditions: The grant information is available to the VNFM. @@ -133,7 +133,7 @@ Requests a grant for a particular VNF lifecycle operation - Synchronous mode usi ... Test title: Requests a grant for a particular VNF lifecycle operation - Synchronous mode using targetScaleLevelInfo for Target size ... Test objective: The objective is to request a grant for a particular VNF lifecycle operation and perform a JSON schema validation on the returned grant data structure ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO can decide immediately what to respond to a grant request ... Post-Conditions: The grant information is available to the VNFM. @@ -149,7 +149,7 @@ Requests a grant for a particular VNF lifecycle operation - Synchronous mode usi ... Test title: Requests a grant for a particular VNF lifecycle operation - Synchronous mode using with attribute addResources for Target size ... Test objective: The objective is to request a grant for a particular VNF lifecycle operation and perform a JSON schema validation on the returned grant data structure ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO can decide immediately what to respond to a grant request ... Post-Conditions: The grant information is available to the VNFM. @@ -165,7 +165,7 @@ Requests a grant for a particular VNF lifecycle operation - Synchronous mode wit ... Test title: Requests a grant for a particular VNF lifecycle operation - Synchronous mode with permitted authorization scope ... Test objective: The objective is to request a grant for a particular VNF lifecycle operation and perform a JSON schema validation on the returned grant data structure with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO can decide immediately what to respond to a grant request ... Post-Conditions: The grant information is available to the VNFM. @@ -181,14 +181,26 @@ Requests a grant for a particular VNF lifecycle operation - Synchronous mode wit ... Test title: Requests a grant for a particular VNF lifecycle operation - Synchronous mode with not permitted authorization scope ... Test objective: The objective is to request a grant for a particular VNF lifecycle operation and perform a JSON schema validation on the returned grant data structure with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO can decide immediately what to respond to a grant request ... Post-Conditions: The grant information is available to the VNFM. Send Request Grant Request in Synchronous mode with not permitted authorization scope Check HTTP Response Status Code Is 403 Check HTTP Response Body Json Schema Is ProblemDetails - +Requests a grant for a particular VNF lifecycle operation - Unauthorized + [Documentation] Test ID: 7.3.2.1.13 + ... Test title: Requests a grant for a particular VNF lifecycle operation - Unauthorized + ... Test objective: The objective is to request a grant for a particular VNF lifecycle operation and perform a JSON schema validation on the returned grant data structure with unauthorized access + ... Pre-conditions: none + ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_NFVO + ... Applicability: none + ... Post-Conditions: none + Send Request Grant Request in Synchronous mode - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails + *** Keywords *** Wait for individual grant successful notification Wait Until Keyword Succeeds ${retry} ${polling} Get an individual grant - Successful \ No newline at end of file diff --git a/SOL003/VNFLifecycleOperationGranting-API/IndividualGrant.robot b/SOL003/VNFLifecycleOperationGranting-API/IndividualGrant.robot index ad224cc4f18e4514ed366492a28b3e681cf1b647..54a23150b89bed68ec1793f3e778f2059dd2751d 100644 --- a/SOL003/VNFLifecycleOperationGranting-API/IndividualGrant.robot +++ b/SOL003/VNFLifecycleOperationGranting-API/IndividualGrant.robot @@ -18,7 +18,7 @@ POST Individual Grant - Method not implemented ... Test title: POST Individual Grant - Method not implemented ... Test objective: The objective is to test that POST method is not allowed for Life cycle operation granting ... Pre-conditions: none - ... Reference: Clause 9.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -30,7 +30,7 @@ GET an individual grant - Successful ... Test title: GET an individual grant - Successful ... Test objective: The objective is to retrieve a grant for a particular VNF Lifecycle Operation. ... Pre-conditions: The grant information is available to the NFVO - ... Reference: Clause 9.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -45,7 +45,7 @@ GET an individual grant - Process ongoing ... Test title: GET an individual grant - Process ongoing ... Test objective: The objective is to retrieve a grant for a particular VNF lifecycle operation when process is ongoing and no grant is available yet. ... Pre-conditions: The process of creating the grant is ongoing, no grant is available yet. - ... Reference: Clause 9.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -59,7 +59,7 @@ GET an individual grant - grant rejected ... Test title: GET an individual grant - grant rejected ... Test objective: The objective is to retrieve a grant for a particular VNF Lifecycle Operation but error returned because grant has been rejected. ... Pre-conditions: none - ... Reference: Clause 9.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -72,7 +72,7 @@ PUT an individual grant - Method not implemented ... Test title: PUT an individual grant - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to for Life cycle operation granting ... Pre-conditions: none - ... Reference: Clause 9.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -84,7 +84,7 @@ PATCH an individual grant - Method not implemented ... Test title: PATCH an individual grant - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to for Life cycle operation granting ... Pre-conditions: none - ... Reference: Clause 9.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -96,9 +96,33 @@ DELETE an individual grant - Method not implemented ... Test title: DELETE an individual grant - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to for Life cycle operation granting ... Pre-conditions: none - ... Reference: Clause 9.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 9.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none Delete individual Grant - Check HTTP Response Status Code Is 405 \ No newline at end of file + Check HTTP Response Status Code Is 405 +GET an individual grant - Unauthorized + [Documentation] Test ID: 7.3.2.2.8 + ... Test title: GET an individual grant - Unauthorized + ... Test objective: The objective is to retrieve a grant for a particular VNF Lifecycle Operation without proper authorization. + ... Pre-conditions: The grant information is available to the NFVO + ... Reference: Clause 9.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_NFVO + ... Applicability: none + ... Post-Conditions: none + Get individual grant - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +GET an individual grant - Not found + [Documentation] Test ID: 7.3.2.2.9 + ... Test title: GET an individual grant - Not found + ... Test objective: The objective is to retrieve a grant for a particular VNF Lifecycle Operation that does not exist. + ... Pre-conditions: The grant information is not available to the NFVO + ... Reference: Clause 9.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_NFVO + ... Applicability: none + ... Post-Conditions: none + Get individual grant - Not found + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails \ No newline at end of file diff --git a/SOL003/VNFLifecycleOperationGranting-API/VNFLifecycleOperationGrantingKeywords.robot b/SOL003/VNFLifecycleOperationGranting-API/VNFLifecycleOperationGrantingKeywords.robot index aba9a36cbcd70636ac2d7a5018c61bb10f6e6f13..e7fda51ae030ef3dcdcc83053432f0effcde3e37 100644 --- a/SOL003/VNFLifecycleOperationGranting-API/VNFLifecycleOperationGrantingKeywords.robot +++ b/SOL003/VNFLifecycleOperationGranting-API/VNFLifecycleOperationGrantingKeywords.robot @@ -27,7 +27,17 @@ Send Request Grant Request in Synchronous mode Post ${apiRoot}/${apiName}/${apiMajorVersion}/grants ${body} ${body}= Output response Set Suite Variable ${response} ${body} - +Send Request Grant Request in Synchronous mode - Unauthorized + Pass Execution If ${SYNC_MODE} == 0 The Granting process is asynchronous mode. Skipping the test + Set Headers {"Accept": "${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Set Headers {"Version": "${API_VERSION}"} + Run Keyword If ${check_descriptors} == 1 PARSE the Descriptor File + ${template}= Get File jsons/grantRequest.json + ${body}= Format String ${template} vnfInstanceId=${vnfInstanceId} vnfLcmOpOccId=${vnfLcmOpOccId} vnfdId=${Descriptor_ID} flavourId=${Flavour_ID} + Post ${apiRoot}/${apiName}/${apiMajorVersion}/grants ${body} + ${body}= Output response + Set Suite Variable ${response} ${body} Send Request Grant Request in Synchronous mode with attribute instantiationLevelId Log Request a new Grant for a VNF LCM operation by POST to ${apiRoot}/${apiName}/${apiMajorVersion}/grants Pass Execution If ${SYNC_MODE} == 0 The Granting process is asynchronous mode. Skipping the test @@ -214,7 +224,19 @@ Get individual grant Get ${apiRoot}/${apiName}/${apiMajorVersion}/grants/${grantId} ${body}= Output response Set Suite Variable ${response} ${body} - +Get individual grant - Unauthorized + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Get ${apiRoot}/${apiName}/${apiMajorVersion}/grants/${grantId} + ${body}= Output response + Set Suite Variable ${response} ${body} +Get individual grant - Not Found + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Version": "${API_VERSION}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + Get ${apiRoot}/${apiName}/${apiMajorVersion}/grants/${notFoundGrantId} + ${body}= Output response + Set Suite Variable ${response} ${body} Check resource existence Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Version": "${API_VERSION}"} diff --git a/SOL003/VNFLifecycleOperationGranting-API/environment/variables.txt b/SOL003/VNFLifecycleOperationGranting-API/environment/variables.txt index c14344f3d556cfec3583edac3abee48f9d06682c..86ae347a7e90e9bbac2bb1f0a22b2538d6f09378 100644 --- a/SOL003/VNFLifecycleOperationGranting-API/environment/variables.txt +++ b/SOL003/VNFLifecycleOperationGranting-API/environment/variables.txt @@ -12,7 +12,7 @@ ${CONTENT_TYPE} application/json ${ACCEPT} application/json ${AUTH_USAGE} 1 ${grantId} 6fc3539c-e602-4afa-8e13-962fb5a7d81d - +${notFoundGrantId} notFoundGrantId ${apiRoot} / ${apiName} grant ${apiMajorVersion} v1 diff --git a/SOL003/VNFLifecycleOperationGranting-API/schemas/grant.schema.json b/SOL003/VNFLifecycleOperationGranting-API/schemas/grant.schema.json index a9dbb20ae4ce4ea6627d6004500d056b00205156..41d75cd94e1fdabaa85361ac1a4dd4143334fbb7 100644 --- a/SOL003/VNFLifecycleOperationGranting-API/schemas/grant.schema.json +++ b/SOL003/VNFLifecycleOperationGranting-API/schemas/grant.schema.json @@ -1027,6 +1027,31 @@ } } } + }, + "cpSecurityGroupData": { + "description": "Parameters for modifying and overriding security groups information bound to this CP. The parameters identify which \"SecurityGroupRule\" specified in the VNFD is activated/deactivated and for an activated security group rule the values of attributes defined in the VNFD that can be overridden such as \"portRangeMin\" and \"portRangeMax\". If no security group configuration is provided for a given \"SecurityGroupRule\" specified in the VNFD as part of this attribute, the VNFM shall use the configuration as specified in the VNFD.\n", + "type": "object", + "required": [ + "securityGroupRuleId" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "isActivated": { + "description": "Indicates whether the rule is to be active (true) or inactive (false). If no attribute value is provided, the Security Group Rule is activated by default.\n", + "type": "boolean" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + } + } } } } @@ -1290,6 +1315,31 @@ } } } + }, + "cpSecurityGroupData": { + "description": "Parameters for modifying and overriding security groups information bound to this CP. The parameters identify which \"SecurityGroupRule\" specified in the VNFD is activated/deactivated and for an activated security group rule the values of attributes defined in the VNFD that can be overridden such as \"portRangeMin\" and \"portRangeMax\". If no security group configuration is provided for a given \"SecurityGroupRule\" specified in the VNFD as part of this attribute, the VNFM shall use the configuration as specified in the VNFD.\n", + "type": "object", + "required": [ + "securityGroupRuleId" + ], + "properties": { + "securityGroupRuleId": { + "description": "Identifier of the security group rule policy in the VNFD.\n", + "type": "string" + }, + "isActivated": { + "description": "Indicates whether the rule is to be active (true) or inactive (false). If no attribute value is provided, the Security Group Rule is activated by default.\n", + "type": "boolean" + }, + "portRangeMin": { + "description": "Value for the minimum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + }, + "portRangeMax": { + "description": "Value for the maximum port number in the range that is matched by the security group rule. The value shall be within the range \"0 - 65535\".\n", + "type": "integer" + } + } } } } diff --git a/SOL003/VNFPackageManagement-API/ApiVersion.robot b/SOL003/VNFPackageManagement-API/ApiVersion.robot index 97d79a37341ffc8f008309c32d93b8e7dc31609c..da1e241c92223ef57f699a13e1bd3729b21df617 100644 --- a/SOL003/VNFPackageManagement-API/ApiVersion.robot +++ b/SOL003/VNFPackageManagement-API/ApiVersion.robot @@ -13,7 +13,7 @@ POST API Version - Method not implemented ... Test title: POST API version - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ GET API Version ... Test title: GET API Version ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ PUT API Version - Method not implemented ... Test title: PUT API Version - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -50,7 +50,7 @@ PATCH API Version - Method not implemented ... Test title: PATCH API Version - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -62,7 +62,7 @@ DELETE API Version - Method not implemented ... Test title: DELETE API Version - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -74,7 +74,7 @@ POST API Version with apiMajorVerion - Method not implemented ... Test title: POST API version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -86,7 +86,7 @@ GET API Version with apiMajorVerion ... Test title: GET API Version with apiMajorVerion ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -99,7 +99,7 @@ PUT API Version with apiMajorVerion - Method not implemented ... Test title: PUT API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -111,7 +111,7 @@ PATCH API Version with apiMajorVerion - Method not implemented ... Test title: PATCH API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -123,7 +123,7 @@ DELETE API Version with apiMajorVerion - Method not implemented ... Test title: DELETE API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFPackageManagement-API/IndividualSubscription.robot b/SOL003/VNFPackageManagement-API/IndividualSubscription.robot index a9d537ab213cc2a07e60c2ba99eefc9f329df33b..b162bf1497609d3b5831cd0326a5332c80c17c16 100644 --- a/SOL003/VNFPackageManagement-API/IndividualSubscription.robot +++ b/SOL003/VNFPackageManagement-API/IndividualSubscription.robot @@ -12,7 +12,7 @@ GET Individual VNF Package Subscription ... Test title: GET Individual VNF Package Subscription ... Test objective: The objective is to test the retrieval of individual VNF package subscription and perform a JSON schema and content validation of the returned subscription data structure ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.8.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.8.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -27,7 +27,7 @@ GET Individual VNF Package Subscription with invalid resource identifier ... Test title: GET Individual VNF Package Subscription with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual VNF package subscription fails when using an invalid resource identifier ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.8.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.8.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -39,7 +39,7 @@ DELETE Individual VNF Package Subscription with invalid resource identifier ... Test title: DELETE Individual VNF Package Subscription with invalid resource identifier ... Test objective: The objective is to test that the deletion of an individual VNF package subscription fails when using an invalid resource identifier ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.8.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.8.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -51,7 +51,7 @@ POST Individual VNF Package Subscription - Method not implemented ... Test title: POST Individual VNF Package Subscription - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF Package Subscription ... Pre-conditions: none - ... Reference: Clause 10.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.8.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -63,7 +63,7 @@ PUT Individual VNF Package Subscription - Method not implemented ... Test title: PUT Individual VNF Package Subscription - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to update an existing VNF Package subscription ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.8.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.8.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -75,7 +75,7 @@ PATCH Individual VNF Package Subscription - Method not implemented ... Test title: PATCH Individual VNF Package Subscription - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to modify an existing VNF Package subscription ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.8.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.8.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -87,7 +87,7 @@ DELETE Individual VNF Package Subscription ... Test title: DELETE Individual VNF Package Subscription ... Test objective: The objective is to test the deletion of an individual VNF package subscription ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.8.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.8.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: The VNF Package Subscription is not available anymore in the NFVO @@ -100,7 +100,7 @@ GET Individual VNF Package Subscription with permitted authorization scope ... Test title: GET Individual VNF Package Subscription with permitted authorization scope ... Test objective: The objective is to test the retrieval of individual VNF package subscription and perform a JSON schema and content validation of the returned subscription data structure with permitted authorization scope ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.8.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.8.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -115,7 +115,7 @@ GET Individual VNF Package Subscription with not permitted authorization scope ... Test title: GET Individual VNF Package Subscription with not permitted authorization scope ... Test objective: The objective is to test the retrieval of individual VNF package subscription and perform a JSON schema and content validation of the returned subscription data structure with not permitted authorization scope ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.8.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.8.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFPackageManagement-API/IndividualVNFPackage.robot b/SOL003/VNFPackageManagement-API/IndividualVNFPackage.robot index 35f3cea79f1f7c3c87aafb92e3d19252613330f6..f17d1319d2718bc3f320dce89fa81b9da416fc91 100644 --- a/SOL003/VNFPackageManagement-API/IndividualVNFPackage.robot +++ b/SOL003/VNFPackageManagement-API/IndividualVNFPackage.robot @@ -12,7 +12,7 @@ GET Individual VNF Package ... Test title: GET Individual VNF Package ... Test objective: The objective is to test the retrieval of an individual VNF package information perform a JSON schema validation of the collected data structure ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -27,7 +27,7 @@ GET Individual VNF Package with invalid resource identifier ... Test title: GET Individual VNF Package with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual VNF package fails when using an invalid resource identifier ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -40,7 +40,7 @@ POST Individual VNF Package - Method not implemented ... Test title: POST Individual VNF Package - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNF Package ... Pre-conditions: none - ... Reference: Clause 10.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -52,7 +52,7 @@ PUT Individual VNF Package - Method not implemented ... Test title: PUT Individual VNF Package - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify a VNF Package ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ PATCH Individual VNF Package - Method not implemented ... Test title: PATCH Individual VNF Package - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update a VNF Package ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -76,7 +76,7 @@ DELETE Individual VNF Package - Method not implemented ... Test title: DELETE Individual VNF Package - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete a VNF Package ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -88,7 +88,7 @@ GET Individual OnBoarded VNF Package ... Test title: GET Individual OnBoarded VNF Package ... Test objective: The objective is to test the retrieval of an individual OnBoarded VNF package information perform a JSON schema validation of the collected data structure ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -102,7 +102,7 @@ GET Individual OnBoarded VNF Package with invalid resource identifier ... Test title: GET Individual OnBoarded VNF Package with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual OnBoarded VNF package fails when using an invalid resource identifier ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -115,7 +115,7 @@ POST Individual OnBoarded VNF Package - Method not implemented ... Test title: POST Individual OnBoarded VNF Package - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new OnBoarded VNF Package ... Pre-conditions: none - ... Reference: Clause 10.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -127,7 +127,7 @@ PUT Individual OnBoarded VNF Package - Method not implemented ... Test title: PUT Individual OnBoarded VNF Package - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify a VNF Package ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -139,7 +139,7 @@ PATCH Individual OnBoarded VNF Package - Method not implemented ... Test title: PATCH Individual OnBoarded VNF Package - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update a VNF Package ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -151,7 +151,7 @@ DELETE Individual OnBoarded VNF Package - Method not implemented ... Test title: DELETE Individual OnBoarded VNF Package - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete a VNF Package ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -163,7 +163,7 @@ GET Individual VNF Package with permitted authorization scope ... Test title: GET Individual VNF Package with permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF package information perform a JSON schema validation of the collected data structure with permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -178,7 +178,7 @@ GET Individual VNF Package with not permitted authorization scope ... Test title: GET Individual VNF Package with not permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF package information perform a JSON schema validation of the collected data structure with not permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFPackageManagement-API/IndividualVNFPackageArtifacts.robot b/SOL003/VNFPackageManagement-API/IndividualVNFPackageArtifacts.robot index 2d436aa380c0864b0a81aa85fad446084431e040..6994249e13fbfb856a92047798b8735570be35ca 100644 --- a/SOL003/VNFPackageManagement-API/IndividualVNFPackageArtifacts.robot +++ b/SOL003/VNFPackageManagement-API/IndividualVNFPackageArtifacts.robot @@ -11,7 +11,7 @@ GET Individual VNF Package Artifact ... Test title: GET Individual VNF Package Artifact ... Test objective: The objective is to test the retrieval of an individual VNF package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -23,7 +23,7 @@ GET Individual VNF Package Artifact in octet stream format ... Test title: GET Individual VNF Package Artifact in octet stream format ... Test objective: The objective is to test the retrieval of an individual VNF package artifact when the NFVO cannot determine the artifact content type. The test performs a validation that the returned artifcat in is octet-stream format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO cannot determine the content type of the artifact ... Post-Conditions: none @@ -36,7 +36,7 @@ GET Individual VNF Package Artifact with Range Request and NFVO supporting Range ... Test title: GET Individual VNF Package Artifact with Range Request and NFVO supporting Range Requests ... Test objective: The objective is to test the retrieval of an individual VNF package artifact when using a range request to return single range of bytes from the file, with the NFVO supporting it. The test also perform a validation that returned content matches the issued range ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package artifact ... Post-Conditions: none @@ -50,7 +50,7 @@ GET Individual VNF Package Artifact with Range Request and NFVO not supporting R ... Test title: GET Individual VNF Package Artifact with Range Request and NFVO not supporting Range Requests ... Test objective: The objective is to test that the retrieval of an individual VNF package artifact, when using a range request to return single range of bytes from the file and the NFVO not supporting it, returns the full VNF Package artifact. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO does not support range requests to return single range of bytes from the VNF package artifact ... Post-Conditions: none @@ -62,7 +62,7 @@ GET Individual VNF Package Artifact with invalid Range Request ... Test title: GET Individual VNF Package Artifact with invalid Range Request ... Test objective: The objective is to test that the retrieval of an individual VNF package artifact fails when using a range request that does not match any available byte range in the file. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package artifact ... Post-Conditions: none @@ -74,7 +74,7 @@ GET Individual VNF Package Artifact with invalid resource identifier ... Test title: GET Individual VNF Package Artifact with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual VNF package artifact fails when using an invalid resource identifier ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -87,7 +87,7 @@ GET Individual VNF Package Artifact with conflict due to onboarding state ... Test title: GET Individual VNF Package Artifact with conflict due to onboarding state ... Test objective: The objective is to test that the retrieval of an individual VNF package artifact fails due to a conflict when the VNF Package is not in onboarding state ONBOARDED in the NFVO. The test also performs a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: The onboarding state of the VNF package for which the content is requested is different from ONBOARDED. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -100,7 +100,7 @@ POST Individual VNF Package Artifact - Method not implemented ... Test title: POST Individual VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNF Package artifact ... Pre-conditions: none - ... Reference: Clause 10.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -112,7 +112,7 @@ PUT Individual VNF Package Artifact - Method not implemented ... Test title: PUT Individual VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -124,7 +124,7 @@ PATCH Individual VNF Package Artifact - Method not implemented ... Test title: PATCH Individual VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -136,7 +136,7 @@ DELETE Individual VNF Package Artifact - Method not implemented ... Test title: DELETE Individual VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -148,7 +148,7 @@ GET Individual OnBoarded VNF Package Artifact ... Test title: GET Individual OnBoarded VNF Package Artifact ... Test objective: The objective is to test the retrieval of an individual OnBoarded VNF package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -160,7 +160,7 @@ GET Individual OnBoarded VNF Package Artifact in octet stream format ... Test title: GET Individual OnBoarded VNF Package Artifact in octet stream format ... Test objective: The objective is to test the retrieval of an individual OnBoarded VNF package artifact when the NFVO cannot determine the artifact content type. The test performs a validation that the returned artifcat in is octet-stream format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO cannot determine the content type of the artifact ... Post-Conditions: none @@ -173,7 +173,7 @@ GET Individual OnBoarded VNF Package Artifact with Range Request and NFVO suppor ... Test title: GET Individual OnBoarded VNF Package Artifact with Range Request and NFVO supporting Range Requests ... Test objective: The objective is to test the retrieval of an individual OnBoarded VNF package artifact when using a range request to return single range of bytes from the file, with the NFVO supporting it. The test also perform a validation that returned content matches the issued range ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package artifact ... Post-Conditions: none @@ -187,7 +187,7 @@ GET Individual OnBoarded VNF Package Artifact with Range Request and NFVO not su ... Test title: GET Individual OnBoarded VNF Package Artifact with Range Request and NFVO not supporting Range Requests ... Test objective: The objective is to test that the retrieval of an individual OnBoarded VNF package artifact, when using a range request to return single range of bytes from the file and the NFVO not supporting it, returns the full VNF Package artifact. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO does not support range requests to return single range of bytes from the VNF package artifact ... Post-Conditions: none @@ -199,7 +199,7 @@ GET Individual OnBoarded VNF Package Artifact with invalid Range Request ... Test title: GET Individual OnBoarded VNF Package Artifact with invalid Range Request ... Test objective: The objective is to test that the retrieval of an individual OnBoarded VNF package artifact fails when using a range request that does not match any available byte range in the file. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package artifact ... Post-Conditions: none @@ -211,7 +211,7 @@ GET Individual OnBoarded VNF Package Artifact with invalid resource identifier ... Test title: GET Individual OnBoarded VNF Package Artifact with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual OnBoarded VNF package artifact fails when using an invalid resource identifier ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -224,7 +224,7 @@ GET Individual OnBoarded VNF Package Artifact with conflict due to onboarding st ... Test title: GET Individual OnBoarded VNF Package Artifact with conflict due to onboarding state ... Test objective: The objective is to test that the retrieval of an individual OnBoarded VNF package artifact fails due to a conflict when the VNF Package is not in onboarding state ONBOARDED in the NFVO. The test also performs a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: The onboarding state of the VNF package for which the content is requested is different from ONBOARDED. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -237,7 +237,7 @@ POST Individual OnBoarded VNF Package Artifact - Method not implemented ... Test title: POST Individual OnBoarded VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNF Package artifact ... Pre-conditions: none - ... Reference: Clause 10.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -249,7 +249,7 @@ PUT Individual OnBoarded VNF Package Artifact - Method not implemented ... Test title: PUT Individual OnBoarded VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -261,7 +261,7 @@ PATCH Individual OnBoarded VNF Package Artifact - Method not implemented ... Test title: PATCH Individual OnBoarded VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -273,7 +273,7 @@ DELETE Individual OnBoarded VNF Package Artifact - Method not implemented ... Test title: DELETE Individual OnBoarded VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -285,7 +285,7 @@ GET Individual VNF Package Artifact with security information ... Test title: GET Individual VNF Package Artifact with security information ... Test objective: The objective is to test the retrieval of an individual VNF package artifact shall include in the ZIP archive the security information when requested with "include_signature" parameter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO cannot determine the content type of the artifact ... Post-Conditions: none @@ -298,7 +298,7 @@ GET Individual OnBoarded VNF Package Artifact with security information ... Test title: GET Individual OnBoarded VNF Package Artifact with security information ... Test objective: The objective is to test the retrieval of an individual OnBoarded VNF package artifact shall include in the ZIP archive the security information when requested with "include_signature" parameter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO cannot determine the content type of the artifact ... Post-Conditions: none @@ -311,7 +311,7 @@ GET Individual VNF Package Artifact with encrypted artifact ... Test title: GET Individual VNF Package Artifact with encrypted artifact ... Test objective: The objective is to test the retrieval of an individual VNF package artifact shall include an encrypted artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO cannot determine the content type of the artifact ... Post-Conditions: none @@ -324,7 +324,7 @@ GET Individual OnBoarded VNF Package Artifact with encrypted artifact ... Test title: GET Individual OnBoarded VNF Package Artifact with encrypted artifact ... Test objective: The objective is to test the retrieval of an individual OnBoarded VNF package artifact shall include an encrypted artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO cannot determine the content type of the artifact ... Post-Conditions: none @@ -337,7 +337,7 @@ GET Individual VNF Package Artifact - Not Acceptable ... Test title: GET Individual VNF Package Artifact with invalid Range Request ... Test objective: The objective is to test that the retrieval of an individual VNF package artifact fails when related request contained an "Accept" header not compatible with the Content type "application/zip" but the "include_signatures" flag was provided ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -350,7 +350,7 @@ GET Individual OnBoarded VNF Package Artifact - Not Acceptable ... Test title: GET Individual OnBoarded VNF Package Artifact with invalid Range Request ... Test objective: The objective is to test that the retrieval of an individual OnBoarded VNF package artifact fails when related request contained an "Accept" header not compatible with the Content type "application/zip" but the "include_signatures" flag was provided ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -363,7 +363,7 @@ GET Individual VNF Package Artifact with permitted authorization scope ... Test title: GET Individual VNF Package Artifact with permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF package artifact with permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -375,7 +375,7 @@ GET Individual VNF Package Artifact with not permitted authorization scope ... Test title: GET Individual VNF Package Artifact with not permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF package artifact with not permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFPackageManagement-API/ManifestInIndividualVNFPackage.robot b/SOL003/VNFPackageManagement-API/ManifestInIndividualVNFPackage.robot index 347daa5d437536939e819c08aa465ecfac489b20..fb0e9d9d89af71d9e4bea0ddffa4bdc69b8edbdf 100644 --- a/SOL003/VNFPackageManagement-API/ManifestInIndividualVNFPackage.robot +++ b/SOL003/VNFPackageManagement-API/ManifestInIndividualVNFPackage.robot @@ -11,7 +11,7 @@ Get Manifest in Individual VNF Package ... Test title: Get Manifest in Individual VNF Package ... Test objective: The objective is to test that the Get request read the content of manifest within a NVF Package and perform a validation that returned content is in plain text format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -24,7 +24,7 @@ Get Manifest in Individual VNF Package with security information ... Test title: Get Manifest in Individual VNF Package with security information ... Test objective: The objective is to test the retrieval of manifest for an individual VNF package shall also security certificates when requested with "include_signature" parameter, and perform a validation that returned content is in Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -37,7 +37,7 @@ Get Manifest in Individual VNF Package - Not acceptable ... Test title: Get Manifest in Individual VNF Package - Not acceptable ... Test objective: The objective is to test that retriveal of the of manifest for an individual VNF package fails when request contained an "Accept" header not compatible with the Content type "application/zip" but the "include_signatures" flag was provided, and perform a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -50,7 +50,7 @@ Get Manifest in Individual VNF Package - Conflict ... Test title: Get Manifest in Individual VNF Package - Conflict ... Test objective: The objective is to test that the retrieval of the manifest for an individual VNF package fails due to a conflict when the VNF Package is not in onboarding state ONBOARDED in the NFVO. The test also performs a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: The onboarding state of the VNF package for which the VNFD is requested is different from ONBOARDED. - ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -63,7 +63,7 @@ POST Manifest in Individual VNF Package - Method not implemented ... Test title: POST Manifest in Individual VNF Package - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new resource ... Pre-conditions: none - ... Reference: Clause 10.4.4a.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -75,7 +75,7 @@ PUT Manifest in Individual VNF Package - Method not implemented ... Test title: PUT Manifest in Individual VNF Package - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify resource ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -87,7 +87,7 @@ PATCH Manifest in Individual VNF Package - Method not implemented ... Test title: PATCH Manifest in Individual VNF Package - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update resource ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -99,7 +99,7 @@ DELETE Manifest in Individual VNF Package - Method not implemented ... Test title: DELETE Manifest in Individual VNF Package - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete resource ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: Resource is not deleted by the failed operation @@ -112,7 +112,7 @@ Get Manifest in Individual OnBoarded VNF Package ... Test title: Get Manifest in Individual OnBoarded VNF Package ... Test objective: The objective is to test that the Get request read the content of manifest within a OnBoarded NVF Package and perform a validation that returned content is in plain text format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -125,7 +125,7 @@ Get Manifest in Individual OnBoarded VNF Package with security information ... Test title: Get Manifest in Individual OnBoarded VNF Package with security information ... Test objective: The objective is to test the retrieval of manifest for an individual OnBoarded VNF package shall also security certificates when requested with "include_signature" parameter, and perform a validation that returned content is in Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -138,7 +138,7 @@ Get Manifest in Individual OnBoarded VNF Package - Not acceptable ... Test title: Get Manifest in Individual OnBoarded VNF Package - Not acceptable ... Test objective: The objective is to test that retriveal of the of manifest for an individual OnBoarded VNF package fails when request contained an "Accept" header not compatible with the Content type "application/zip" but the "include_signatures" flag was provided, and perform a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -151,7 +151,7 @@ Get Manifest in Individual OnBoarded VNF Package - Conflict ... Test title: Get Manifest in Individual OnBoarded VNF Package - Conflict ... Test objective: The objective is to test that the retrieval of the manifest for an individual OnBoarded VNF package fails due to a conflict when the VNF Package is not in onboarding state ONBOARDED in the NFVO. The test also performs a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: The onboarding state of the VNF package for which the VNFD is requested is different from ONBOARDED. - ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -164,7 +164,7 @@ POST Manifest in Individual OnBoarded VNF Package - Method not implemented ... Test title: POST Manifest in Individual OnBoarded VNF Package - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new resource ... Pre-conditions: none - ... Reference: Clause 10.4.4a.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -176,7 +176,7 @@ PUT Manifest in Individual OnBoarded VNF Package - Method not implemented ... Test title: PUT Manifest in Individual OnBoarded VNF Package - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify resource ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -188,7 +188,7 @@ PATCH Manifest in Individual OnBoarded VNF Package - Method not implemented ... Test title: PATCH Manifest in Individual OnBoarded VNF Package - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update resource ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -200,7 +200,7 @@ DELETE Manifest in Individual OnBoarded VNF Package - Method not implemented ... Test title: DELETE Manifest in Individual OnBoarded VNF Package - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete resource ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: Resource is not deleted by the failed operation @@ -212,7 +212,7 @@ Get Manifest in Individual VNF Package with permitted authorization scope ... Test title: Get Manifest in Individual VNF Package with permitted authorization scope ... Test objective: The objective is to test that the Get request read the content of manifest within a NVF Package and perform a validation that returned content is in plain text format with permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -225,7 +225,7 @@ Get Manifest in Individual VNF Package with not permitted authorization scope ... Test title: Get Manifest in Individual VNF Package with not permitted authorization scope ... Test objective: The objective is to test that the Get request read the content of manifest within a NVF Package and perform a validation that returned content is in plain text format with not permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFPackageManagement-API/NotificationEndpoint.robot b/SOL003/VNFPackageManagement-API/NotificationEndpoint.robot index a2028a1e2c20fbff7a0e3c8b70188a371c6916e0..0ee3a1c9928a4cd2a61a2a21ca3cee1db850acbd 100644 --- a/SOL003/VNFPackageManagement-API/NotificationEndpoint.robot +++ b/SOL003/VNFPackageManagement-API/NotificationEndpoint.robot @@ -14,7 +14,7 @@ VNF Package Onboarding Notification ... Test title: VNF Package Onboarding Notification ... Test objective: The objective is to test that the POST request triggers VNF Package Onboarding notification. ... Pre-conditions: A VNF package subscription for onboarding notifications is available in the NFVO. - ... Reference: Clause 10.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -26,7 +26,7 @@ VNF Package Change Notification ... Test title: VNF Package Change Notification ... Test objective: The objective is to test that the POST request triggers VNF Package Change notification. ... Pre-conditions: A VNF package subscription for change notifications is available in the NFVO. - ... Reference: Clause 10.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -37,7 +37,7 @@ Test the Notification Endpoint - Successful ... Test title: Test the Notification Endpoint - Successful ... Test objective: The objective is to test the Notification Endpoint provided by the notification consumer. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 10.4.9.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.9.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -48,7 +48,7 @@ PUT Notification endpoint - Method Not Implemented ... Test title: PUT Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PUT method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 10.4.9.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.9.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -59,7 +59,7 @@ PATCH Notification endpoint - Method Not Implemented ... Test title: PATCH Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PATCH method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 10.4.9.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.9.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -70,7 +70,7 @@ DELETE Notification endpoint - Method Not Implemented ... Test title: DELETE Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the DELETE method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 10.4.9.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.9.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFPackageManagement-API/Notifications.robot b/SOL003/VNFPackageManagement-API/Notifications.robot index 604982358fc65c57f971059ecc50ae17d89ff0da..bd7d08a62cc6aecd16c37734b5450ad0840ddd7b 100644 --- a/SOL003/VNFPackageManagement-API/Notifications.robot +++ b/SOL003/VNFPackageManagement-API/Notifications.robot @@ -8,6 +8,7 @@ Library OperatingSystem Library BuiltIn Library Collections Library String +Library REST ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT} ssl_verify=false *** Test Cases *** @@ -16,41 +17,42 @@ VNF Package Onboarding Notification ... Test title: VNF Package Onboarding Notification ... Test objective: The objective is to test the dispatch of VNF Package Onboarding notification when the VNF package onboarding operation is successfully completed, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF package subscription for onboarding notifications is available in the NFVO. - ... Reference: Clause 10.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none Trigger the completion of VNF Package Onboarding (external action) Check Onboarding Notification Http POST Request Body Json Schema Is VnfPackageOnboardingNotification Check Onboarding Notification Http POST Request Body notificationType attribute Is VnfPackageOnboardingNotification + Check Onboarding Notification validation VNF Package Operational State Change Notification [Documentation] Test ID: 7.3.3.8.2 ... Test title: VNF Package Operational State Change Notification ... Test objective: The objective is to test the dispatch of VNF Package Change notification when the VNF package operational state is modified, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF package subscription for change notifications is available in the NFVO. - ... Reference: Clause 10.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none Trigger the change of VNF Package Operational State (external action) Check State Change Notification Http POST Request Body Json Schema Is VnfPackageChangeNotification Check State Change Notification Http POST Request Body notificationType attribute Is VnfPackageChangeNotification - Check State Change Notification Http POST Request Body changeType attribute Is OP_STATE_CHANGE + Check State Change Notification validation OP_STATE_CHANGE VNF Package Deletion Notification [Documentation] Test ID: 7.3.3.8.3 ... Test title: VNF Package Deletion Notification ... Test objective: The objective is to test the dispatch of VNF Package Change notification when the VNF package is deleted on the NFVO, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF package subscription for change notifications is available in the NFVO. - ... Reference: Clause 10.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none Trigger the deletion of VNF Package (external action) Check Deletion Notification Http POST Request Body Json Schema Is VnfPackageChangeNotification Check Deletion Notification Http POST Request Body notificationType attribute Is VnfPackageChangeNotification - Check Deletion Notification Http POST Request Body changeType attribute Is PKG_DELETE + Check Deletion Notification validation PKG_DELETE *** Keywords *** @@ -90,27 +92,75 @@ Check Deletion Notification Http POST Request Body Json Schema Is Check State Change Notification Http POST Request Body notificationType attribute Is [Arguments] ${type} - Configure Notification Change Status Handler ${callback_endpoint_fwd} ${type} PKG_DELETE + Configure Notification Change Status Handler ${callback_endpoint_fwd} ${type} OP_STATE_CHANGE Wait Until Keyword Succeeds 2 min 10 sec Verify Mock Expectation ${notification_request} Clear Requests ${callback_endpoint} Clear Requests ${callback_endpoint_fwd} Check Deletion Notification Http POST Request Body notificationType attribute Is [Arguments] ${type} - Configure Notification Change Status Handler ${callback_endpoint_fwd} ${type} OP_STATE_CHANGE + Configure Notification Change Status Handler ${callback_endpoint_fwd} ${type} PKG_DELETE Wait Until Keyword Succeeds 2 min 10 sec Verify Mock Expectation ${notification_request} Clear Requests ${callback_endpoint} Clear Requests ${callback_endpoint_fwd} -Check State Change Notification Http POST Request Body changeType attribute Is - [Arguments] ${type} - #do nothing - Log do nothing +Check State Change Notification validation + [Arguments] ${expected_change} + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} + ${last_request}= Get From List ${requests} -1 + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + ${notification}= Evaluate json.loads(r'''${body_text}''') json + Should Be Equal As Strings ${notification['changeType']} ${expected_change} + ${subscriptionId}= Get From Dictionary ${notification} subscriptionId + ${vnfPkgId}= Get From Dictionary ${notification} vnfPkgId + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + Integer response status 200 + GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_packages/${vnfPkgId} + Integer response status 200 + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} -Check Deletion Notification Http POST Request Body changeType attribute Is - [Arguments] ${type} - #do nothing - Log do nothing +Check Deletion Notification validation + [Arguments] ${expected_change} + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} + ${last_request}= Get From List ${requests} -1 + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + ${notification}= Evaluate json.loads(r'''${body_text}''') json + Should Be Equal As Strings ${notification['changeType']} ${expected_change} + ${subscriptionId}= Get From Dictionary ${notification} subscriptionId + ${vnfPkgId}= Get From Dictionary ${notification} vnfPkgId + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + Integer response status 200 + GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_packages/${vnfPkgId} + Integer response status 200 + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} + +Check Onboarding Notification validation + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} + ${last_request}= Get From List ${requests} -1 + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + ${notification}= Evaluate json.loads(r'''${body_text}''') json + ${subscriptionId}= Get From Dictionary ${notification} subscriptionId + ${vnfPkgId}= Get From Dictionary ${notification} vnfPkgId + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + Integer response status 200 + GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_packages/${vnfPkgId} + Integer response status 200 + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} Configure Notification Onboarding Handler [Arguments] ${endpoint} ${type} diff --git a/SOL003/VNFPackageManagement-API/Subscriptions.robot b/SOL003/VNFPackageManagement-API/Subscriptions.robot index d134ad43c18c99a7e697c0f19352a4a6c406274e..05d4eeac84fbf5d6ca315ea9790a64a55d80c622 100644 --- a/SOL003/VNFPackageManagement-API/Subscriptions.robot +++ b/SOL003/VNFPackageManagement-API/Subscriptions.robot @@ -16,7 +16,7 @@ Get All VNF Package Subscriptions ... Test title: GET all VNF Package Subscriptions ... Test objective: The objective is to test the retrieval of all VNF package subscriptions and perform a JSON schema validation of the returned subscriptions data structure ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -29,7 +29,7 @@ Get VNF Package Subscriptions with attribute-based filter ... Test title: Get VNF Package Subscriptions with attribute-based filter ... Test objective: The objective is to test the retrieval of VNF package subscriptions using attribute-based filter, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued attribute-based filters ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -43,7 +43,7 @@ Get VNF Package Subscriptions with invalid attribute-based filter ... Test title: Get VNF Package Subscriptions with attribute-based filters ... Test objective: The objective is to test that the retrieval of VNF package subscriptions fails when using invalid attribute-based filters, and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -56,7 +56,7 @@ GET VNF Package Subscription with invalid resource endpoint ... Test title: GET VNF Package Subscription with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of all VNF package subscriptions fails when using invalid resource endpoint. ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -69,7 +69,7 @@ Create new VNF Package subscription ... Test title: Create new VNF Package subscription ... Test objective: The objective is to test the creation of a new VNF package subscription and perform a JSON schema and content validation of the returned subscription data structure ... Pre-conditions: none - ... Reference: Clause 10.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: The VNF package subscription is successfully set and it matches the issued subscription @@ -87,7 +87,7 @@ Create duplicated VNF Package subscription with NFVO not creating duplicated sub ... Test title: Create duplicated VNF Package subscription with NFVO not creating duplicated subscriptions ... Test objective: The objective is to test the attempt of a creation of a duplicated VNF package subscription and check that no new subscription is created by the NFVO and a link to the original subscription is returned ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO does not support the creation of duplicated subscriptions ... Post-Conditions: The existing VNF package subscription returned is available in the NFVO @@ -103,7 +103,7 @@ Create duplicated VNF Package subscription with NFVO creating duplicated subscri ... Test title: Create duplicated VNF Package subscription with NFVO creating duplicated subscriptions ... Test objective: The objective is to test the creation of a duplicated VNF package subscription and perform a JSON schema and content validation of the returned duplicated subscription data structure ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports the creation of duplicated subscriptions ... Post-Conditions: The duplicated VNF package subscription is successfully set and it matches the issued subscription @@ -118,7 +118,7 @@ PUT VNF Package Subscriptions - Method not implemented ... Test title: PUT VNF Package Subscriptions - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify VNF package subscriptions ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -130,7 +130,7 @@ PATCH VNF Package Subscriptions - Method not implemented ... Test title: PATCH VNF Package Subscriptions - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update VNF package subscriptions ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -142,7 +142,7 @@ DELETE VNF Package Subscriptions - Method not implemented ... Test title: DELETE VNF Package Subscriptions - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete VNF package subscriptions ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -154,7 +154,7 @@ Get All VNF Package Subscriptions as Paged Response ... Test title: GET all VNF Package Subscriptions as Paged Response ... Test objective: The objective is to test the retrieval of all VNF package subscriptions as Paged Response. ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports response paging for the subscription resources ... Post-Conditions: none @@ -167,7 +167,7 @@ GET All VNF Package Subscriptions as a Paged Response with nextpage_opauque_mark ... Test title: GET All VNF Package Subscriptions as a Paged Response with nextpage_opauque_marker parameter ... Test objective: The objective is to query information about all VNF package subscriptions as a Paged Response and retrieve the next page using the nextpage_opaque_marker parameter ... Pre-conditions: A request for retrieving all VNF package subscriptions as a paged response has been successfully issued (Test ID 7.3.3.6.11) - ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports response paging for the subscription resources ... Post-Conditions: none @@ -179,7 +179,7 @@ Get VNF Package Subscriptions - Bad Request Response too Big ... Test title: Get VNF Package Subscriptions - Bad Request Response too Big ... Test objective: The objective is to test that the retrieval of VNF package subscriptions fails because reponse is too big, and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -192,7 +192,7 @@ Get VNF Package Subscriptions - Unprocessable Content ... Test title: Get VNF Package Subscriptions - Unprocessable Content ... Test objective: The objective is to test that content type of the message content is supported and the message content of a request contains syntactically correct data but the data cannot be processed., and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: At least one VNF package subscription is available in the NFVO. - ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -205,7 +205,7 @@ Create new VNF Package subscription with permitted authorization scope ... Test title: Create new VNF Package subscription with permitted authorization scope ... Test objective: The objective is to test the creation of a new VNF package subscription and perform a JSON schema and content validation of the returned subscription data structure with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 10.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: The VNF package subscription is successfully set and it matches the issued subscription @@ -221,7 +221,7 @@ Create new VNF Package subscription with not permitted authorization scope ... Test title: Create new VNF Package subscription with not permitted authorization scope ... Test objective: The objective is to test the creation of a new VNF package subscription and perform a JSON schema and content validation of the returned subscription data structure with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 10.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.7.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: The VNF package subscription is successfully set and it matches the issued subscription diff --git a/SOL003/VNFPackageManagement-API/VNFDInIndividualVNFPackage.robot b/SOL003/VNFPackageManagement-API/VNFDInIndividualVNFPackage.robot index 4e435b5c2a7675e6ef93f45fdf6239961c8aa78d..b2697aa5c14a3fdbcdeb229a6fec52c1d6c0a14b 100644 --- a/SOL003/VNFPackageManagement-API/VNFDInIndividualVNFPackage.robot +++ b/SOL003/VNFPackageManagement-API/VNFDInIndividualVNFPackage.robot @@ -11,7 +11,7 @@ Get single file VNFD in Individual VNF Package in Plain Format ... Test title: Get single file VNFD in Individual VNF Package in Plain Format ... Test objective: The objective is to test the retrieval of the VNFD in plain format for an individual VNF package and perform a validation that returned content is in plain format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFD is implemented as a single file ... Post-Conditions: none @@ -24,7 +24,7 @@ Get VNFD in Individual VNF Package in Zip Format ... Test title: Get VNFD in Individual VNF Package in Zip Format ... Test objective: The objective is to test the retrieval of the VNFD in zip format for an individual VNF package and perform a validation that returned content is in zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -37,7 +37,7 @@ Get single file VNFD in Individual VNF Package in Plain or Zip Format ... Test title: Get single file VNFD in Individual VNF Package in Plain or Zip Format ... Test objective: The objective is to test the retrieval of the single file VNFD for an individual VNF package when requesting Plain or Zip format to NFVO by including both formats in the request, and perform a validation that returned content is in Plain or Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFD is implemented as a single file ... Post-Conditions: none @@ -50,7 +50,7 @@ Get multi file VNFD in Individual VNF Package in Plain or Zip Format ... Test title: Get multi file VNFD in Individual VNF Package in Plain or Zip Format ... Test objective: The objective is to test the retrieval of the multi file VNFD for an individual VNF package when requesting Plain or Zip format to NFVO by including both formats in the request, and perform a validation that returned content is in Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFD is implemented as a multi file ... Post-Conditions: none @@ -74,7 +74,7 @@ Get VNFD in Individual VNF Package with invalid resource identifier ... Test title: Get VNFD in Individual VNF Package with invalid resource identifier ... Test objective: The objective is to test that the retrieval of the VNFD for an individual VNF package content fails when using an invalid resource identifier ... Pre-conditions: none - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -86,7 +86,7 @@ Get VNFD in Individual VNF Package Content with conflict due to onboarding state ... Test title: Get VNFD in Individual VNF Package Content with conflict due to onboarding state ... Test objective: The objective is to test that the retrieval of the VNFD for an individual VNF package content fails due to a conflict when the VNF Package is not in onboarding state ONBOARDED in the NFVO. The test also performs a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: The onboarding state of the VNF package for which the VNFD is requested is different from ONBOARDED. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -99,7 +99,7 @@ POST VNFD in Individual VNF Package Content - Method not implemented ... Test title: POST VNFD in Individual VNF Package Content - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNFD ... Pre-conditions: none - ... Reference: Clause 10.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -111,7 +111,7 @@ PUT VNFD in Individual VNF Package Content - Method not implemented ... Test title: PUT VNFD in Individual VNF Package Content - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify a VNFD ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -123,7 +123,7 @@ PATCH VNFD in Individual VNF Package Content - Method not implemented ... Test title: PATCH VNFD in Individual VNF Package Content - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update a VNFD ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -135,7 +135,7 @@ DELETE VNFD in Individual VNF Package Content - Method not implemented ... Test title: DELETE VNFD in Individual VNF Package Content - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete a VNFD ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -147,7 +147,7 @@ Get single file VNFD in Individual OnBoarded VNF Package in Plain Format ... Test title: Get single file VNFD in Individual OnBoarded VNF Package in Plain Format ... Test objective: The objective is to test the retrieval of the VNFD in plain format for an individual OnBoarded VNF package and perform a validation that returned content is in plain format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFD is implemented as a single file ... Post-Conditions: none @@ -160,7 +160,7 @@ Get VNFD in Individual OnBoarded VNF Package in Zip Format ... Test title: Get VNFD in Individual OnBoarded VNF Package in Zip Format ... Test objective: The objective is to test the retrieval of the VNFD in zip format for an individual OnBoarded VNF package and perform a validation that returned content is in zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -173,7 +173,7 @@ Get single file VNFD in Individual OnBoarded VNF Package in Plain or Zip Format ... Test title: Get single file VNFD in Individual OnBoarded VNF Package in Plain or Zip Format ... Test objective: The objective is to test the retrieval of the single file VNFD for an individual OnBoarded VNF package when requesting Plain or Zip format to NFVO by including both formats in the request, and perform a validation that returned content is in Plain or Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFD is implemented as a single file ... Post-Conditions: none @@ -186,7 +186,7 @@ Get multi file VNFD in Individual OnBoarded VNF Package in Plain or Zip Format ... Test title: Get multi file VNFD in Individual OnBoarded VNF Package in Plain or Zip Format ... Test objective: The objective is to test the retrieval of the multi file VNFD for an individual OnBoarded VNF package when requesting Plain or Zip format to NFVO by including both formats in the request, and perform a validation that returned content is in Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFD is implemented as a multi file ... Post-Conditions: none @@ -210,7 +210,7 @@ Get VNFD in Individual OnBoarded VNF Package with invalid resource identifier ... Test title: Get VNFD in Individual OnBoarded VNF Package with invalid resource identifier ... Test objective: The objective is to test that the retrieval of the VNFD for an individual OnBoarded VNF package content fails when using an invalid resource identifier ... Pre-conditions: none - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -222,7 +222,7 @@ Get VNFD in Individual OnBoarded VNF Package Content with conflict due to onboar ... Test title: Get VNFD in Individual OnBoarded VNF Package Content with conflict due to onboarding state ... Test objective: The objective is to test that the retrieval of the VNFD for an individual OnBoarded VNF package content fails due to a conflict when the VNF Package is not in onboarding state ONBOARDED in the NFVO. The test also performs a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: The onboarding state of the VNF package for which the VNFD is requested is different from ONBOARDED. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -235,7 +235,7 @@ POST VNFD in Individual OnBoarded VNF Package Content - Method not implemented ... Test title: POST VNFD in Individual OnBoarded VNF Package Content - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNFD ... Pre-conditions: none - ... Reference: Clause 10.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -247,7 +247,7 @@ PUT VNFD in Individual OnBoarded VNF Package Content - Method not implemented ... Test title: PUT VNFD in Individual OnBoarded VNF Package Content - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify a VNFD ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -259,7 +259,7 @@ PATCH VNFD in Individual OnBoarded VNF Package Content - Method not implemented ... Test title: PATCH VNFD in Individual OnBoarded VNF Package Content - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update a VNFD ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -271,7 +271,7 @@ DELETE VNFD in Individual OnBoarded VNF Package Content - Method not implemented ... Test title: DELETE VNFD in Individual OnBoarded VNF Package Content - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete a VNFD ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -283,7 +283,7 @@ Get multi file VNFD in Individual VNF Package with security information ... Test title: Get multi file VNFD in Individual VNF Package with security information ... Test objective: The objective is to test the retrieval of the multi file VNFD for an individual VNF package shall include in the ZIP archive the security information when requested with "include_signature" parameter, and perform a validation that returned content is in Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFD is implemented as a multi file ... Post-Conditions: none @@ -296,7 +296,7 @@ Get multi file VNFD in Individual OnBoarded VNF Package with security informatio ... Test title: Get multi file VNFD in Individual OnBoarded VNF Package with security information ... Test objective: The objective is to test the retrieval of the multi file VNFD for an individual OnBoarded VNF package shall include in the ZIP archive the security information when requested with "include_signature" parameter, and perform a validation that returned content is in Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFD is implemented as a multi file ... Post-Conditions: none @@ -309,7 +309,7 @@ Get single file VNFD in Individual VNF Package in Plain Format with permitted au ... Test title: Get single file VNFD in Individual VNF Package in Plain Format with permitted authorization scope ... Test objective: The objective is to test the retrieval of the VNFD in plain format for an individual VNF package and perform a validation that returned content is in plain format with permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFD is implemented as a single file ... Post-Conditions: none @@ -322,7 +322,7 @@ Get single file VNFD in Individual VNF Package in Plain Format with not permitte ... Test title: Get single file VNFD in Individual VNF Package in Plain Format with not permitted authorization scope ... Test objective: The objective is to test the retrieval of the VNFD in plain format for an individual VNF package and perform a validation that returned content is in plain format with not permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFD is implemented as a single file ... Post-Conditions: none diff --git a/SOL003/VNFPackageManagement-API/VNFPackageArtifacts.robot b/SOL003/VNFPackageManagement-API/VNFPackageArtifacts.robot index 6b7f116466399eb58a0e4cd5f9a8a454506b0cf6..7e2f371a7a9a67d5eaf63fef06b9e5ad676b890d 100644 --- a/SOL003/VNFPackageManagement-API/VNFPackageArtifacts.robot +++ b/SOL003/VNFPackageManagement-API/VNFPackageArtifacts.robot @@ -11,7 +11,7 @@ Get VNF Package Artifact ... Test title: Get VNF Package Artifact ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the artifact files successfully, and perform a validation that returned content is in Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -24,7 +24,7 @@ Get VNF Package Artifact with "exclude_all_mano_artifacts" parameter ... Test title: Get VNF Package Artifact with "exclude_all_mano_artifacts" parameter ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the artifact files successfully and it doesnot contain additional MANO artifacts when requested with "exclude_all_mano_artifacts" parameter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -37,7 +37,7 @@ Get VNF Package Artifact with "exclude_all_non_mano_artifacts" parameter ... Test title: Get VNF Package Artifact with "exclude_all_non_mano_artifacts" parameter ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the artifact files successfully and it doesnot contain non-MANO Artifacts when requested with "exclude_all_non_mano_artifacts" parameter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -50,7 +50,7 @@ Get VNF Package Artifact with "select_non_mano_artifact_sets" parameter ... Test title: Get VNF Package Artifact with "select_non_mano_artifact_sets" parameter ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the artifact files successfully and also contain non_MANO artifacts set when requested with "select_non_mano_artifact_sets" parameter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -63,7 +63,7 @@ Get VNF Package Artifact with "include_signatures" parameter ... Test title: Get VNF Package Artifact with "include_signatures" parameter ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the artifact files successfully and also contain security certificates when requested with "include_signature" parameter, and perform a validation that returned content is in Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -76,7 +76,7 @@ Get VNF Package Artifact with Range Request and NFVO supporting Range Requests ... Test title: Get VNF Package Artifact with Range Request and NFVO supporting Range Requests ... Test objective: The objective is to test the GET request read the whole content of the archive containing the artifact files successfully when using a range request to return single range of bytes from the file, with the NFVO supporting it. The test also perform a validation that returned content matches the issued range ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package artifact ... Post-Conditions: none @@ -90,7 +90,7 @@ Get VNF Package Artifact with invalid URI parameters "exclude_all_non_mano_artif ... Test title: Get VNF Package Artifact with invalid URI parameters "exclude_all_non_mano_artifacts", "select_non_mano_artifact_sets" ... Test objective: The objective is to test that the GET request to read the whole content of the archive containing the artifact files fails when both "exclude_all_non_mano_artifacts" and "select_non_mano_artifact_sets" are present in request ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -103,7 +103,7 @@ Get VNF Package Artifact with invalid URI parameters "exclude_all_non_mano_artif ... Test title: Get VNF Package Artifact with invalid URI parameters "exclude_all_non_mano_artifacts", "exclude_all_mano_artifactss" ... Test objective: The objective is to test that the GET request to read the whole content of the archive containing the artifact files fails when both "exclude_all_non_mano_artifacts" and "exclude_all_mano_artifacts" are present in request ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -116,7 +116,7 @@ Get VNF Package Artifact with invalid URI parameters undifend select_non_mano_ar ... Test title: Get VNF Package Artifact with invalid URI parameters undefined select_non_mano_artifact_sets ... Test objective: The objective is to test that the GET request to read the whole content of the archive containing the artifact files fails when one or more value provided in "select_non_mano_artifact_sets" are not provided in Manifest. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -129,7 +129,7 @@ Get VNF Package Artifact with conflict due to onboarding state ... Test title: Get VNF Package Artifact with conflict due to onboarding state ... Test objective: The objective is to test that the GET request to read the whole content of the archive containing the artifact files fails due to a conflict when the VNF Package is not in onboarding state ONBOARDED in the NFVO. The test also performs a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: The onboarding state of the VNF package for which the content is requested is different from ONBOARDED. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -142,7 +142,7 @@ GET VNF Package Artifact with invalid Range Request ... Test title: GET VNF Package Artifact with invalid Range Request ... Test objective: The objective is to test that the GET request to read the whole content of the archive containing the artifact files fails when using a range request that does not match any available byte range in the file. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package artifact ... Post-Conditions: none @@ -154,7 +154,7 @@ POST VNF Package Artifact - Method not implemented ... Test title: POST VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNF Package artifact ... Pre-conditions: none - ... Reference: Clause 10.4.5a.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -166,7 +166,7 @@ PUT VNF Package Artifact - Method not implemented ... Test title: PUT VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -178,7 +178,7 @@ PATCH VNF Package Artifact - Method not implemented ... Test title: PATCH VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -190,7 +190,7 @@ DELETE VNF Package Artifact - Method not implemented ... Test title: DELETE VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -202,7 +202,7 @@ Get OnBoarded VNF Package Artifact ... Test title: Get OnBoarded VNF Package Artifact ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the OnBoarded VNF Package Artifact files successfully, and perform a validation that returned content is in Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -215,7 +215,7 @@ Get OnBoarded VNF Package Artifact with "exclude_all_mano_artifacts" parameter ... Test title: Get OnBoarded VNF Package Artifact with "exclude_all_mano_artifacts" parameter ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the OnBoarded VNF Package Artifact files successfully and it doesnot contain additional MANO artifacts when requested with "exclude_all_mano_artifacts" parameter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -228,7 +228,7 @@ Get OnBoarded VNF Package Artifact with "exclude_all_non_mano_artifacts" paramet ... Test title: Get OnBoarded VNF Package Artifact with "exclude_all_non_mano_artifacts" parameter ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the OnBoarded VNF Package artifact files successfully and it doesnot contain non-MANO Artifacts when requested with "exclude_all_non_mano_artifacts" parameter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -241,7 +241,7 @@ Get OnBoarded VNF Package Artifact with "select_non_mano_artifact_sets" paramete ... Test title: Get OnBoarded VNF Package Artifact with "select_non_mano_artifact_sets" parameter ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the OnBoarded VNF Package artifact files successfully and also contain non_MANO artifacts set when requested with "select_non_mano_artifact_sets" parameter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -254,7 +254,7 @@ Get OnBoarded VNF Package Artifact with "include_signatures" parameter ... Test title: Get OnBoarded VNF Package Artifact with "include_signatures" parameter ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the OnBoarded VNF Package artifact files successfully and also contain security certificates when requested with "include_signature" parameter, and perform a validation that returned content is in Zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -267,7 +267,7 @@ Get OnBoarded VNF Package Artifact with Range Request and NFVO supporting Range ... Test title: Get OnBoarded VNF Package Artifact with Range Request and NFVO supporting Range Requests ... Test objective: The objective is to test the GET request read the whole content of the archive containing the OnBoarded VNF Package artifact files successfully when using a range request to return single range of bytes from the file, with the NFVO supporting it. The test also perform a validation that returned content matches the issued range ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package artifact ... Post-Conditions: none @@ -281,7 +281,7 @@ Get OnBoarded VNF Package Artifact with invalid URI parameters "exclude_all_non_ ... Test title: Get OnBoarded VNF Package Artifact with invalid URI parameters "exclude_all_non_mano_artifacts", "select_non_mano_artifact_sets" ... Test objective: The objective is to test that the GET request to read the whole content of the archive containing the OnBoarded VNF Package artifact files fails when both "exclude_all_non_mano_artifacts" and "select_non_mano_artifact_sets" are present in request ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -294,7 +294,7 @@ Get OnBoarded VNF Package Artifact with invalid URI parameters "exclude_all_non_ ... Test title: Get OnBoarded VNF Package Artifact with invalid URI parameters "exclude_all_non_mano_artifacts", "exclude_all_mano_artifactss" ... Test objective: The objective is to test that the GET request to read the whole content of the archive containing the OnBoarded VNF Package artifact files fails when both "exclude_all_non_mano_artifacts" and "exclude_all_mano_artifacts" are present in request ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -307,7 +307,7 @@ Get OnBoarded VNF Package Artifact with invalid URI parameters undifend select_n ... Test title: Get OnBoarded VNF Package Artifact with invalid URI parameters undefined select_non_mano_artifact_sets ... Test objective: The objective is to test that the GET request to read the whole content of the archive containing the OnBoarded VNF Package artifact files fails when one or more value provided in "select_non_mano_artifact_sets" are not provided in Manifest. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -320,7 +320,7 @@ Get OnBoarded VNF Package Artifact with conflict due to onboarding state ... Test title: Get OnBoarded VNF Package Artifact with conflict due to onboarding state ... Test objective: The objective is to test that the GET request to read the whole content of the archive containing the OnBoarded VNF Package artifact files fails due to a conflict when the VNF Package is not in onboarding state ONBOARDED in the NFVO. The test also performs a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: The onboarding state of the VNF package for which the content is requested is different from ONBOARDED. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -333,7 +333,7 @@ GET OnBoarded VNF Package Artifact with invalid Range Request ... Test title: GET OnBoarded VNF Package Artifact with invalid Range Request ... Test objective: The objective is to test that the GET request to read the whole content of the archive containing the OnBoarded VNF Package artifact files fails when using a range request that does not match any available byte range in the file. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package artifact ... Post-Conditions: none @@ -345,7 +345,7 @@ POST OnBoarded VNF Package Artifact - Method not implemented ... Test title: POST OnBoarded VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNF Package artifact ... Pre-conditions: none - ... Reference: Clause 10.4.5a.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -357,7 +357,7 @@ PUT OnBoarded VNF Package Artifact - Method not implemented ... Test title: PUT OnBoarded VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -369,7 +369,7 @@ PATCH OnBoarded VNF Package Artifact - Method not implemented ... Test title: PATCH OnBoarded VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -381,7 +381,7 @@ DELETE OnBoarded VNF Package Artifact - Method not implemented ... Test title: DELETE OnBoarded VNF Package Artifact - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete a VNF Package artifact ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -393,7 +393,7 @@ Get VNF Package Artifact with "include_external_artifacts" parameter ... Test title: Get VNF Package Artifact with "include_external_artifacts" parameter ... Test objective: The objective is to test that GET request reads the whole content of the archive containing the external artifacts successfully when requested with "include_external_artifacts" parameter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -406,7 +406,7 @@ Get OnBoarded VNF Package Artifact with "include_external_artifacts" parameter ... Test title: Get OnBoarded VNF Package Artifact with "include_external_artifacts" parameter ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the external OnBoarded VNF Package Artifacts successfully when requested with "include_external_artifacts" parameter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -419,7 +419,7 @@ Get VNF Package Artifact with permitted authorization scope ... Test title: Get VNF Package Artifact with permitted authorization scope ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the artifact files successfully, and perform a validation that returned content is in Zip format with permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -432,7 +432,7 @@ Get VNF Package Artifact with not permitted authorization scope ... Test title: Get VNF Package Artifact with not permitted authorization scope ... Test objective: The objective is to test that the GET request read the whole content of the archive containing the artifact files successfully, and perform a validation that returned content is in Zip format with not permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5a.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFPackageManagement-API/VNFPackageContent.robot b/SOL003/VNFPackageManagement-API/VNFPackageContent.robot index c4f70a3ea5eb30bd54c6f0cb619ba141ba870f27..be610b18350b1c16dffe178acd4d46a7e85c8502 100644 --- a/SOL003/VNFPackageManagement-API/VNFPackageContent.robot +++ b/SOL003/VNFPackageManagement-API/VNFPackageContent.robot @@ -11,7 +11,7 @@ GET Individual VNF Package Content ... Test title: GET Individual VNF Package Content ... Test objective: The objective is to test the retrieval of an individual VNF package content and perform a validation that returned content is in zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -24,7 +24,7 @@ GET Individual VNF Package Content with Range Request and NFVO supporting Range ... Test title: GET Individual VNF Package Content with Range Request and NFVO supporting Range Requests ... Test objective: The objective is to test the retrieval of an individual VNF package content when using a range request to return single range of bytes from the file, with the NFVO supporting it. The test also perform a validation that returned content matches the issued range ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package file ... Post-Conditions: none @@ -39,7 +39,7 @@ GET Individual VNF Package Content with Range Request and NFVO not supporting Ra ... Test title: GET Individual VNF Package Content with Range Request and NFVO not supporting Range Requests ... Test objective: The objective is to test that the retrieval of an individual VNF package content, when using a range request to return single range of bytes from the file and the NFVO not supporting it, returns the full VNF Package file. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO does not support range requests to return single range of bytes from the VNF package file ... Post-Conditions: none @@ -52,7 +52,7 @@ GET Individual VNF Package Content with invalid Range Request ... Test title: GET Individual VNF Package Content with invalid Range Request ... Test objective: The objective is to test that the retrieval of an individual VNF package content fails when using a range request that does not match any available byte range in the file. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package file ... Post-Conditions: none @@ -64,7 +64,7 @@ GET Individual VNF Package Content with invalid resource identifier ... Test title: GET Individual VNF Package Content with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual VNF package content fails when using an invalid resource identifier ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -77,7 +77,7 @@ GET Individual VNF Package Content with conflict due to onboarding state ... Test title: GET Individual VNF Package Content with conflict due to onboarding state ... Test objective: The objective is to test that the retrieval of an individual VNF package content fails due to a conflict when the VNF Package is not in onboarding state ONBOARDED in the NFVO. The test also performs a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: The onboarding state of the VNF package for which the content is requested is different from ONBOARDED. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -90,7 +90,7 @@ POST Individual VNF Package Content - Method not implemented ... Test title: POST Individual VNF Package Content - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNF Package content ... Pre-conditions: none - ... Reference: Clause 10.4.3.5.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.5.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -102,7 +102,7 @@ PUT Individual VNF Package Content - Method not implemented ... Test title: PUT Individual VNF Package Content - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify a VNF Package content ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.5.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.5.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -114,7 +114,7 @@ PATCH Individual VNF Package Content - Method not implemented ... Test title: PATCH Individual VNF Package Content - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update a VNF Package content ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.5.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.5.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -126,7 +126,7 @@ DELETE Individual VNF Package Content - Method not implemented ... Test title: DELETE Individual VNF Package Content - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete a VNF Package content ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.5.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.5.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -138,7 +138,7 @@ GET Individual OnBoarded VNF Package Content ... Test title: GET Individual OnBoarded VNF Package Content ... Test objective: The objective is to test the retrieval of an individual OnBoarded VNF package content and perform a validation that returned content is in zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -151,7 +151,7 @@ GET Individual OnBoarded VNF Package Content with Range Request and NFVO support ... Test title: GET Individual OnBoarded VNF Package Content with Range Request and NFVO supporting Range Requests ... Test objective: The objective is to test the retrieval of an individual OnBoarded VNF package content when using a range request to return single range of bytes from the file, with the NFVO supporting it. The test also perform a validation that returned content matches the issued range ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package file ... Post-Conditions: none @@ -166,7 +166,7 @@ GET Individual OnBoarded VNF Package Content with Range Request and NFVO not sup ... Test title: GET Individual OnBoarded VNF Package Content with Range Request and NFVO not supporting Range Requests ... Test objective: The objective is to test that the retrieval of an individual OnBoarded VNF package content, when using a range request to return single range of bytes from the file and the NFVO not supporting it, returns the full VNF Package file. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO does not support range requests to return single range of bytes from the VNF package file ... Post-Conditions: none @@ -179,7 +179,7 @@ GET Individual OnBoarded VNF Package Content with invalid Range Request ... Test title: GET Individual OnBoarded VNF Package Content with invalid Range Request ... Test objective: The objective is to test that the retrieval of an individual OnBoarded VNF package content fails when using a range request that does not match any available byte range in the file. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The NFVO supports range requests to return single range of bytes from the VNF package file ... Post-Conditions: none @@ -191,7 +191,7 @@ GET Individual OnBoarded VNF Package Content with invalid resource identifier ... Test title: GET Individual OnBoarded VNF Package Content with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual OnBoarded VNF package content fails when using an invalid resource identifier ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -203,7 +203,7 @@ GET Individual OnBoarded VNF Package Content with conflict due to onboarding sta ... Test title: GET Individual OnBoarded VNF Package Content with conflict due to onboarding state ... Test objective: The objective is to test that the retrieval of an individual VNF package content fails due to a conflict when the VNF Package is not in onboarding state ONBOARDED in the NFVO. The test also performs a validation of the JSON schema validation of the failed operation HTTP response ... Pre-conditions: The onboarding state of the VNF package for which the content is requested is different from ONBOARDED. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -216,7 +216,7 @@ POST Individual OnBoarded VNF Package Content - Method not implemented ... Test title: POST Individual OnBoarded VNF Package Content - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNF Package content ... Pre-conditions: none - ... Reference: Clause 10.4.3.5.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.5.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -228,7 +228,7 @@ PUT Individual OnBoarded VNF Package Content - Method not implemented ... Test title: PUT Individual OnBoarded VNF Package Content - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify a VNF Package content ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.5.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.5.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -240,7 +240,7 @@ PATCH Individual OnBoarded VNF Package Content - Method not implemented ... Test title: PATCH Individual OnBoarded VNF Package Content - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update a VNF Package content ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.5.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.5.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -252,7 +252,7 @@ DELETE Individual OnBoarded VNF Package Content - Method not implemented ... Test title: DELETE Individual OnBoarded VNF Package Content - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete a VNF Package content ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.3.5.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.3.5.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -264,7 +264,7 @@ GET Individual VNF Package Content with permitted authorization scope ... Test title: GET Individual VNF Package Content with permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF package content and perform a validation that returned content is in zip format ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -277,7 +277,7 @@ GET Individual VNF Package Content with not permitted authorization scope ... Test title: GET Individual VNF Package Content with not permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF package content and perform a validation that returned content is in zip format with not permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFPackageManagement-API/VNFPackages.robot b/SOL003/VNFPackageManagement-API/VNFPackages.robot index e0f5d836932c16d8d9298c29cdfa36a47fcf4677..a1af3792ae9d10a6d3f28bee0bfbc31aca8ee1bb 100644 --- a/SOL003/VNFPackageManagement-API/VNFPackages.robot +++ b/SOL003/VNFPackageManagement-API/VNFPackages.robot @@ -11,7 +11,7 @@ GET all VNF Packages ... Test title: GET all VNF Packages ... Test objective: The objective is to test the retrieval of all the available VNF packages information and perform a JSON schema and content validation of the collected data structure ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -27,7 +27,7 @@ GET VNF Packages with attribute-based filter ... Test title: GET VNF Packages with attribute-based filter ... Test objective: The objective is to test the retrieval of VNF packages using attribute-based filter, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued attribute-based filter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -41,7 +41,7 @@ GET VNF Packages with invalid attribute-based filter ... Test title: GET VNF Packages with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of VNF packages fails when using invalid attribute-based filter, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -54,7 +54,7 @@ GET VNF Packages with "all_fields" attribute selector ... Test title: GET VNF Packages with "all_fields" attribute selector ... Test objective: The objective is to test the retrieval of VNF packages with "all_fields" attribute selector, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued "all_fileds" selector ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -68,7 +68,7 @@ GET VNF Packages with "exclude_default" attribute selector ... Test title: GET VNF Packages with exclude_default attribute selector ... Test objective: The objective is to test the retrieval of VNF packages with "exclude_default" attribute selector, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued "exclude_default" selector ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -82,7 +82,7 @@ GET VNF Packages with "fields" attribute selector ... Test title: GET VNF Packages with fields attribute selector ... Test objective: The objective is to test the retrieval of VNF packages with "fields" attribute selector, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued "fields" selector ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports the use of fields attribute selector ... Post-Conditions: none @@ -96,7 +96,7 @@ GET VNF Packages with "exclude_fields" attribute selector ... Test title: GET VNF Packages with exclude_fields attribute selector ... Test objective: The objective is to test the retrieval of VNF packages with "exclude_fields" attribute selector, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued "exclude_fields" selector ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports the use of exclude_fields attribute selector ... Post-Conditions: none @@ -110,7 +110,7 @@ GET all VNF Packages with invalid resource endpoint ... Test title: GET VNF Packages with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of VNF packages fails when using invalid resource endpoint ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -122,7 +122,7 @@ POST all VNF Packages - Method not implemented ... Test title: POST all VNF Packages - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNF Packages ... Pre-conditions: none - ... Reference: Clause 10.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -134,7 +134,7 @@ PUT all VNF Packages - Method not implemented ... Test title: PUT all VNF Packages - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify existing VNF Packages ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -146,7 +146,7 @@ PATCH all VNF Packages - Method not implemented ... Test title: PATCH all VNF Packages - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update existing VNF Packages ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -158,7 +158,7 @@ DELETE all VNF Packages - Method not implemented ... Test title: DELETE all VNF Packages - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete existing VNF Packages ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -170,7 +170,7 @@ GET all VNF Packages as a Paged Response ... Test title: GET all VNF Packages as a Paged Response ... Test objective: The objective is to test the retrieval of all the available VNF packages information as a Paged Response. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports response paging for the VNF package resources ... Post-Conditions: none @@ -183,7 +183,7 @@ GET all VNF Packages as a Paged Response with nextpage_opauque_marker parameter ... Test title: GET all VNF Packages as a Paged Response with nextpage_opauque_marker parameter ... Test objective: The objective is to query information about all VNF packages as a Paged Response and retrieve the next page using the nextpage_opaque_marker parameter ... Pre-conditions: A request for retrieving all VNF packages as a paged response has been successfully issued (Test ID 7.3.3.1.13) - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports response paging for the VNF package resources ... Post-Conditions: none @@ -196,7 +196,7 @@ GET VNF Packages - Bad Request Response too Big ... Test title: GET VNF Packages - Bad Request Response too Big ... Test objective: The objective is to test that the retrieval of VNF packages fails because response is too big, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -209,7 +209,7 @@ GET all OnBoarded VNF Packages ... Test title: GET all OnBoarded VNF Packages ... Test objective: The objective is to test the retrieval of all the available onboarded VNF packages information and perform a JSON schema and content validation of the collected data structure ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -225,7 +225,7 @@ GET OnBoarded VNF Packages with attribute-based filter ... Test title: GET OnBoarded VNF Packages with attribute-based filter ... Test objective: The objective is to test the retrieval of OnBoarded VNF packages using attribute-based filter, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued attribute-based filter ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -239,7 +239,7 @@ GET OnBoarded VNF Packages with invalid attribute-based filter ... Test title: GET OnBoarded VNF Packages with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of OnBoarded VNF packages fails when using invalid attribute-based filter, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -252,7 +252,7 @@ GET OnBoarded VNF Packages with "all_fields" attribute selector ... Test title: GET OnBoarded VNF Packages with "all_fields" attribute selector ... Test objective: The objective is to test the retrieval of OnBoarded VNF packages with "all_fields" attribute selector, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued "all_fileds" selector ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 4.3.3.2.1, 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 4.3.3.2.1, 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -266,7 +266,7 @@ GET OnBoarded VNF Packages with "exclude_default" attribute selector ... Test title: GET OnBoarded VNF Packages with exclude_default attribute selector ... Test objective: The objective is to test the retrieval of OnBoarded VNF packages with "exclude_default" attribute selector, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued "exclude_default" selector ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 4.3.3.2.1, 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 4.3.3.2.1, 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -280,7 +280,7 @@ GET OnBoarded VNF Packages with "fields" attribute selector ... Test title: GET OnBoarded VNF Packages with fields attribute selector ... Test objective: The objective is to test the retrieval of OnBoarded VNF packages with "fields" attribute selector, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued "fields" selector ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 4.3.3.2.1, 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 4.3.3.2.1, 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports the use of fields attribute selector ... Post-Conditions: none @@ -294,7 +294,7 @@ GET OnBoarded VNF Packages with "exclude_fields" attribute selector ... Test title: GET OnBoarded VNF Packages with exclude_fields attribute selector ... Test objective: The objective is to test the retrieval of OnBoarded VNF packages with "exclude_fields" attribute selector, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued "exclude_fields" selector ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 4.3.3.2.1, 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 4.3.3.2.1, 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports the use of exclude_fields attribute selector ... Post-Conditions: none @@ -308,7 +308,7 @@ GET all OnBoarded VNF Packages with invalid resource endpoint ... Test title: GET OnBoarded VNF Packages with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of OnBoarded VNF packages fails when using invalid resource endpoint ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -320,7 +320,7 @@ POST all OnBoarded VNF Packages - Method not implemented ... Test title: POST all OnBoarded VNF Packages - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new OnBoarded VNF Packages ... Pre-conditions: none - ... Reference: Clause 10.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -332,7 +332,7 @@ PUT all OnBoarded VNF Packages - Method not implemented ... Test title: PUT all OnBoarded VNF Packages - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify existing OnBoarded VNF Packages ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -344,7 +344,7 @@ PATCH all OnBoarded VNF Packages - Method not implemented ... Test title: PATCH all OnBoarded VNF Packages - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update existing OnBoarded VNF Packages ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -356,7 +356,7 @@ DELETE all OnBoarded VNF Packages - Method not implemented ... Test title: DELETE all OnBoarded VNF Packages - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete existing OnBoarded VNF Packages ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -368,7 +368,7 @@ GET all OnBoarded VNF Packages as a Paged Response ... Test title: GET all OnBoarded VNF Packages as a Paged Response ... Test objective: The objective is to test the retrieval of all the available OnBoarded VNF packages information as a Paged Response. ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports response paging for the VNF package resources ... Post-Conditions: none @@ -381,7 +381,7 @@ GET all OnBoarded VNF Packages as a Paged Response with nextpage_opauque_marker ... Test title: GET all OnBoarded VNF Packages as a Paged Response with nextpage_opauque_marker parameter ... Test objective: The objective is to query information about all onBoarded VNF packages as a Paged Response and retrieve the next page using the nextpage_opaque_marker parameter ... Pre-conditions: A request for retrieving all onBoarded VNF packages as a paged response has been successfully issued (Test ID 7.3.3.1.27) - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports response paging for the VNF package resources ... Post-Conditions: none @@ -394,7 +394,7 @@ GET OnBoarded VNF Packages - Bad Request Response too Big ... Test title: GET OnBoarded VNF Packages - Bad Request Response too Big ... Test objective: The objective is to test that the retrieval of OnBoarded VNF packages fails because response is too big, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -407,7 +407,7 @@ GET VNF Packages with "fields" and "exclude_default" attribute selector ... Test title: GET VNF Packages with fields and exclude_default attribute selector ... Test objective: The objective is to test the retrieval of VNF packages with "fields" and "exclude_default" attribute selector, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued "fields" selector ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports the use of fields attribute selector ... Post-Conditions: none @@ -421,7 +421,7 @@ GET OnBoarded VNF Packages with "fields" and "exclude_default" attribute selecto ... Test title: GET OnBoarded VNF Packages with fields and exclude_default attribute selector ... Test objective: The objective is to test the retrieval of OnBoarded VNF packages with "fields" and "exclude_default" attribute selector, perform a JSON schema validation of the collected data structure, and verify that the retrieved information matches the issued "fields" selector ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 4.3.3.2.1, 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 4.3.3.2.1, 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The VNFM supports the use of fields attribute selector ... Post-Conditions: none @@ -435,7 +435,7 @@ GET all VNF Packages with permitted authorization scope ... Test title: GET all VNF Packages with permitted authorization scope ... Test objective: The objective is to test the retrieval of all the available VNF packages information and perform a JSON schema and content validation of the collected data structure with permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -451,7 +451,7 @@ GET all VNF Packages with not permitted authorization scope ... Test title: GET all VNF Packages with not permitted authorization scope ... Test objective: The objective is to test the retrieval of all the available VNF packages information and perform a JSON schema and content validation of the collected data structure with not permitted authorization scope ... Pre-conditions: One or more VNF packages are onboarded in the NFVO. - ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 10.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFPackageManagement-API/descriptors/SOL001/VNFD/vnfd_SOL001.yaml b/SOL003/VNFPackageManagement-API/descriptors/SOL001/VNFD/vnfd_SOL001.yaml index e6058afa81741c44346ae2f648c1eceba4149d77..ad65bd95b84917ec943cac67921dd410aa8a4906 100644 --- a/SOL003/VNFPackageManagement-API/descriptors/SOL001/VNFD/vnfd_SOL001.yaml +++ b/SOL003/VNFPackageManagement-API/descriptors/SOL001/VNFD/vnfd_SOL001.yaml @@ -44,7 +44,7 @@ node_types: type: list entry_schema: type: string - default: [ 'etsivnfm:v5.2.1' ] + default: [ 'etsivnfm:v5.3.1' ] interfaces: Vnflcm: type: "tosca.interfaces.nfv.Vnflcm" diff --git a/SOL003/VNFPerformanceManagement-API/ApiVersion.robot b/SOL003/VNFPerformanceManagement-API/ApiVersion.robot index bddfc8e06ac4940bd192f6bfed5fb8315b17f250..be5f6f4238c8d9bda558019162df90a9c5701531 100644 --- a/SOL003/VNFPerformanceManagement-API/ApiVersion.robot +++ b/SOL003/VNFPerformanceManagement-API/ApiVersion.robot @@ -13,7 +13,7 @@ POST API Version - Method not implemented ... Test title: POST API version - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ GET API Version ... Test title: GET API Version ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ PUT API Version - Method not implemented ... Test title: PUT API Version - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -50,7 +50,7 @@ PATCH API Version - Method not implemented ... Test title: PATCH API Version - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -62,7 +62,7 @@ DELETE API Version - Method not implemented ... Test title: DELETE API Version - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -74,7 +74,7 @@ POST API Version with apiMajorVerion - Method not implemented ... Test title: POST API version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -86,7 +86,7 @@ GET API Version with apiMajorVerion ... Test title: GET API Version with apiMajorVerion ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -99,7 +99,7 @@ PUT API Version with apiMajorVerion - Method not implemented ... Test title: PUT API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -111,7 +111,7 @@ PATCH API Version with apiMajorVerion - Method not implemented ... Test title: PATCH API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -123,7 +123,7 @@ DELETE API Version with apiMajorVerion - Method not implemented ... Test title: DELETE API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFPerformanceManagement-API/IndividualPmJob.robot b/SOL003/VNFPerformanceManagement-API/IndividualPmJob.robot index aa66bdd11975d0e1ee11650c118966b767502d2c..b36faafb06d756827f4337a8088253b0c0146fe7 100644 --- a/SOL003/VNFPerformanceManagement-API/IndividualPmJob.robot +++ b/SOL003/VNFPerformanceManagement-API/IndividualPmJob.robot @@ -17,7 +17,7 @@ GET individual VNF Performance Job ... Test title: Get individual VNF Performance Job ... Test objective: The objective is to test the retrieval of an individual VNF performance monitoring job and perform a JSON schema and content validation of the collected job data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -32,7 +32,7 @@ GET individual VNF Performance Job with invalid resource identifier ... Test title: Get individual VNF Performance Job with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual VNF performance monitoring job fails when using an invalid resource identifier, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -45,7 +45,7 @@ DELETE Individual VNF Performance Job ... Test title: Delete Individual VNF Performance Job ... Test objective: The objective is to test the deletion of an individual VNF performance monitoring job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Job is no more available in the VNFM @@ -58,7 +58,7 @@ DELETE Individual VNF Performance Job with invalid resource identifier ... Test title: Delete individual VNF Performance Job with invalid resource identifier ... Test objective: The objective is to test that the deletion of an individual VNF performance monitoring job fails when using an invalid resource identifier ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -71,7 +71,7 @@ POST Individual VNF Performance Job - Method not implemented ... Test title: POST Individual VNF Performance Job - method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF Performance Monitoring Job ... Pre-conditions: A VNF instance is instantiated - ... Reference: Clause 6.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -83,7 +83,7 @@ PUT Individual VNF Performance Job - Method not implemented ... Test title: PUT Individual VNF Performance Job - method not implemented ... Test objective: The objective is to test that PUT method is not allowed to update an existing VNF Performance Monitoring Job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -95,7 +95,7 @@ PATCH Individual VNF Performance Job ... Test title: PATCH Individual VNF Performance Job ... Test objective: The objective is to test that PATCH method allows to modify individual performace management job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -109,7 +109,7 @@ PATCH Individual VNF Performance Job - Precondition failed ... Test title: PATCH Individual VNF Performance Job - Precondition failed ... Test objective: The objective is to attempt to Modify an individual alarm resource, where the precondition was not met. ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Job is not modified by the operation @@ -123,7 +123,7 @@ PATCH Individual VNF Performance Job - Unprocessable Content ... Test title: PATCH Individual VNF Performance Job - Unprocessable Content ... Test objective: The objective is to test that PATCH method cannot modify an exsisting individual PM job resource when a request contains syntactically correct data but the data cannot be processed. ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -136,7 +136,7 @@ GET individual VNF Performance Job with permitted authorization scope ... Test title: Get individual VNF Performance Job with permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF performance monitoring job and perform a JSON schema and content validation of the collected job data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -151,7 +151,7 @@ GET individual VNF Performance Job with not permitted authorization scope ... Test title: Get individual VNF Performance Job with not permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF performance monitoring job and perform a JSON schema and content validation of the collected job data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -159,6 +159,55 @@ GET individual VNF Performance Job with not permitted authorization scope Check HTTP Response Status Code Is 403 Check HTTP Response Body Json Schema Is ProblemDetails +GET individual VNF Performance Job - Unautherized + [Documentation] Test ID: 7.3.4.2.12 + ... Test title: Get individual VNF Performance Job - Unautherized + ... Test objective: The objective is to test the retrieval of an individual VNF performance monitoring job and perform a JSON schema and content validation of the collected job data structure without providing authorization + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. + ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET individual VNF Performance Job - Unautherized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +DELETE Individual VNF Performance Job - Unauthorized + [Documentation] Test ID: 7.3.4.2.13 + ... Test title: Delete Individual VNF Performance Job - Unauthorized + ... Test objective: The objective is to test the deletion of an individual VNF performance monitoring job without providing authorization + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. + ... Reference: Clause 6.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Send Delete request for individual VNF Performance Job - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +PATCH Individual VNF Performance Job - Unauthorized + [Documentation] Test ID: 7.3.4.2.14 + ... Test title: PATCH Individual VNF Performance Job - Unauthorized + ... Test objective: The objective is to test that PATCH method allows to modify individual performace management job without providing authorization + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. + ... Reference: Clause 6.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Send Patch request for individual VNF Performance Job - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +PATCH Individual VNF Performance Job - Not Found + [Documentation] Test ID: 7.3.4.2.15 + ... Test title: PATCH Individual VNF Performance Job - Not Found + ... Test objective: The objective is to test that PATCH method allows to modify individual performace management job that does not exist + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. + ... Reference: Clause 6.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Send Patch request for individual VNF Performance Job - Not Found + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails + *** Keywords *** Create Sessions Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance @@ -174,6 +223,13 @@ GET individual VNF Performance Job ${output}= Output response Set Suite Variable ${response} ${output} +GET individual VNF Performance Job - Unautherized + Log Trying to get a Pm Job present in the NFVO Catalogue without providing authorization + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs/${pmJobId} + ${output}= Output response + Set Suite Variable ${response} ${output} GET individual VNF Performance Job with invalid resource identifier Log Trying to perform a negative get, using erroneous PM Job identifier Set Headers {"Accept": "${ACCEPT_JSON}"} @@ -191,7 +247,14 @@ Send Delete request for individual VNF Performance Job DELETE ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs/${pmJobId} ${output}= Output response Set Suite Variable ${response} ${output} - + +Send Delete request for individual VNF Performance Job - Unauthorized + Log Trying to delete an existing PM Job without providing authorization + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + DELETE ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs/${pmJobId} + ${output}= Output response + Set Suite Variable ${response} ${output} Send Delete request for individual VNF Performance Job with invalid resource identifier Log Trying to perform a negative delete, using erroneous PM Job identifier Set Headers {"Accept": "${ACCEPT_JSON}"} @@ -240,6 +303,39 @@ Send Patch request for individual VNF Performance Job Verify Mock Expectation ${notification_request} Clear Requests ${callback_endpoint} +Send Patch request for individual VNF Performance Job - Unauthorized + Set Headers {"Accept":"${ACCEPT_JSON}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} + Set Headers {"Version": "${API_VERSION}"} + ${template}= Get File jsons/PMJobModifications.json + ${body}= Format String ${template} callback_uri=${callback_uri} callback_port=${callback_port} callback_endpoint=${callback_endpoint} + Log Creating mock request and response to handle GET operation on notification endpoint + &{notification_request}= Create Mock Request Matcher GET ${callback_endpoint} + &{notification_response}= Create Mock Response status_code=204 + Log Issue the request + Create Mock Expectation ${notification_request} ${notification_response} + PATCH ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs/${pmJobId} ${body} + ${output}= Output response + Set Suite Variable ${response} ${output} + Verify Mock Expectation ${notification_request} + Clear Requests ${callback_endpoint} +Send Patch request for individual VNF Performance Job - Not Found + Set Headers {"Accept":"${ACCEPT_JSON}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} + Set Headers {"Version": "${API_VERSION}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + ${template}= Get File jsons/PMJobModifications.json + ${body}= Format String ${template} callback_uri=${callback_uri} callback_port=${callback_port} callback_endpoint=${callback_endpoint} + Log Creating mock request and response to handle GET operation on notification endpoint + &{notification_request}= Create Mock Request Matcher GET ${callback_endpoint} + &{notification_response}= Create Mock Response status_code=204 + Log Issue the request + Create Mock Expectation ${notification_request} ${notification_response} + PATCH ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs/${nonExistent_pmJobId} ${body} + ${output}= Output response + Set Suite Variable ${response} ${output} + Verify Mock Expectation ${notification_request} + Clear Requests ${callback_endpoint} Send Patch request for individual VNF Performance Job - Etag mismatch Set Headers {"Accept":"${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} diff --git a/SOL003/VNFPerformanceManagement-API/IndividualReport.robot b/SOL003/VNFPerformanceManagement-API/IndividualReport.robot index c3c61d9420fa7bde5d01a43c322e43dca7de8784..7f73373b4fce204d5cef744f16cf86639fed8e7a 100644 --- a/SOL003/VNFPerformanceManagement-API/IndividualReport.robot +++ b/SOL003/VNFPerformanceManagement-API/IndividualReport.robot @@ -11,7 +11,7 @@ Get Individual Performance Report ... Test title: Get Individual Performance Report ... Test objective: The objective is to test the retrieval of an individual VNF performance report associated to a monitoring job and perform a JSON schema validation of the collected report data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -24,7 +24,7 @@ Get Individual Performance Report with invalid resource endpoint ... Test title: Get Individual Performance Report with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of an individual VNF performance report associated to a monitoring job fails when using an invalid resource endpoint ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -37,7 +37,7 @@ POST Individual Performance Report - Method not implemented ... Test title: POST Individual Performance Report - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF performance report within a monitoring job ... Pre-conditions: A VNF instance is instantiated. - ... Reference: Clause 6.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -49,7 +49,7 @@ PUT Individual Performance Report - Method not implemented ... Test title: PUT Individual Performance Report - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to update an existing VNF performance report within a monitoring job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: Clause 6.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -61,7 +61,7 @@ PATCH Individual Performance Report - Method not implemented ... Test title: PATCH Individual Performance Report - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to modify an existing VNF performance report within a monitoring job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: Clause 6.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -73,7 +73,7 @@ DELETE Individual Performance Report - Method not implemented ... Test title: DELETE Individual Performance Report - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete an existing VNF performance report within a monitoring job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: Clause 6.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -85,7 +85,7 @@ Get Individual Performance Report with permitted authorization scope ... Test title: Get Individual Performance Report with permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF performance report associated to a monitoring job and perform a JSON schema validation of the collected report data structure with permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -98,7 +98,7 @@ Get Individual Performance Report with not permitted authorization scope ... Test title: Get Individual Performance Report with not permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF performance report associated to a monitoring job and perform a JSON schema validation of the collected report data structure with not permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -106,6 +106,18 @@ Get Individual Performance Report with not permitted authorization scope Check HTTP Response Status Code Is 403 Check HTTP Response Body Json Schema Is ProblemDetails +Get Individual Performance Report - Unauthorized + [Documentation] Test ID: 7.3.4.3.9 + ... Test title: Get Individual Performance Report - Unauthorized + ... Test objective: The objective is to test the retrieval of an individual VNF performance report associated to a monitoring job and perform a JSON schema validation of the collected report data structure without providing authorization + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. + ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Get Individual Performance Report - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails *** Keywords *** Get Individual Performance Report Log Trying to get a performance report present in the VNFM @@ -116,6 +128,12 @@ Get Individual Performance Report ${output}= Output response Set Suite Variable ${response} ${output} +Get Individual Performance Report - Unauthorized + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs/${pmJobId}/reports/${reportId} + ${output}= Output response + Set Suite Variable ${response} ${output} Get Individual Performance Report with invalid resource endpoint Log Trying to get a performance report with invalid resource endpoint Set Headers {"Accept": "${ACCEPT_JSON}"} diff --git a/SOL003/VNFPerformanceManagement-API/IndividualThreshold.robot b/SOL003/VNFPerformanceManagement-API/IndividualThreshold.robot index 47a9b823b32161b7e359f7c551148212cd763bda..cda69ecbe9767400a849fd8a2c082e72da0b3c7a 100644 --- a/SOL003/VNFPerformanceManagement-API/IndividualThreshold.robot +++ b/SOL003/VNFPerformanceManagement-API/IndividualThreshold.robot @@ -17,7 +17,7 @@ GET Individual Threshold ... Test title: GET Individual Threshold ... Test objective: The objective is to test the retrieval of an individual VNF performance threshold and perform a JSON schema and content validation of the collected threshold data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -32,7 +32,7 @@ GET Individual Threshold with invalid resource identifier ... Test title: GET Individual Threshold with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual VNF performance threshold fails when using an invalid resource identifier ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -45,7 +45,7 @@ DELETE Individual Threshold ... Test title: DELETE Individual Threshold ... Test objective: The objective is to test the deletion of an individual VNF performance threshold ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Threshold is not available anymore in the VNFM @@ -58,7 +58,7 @@ DELETE Individual Threshold with invalid resource identifier ... Test title: DELETE Individual Threshold with invalid resource identifier ... Test objective: The objective is to test the deletion of an individual VNF performance threshold ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -71,7 +71,7 @@ POST Individual Threshold - Method not implemented ... Test title: POST Individual Threshold - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF Performance Threshold ... Pre-conditions: A VNF instance is instantiated - ... Reference: Clause 6.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -83,7 +83,7 @@ PUT Individual Threshold - Method not implemented ... Test title: PUT Individual Threshold - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to update an existing VNF Performance threshold ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -95,7 +95,7 @@ PATCH Individual Threshold ... Test title: PATCH Individual Threshold ... Test objective: The objective is to test that PATCH method allows to modify an Individual threshold resource. ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -109,7 +109,7 @@ PATCH Individual Threshold - Precondition failed ... Test title: PATCH Individual Threshold - Preconition failed ... Test objective: The objective is to attempt to modify an individual threshold resource, where the precondition was not met. ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: Clause 6.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -122,7 +122,7 @@ PATCH Individual Threshold - Unprocessible Entity ... Test title: PATCH Individual Threshold - Unprocessible Entity ... Test objective: The objective is to test that PATCH method cannot modify an individual threshold resource when a request contains syntactically correct data but the data cannot be processed. ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -135,7 +135,7 @@ GET Individual Threshold with permitted authorization scope ... Test title: GET Individual Threshold with permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF performance threshold and perform a JSON schema and content validation of the collected threshold data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -150,7 +150,7 @@ GET Individual Threshold with not permitted authorization scope ... Test title: GET Individual Threshold with not permitted authorization scope ... Test objective: The objective is to test the retrieval of an individual VNF performance threshold and perform a JSON schema and content validation of the collected threshold data structure with not permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -158,6 +158,56 @@ GET Individual Threshold with not permitted authorization scope Check HTTP Response Status Code Is 403 Check HTTP Response Body Json Schema Is ProblemDetails +GET Individual Threshold - Unauthorized + [Documentation] Test ID: 7.3.4.5.12 + ... Test title: GET Individual Threshold - Unauthorized + ... Test objective: The objective is to test the retrieval of an individual VNF performance threshold and perform a JSON schema and content validation of the collected threshold data structure without providing authorization + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. + ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET Individual VNF Performance Threshold - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +DELETE Individual Threshold - Unauthorized + [Documentation] Test ID: 7.3.4.5.13 + ... Test title: DELETE Individual Threshold - Unauthorized + ... Test objective: The objective is to test the deletion of an individual VNF performance threshold without providing authorization + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. + ... Reference: Clause 6.4.6.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Send Delete request for individual VNF Performance Threshold - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +PATCH Individual Threshold - Not Found + [Documentation] Test ID: 7.3.4.5.14 + ... Test title: PATCH Individual Threshold - Not Found + ... Test objective: The objective is to test that PATCH method cannot modify an individual threshold resource when using an invalid resource identifier + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. + ... Reference: Clause 6.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Send Patch request for individual VNF Performance Threshold - Not Found + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails + +PATCH Individual Threshold - Unauthorized + [Documentation] Test ID: 7.3.4.5.15 + ... Test title: PATCH Individual Threshold - Unauthorized + ... Test objective: The objective is to test that PATCH method cannot modify an individual threshold resource when not providing authorization + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. + ... Reference: Clause 6.4.6.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Send Patch request for individual VNF Performance Threshold - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails + *** Keywords *** Create Sessions Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance @@ -172,7 +222,12 @@ GET Individual VNF Performance Threshold GET ${apiRoot}/${apiName}/${apiMajorVersion}/thresholds/${thresholdId} ${output}= Output response Set Suite Variable ${response} ${output} - +GET Individual VNF Performance Threshold - Unauthorized + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/thresholds/${thresholdId} + ${output}= Output response + Set Suite Variable ${response} ${output} GET individual VNF Performance Threshold with invalid resource identifier Log Trying to get a Threhsold with invalid resource endpoint Set Headers {"Accept": "${ACCEPT_JSON}"} @@ -190,6 +245,11 @@ Send Delete request for individual VNF Performance Threshold ${output}= Output response Set Suite Variable ${response} ${output} +Send Delete request for individual VNF Performance Threshold - Unauthorized + Set Headers {"Version": "${API_VERSION}"} + DELETE ${apiRoot}/${apiName}/${apiMajorVersion}/thresholds/${thresholdId} + ${output}= Output response + Set Suite Variable ${response} ${output} Send Delete request for individual VNF Performance Threshold with invalid resource identifier Log Trying to delete a Threhsold in the VNFM with invalid id Set Headers {"Version": "${API_VERSION}"} @@ -237,6 +297,39 @@ Send Patch request for individual VNF Performance Threshold Verify Mock Expectation ${notification_request} Clear Requests ${callback_endpoint} +Send Patch request for individual VNF Performance Threshold - Not Found + Set Headers {"Accept":"${ACCEPT_JSON}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} + Set Headers {"Version": "${API_VERSION}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + ${template}= Get File jsons/ThresholdModifications.json + ${body}= Format String ${template} callback_uri=${callback_uri} callback_port=${callback_port} callback_uri=${callback_endpoint} + Log Creating mock request and response to handle GET operation on notification endpoint + &{notification_request}= Create Mock Request Matcher GET ${callback_endpoint} + &{notification_response}= Create Mock Response status_code=204 + Log Issue the request + Create Mock Expectation ${notification_request} ${notification_response} + PATCH ${apiRoot}/${apiName}/${apiMajorVersion}/thresholds/${nonExistentThresholdId} + ${output}= Output response + Set Suite Variable ${response} ${output} + Verify Mock Expectation ${notification_request} + Clear Requests ${callback_endpoint} +Send Patch request for individual VNF Performance Threshold - Unauthorized + Set Headers {"Accept":"${ACCEPT_JSON}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} + Set Headers {"Version": "${API_VERSION}"} + ${template}= Get File jsons/ThresholdModifications.json + ${body}= Format String ${template} callback_uri=${callback_uri} callback_port=${callback_port} callback_uri=${callback_endpoint} + Log Creating mock request and response to handle GET operation on notification endpoint + &{notification_request}= Create Mock Request Matcher GET ${callback_endpoint} + &{notification_response}= Create Mock Response status_code=204 + Log Issue the request + Create Mock Expectation ${notification_request} ${notification_response} + PATCH ${apiRoot}/${apiName}/${apiMajorVersion}/thresholds/${thresholdId} + ${output}= Output response + Set Suite Variable ${response} ${output} + Verify Mock Expectation ${notification_request} + Clear Requests ${callback_endpoint} Send Patch request for individual VNF Performance Threshold - Etag mismatch Log Trying to PUT threshold Set Headers {"Accept":"${ACCEPT_JSON}"} diff --git a/SOL003/VNFPerformanceManagement-API/NotificationEndpoint.robot b/SOL003/VNFPerformanceManagement-API/NotificationEndpoint.robot index bf5fc1946b53896ac2ce9033a0a8de62422e88d5..ad46c7255add6eb43c35c5940365246e4b7af628 100644 --- a/SOL003/VNFPerformanceManagement-API/NotificationEndpoint.robot +++ b/SOL003/VNFPerformanceManagement-API/NotificationEndpoint.robot @@ -14,7 +14,7 @@ Performance Information Available Notification ... Test title: Performance Information Available Notification ... Test objective: The objective is to test that the POST request triggers Performance Information Available Notification. ... Pre-conditions: A VNF performance job is created, and a subscription for performance information available notification is available in the VNFM. - ... Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -26,7 +26,7 @@ Threshold Crossed Notification ... Test title: Threshold Crossed Notification ... Test objective: The objective is to test that the POST request triggers Threshold Crossed Notification ... Pre-conditions: A VNF performance job is created, and a subscription for threshold crossed notification is available in the VNFM. - ... Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -37,7 +37,7 @@ Test the Notification Endpoint - Successful ... Test title: Test the Notification Endpoint - Successful ... Test objective: The objective is to test the Notification Endpoint provided by the notification consumer. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 6.4.9.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.9.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -48,7 +48,7 @@ PUT Notification endpoint - Method Not Implemented ... Test title: PUT Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PUT method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 6.4.9.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.9.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -59,7 +59,7 @@ PATCH Notification endpoint - Method Not Implemented ... Test title: PATCH Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PATCH method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 6.4.9.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.9.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -70,13 +70,35 @@ DELETE Notification endpoint - Method Not Implemented ... Test title: DELETE Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the DELETE method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 6.4.9.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.9.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none DELETE notification endpoint Check HTTP Response Status Code Is 405 +Performance Information Available Notification - Unauthorized + [Documentation] Test ID: 7.3.4.10.7 + ... Test title: Performance Information Available Notification - Unauthorized + ... Test objective: The objective is to test that the POST request triggers Performance Information Available Notification without proper authorization. + ... Pre-conditions: A VNF performance job is created, and a subscription for performance information available notification is available in the VNFM. + ... Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_Notif_Endpoint + ... Applicability: none + ... Post-Conditions: none + Post Performance Information Available Notification - Unauthorized + Check HTTP Response Status Code Is 401 +Test the Notification Endpoint - Unauthorized + [Documentation] Test ID: 7.3.4.10.8 + ... Test title: Test the Notification Endpoint - Unauthorized + ... Test objective: The objective is to test the Notification Endpoint provided by the notification consumer without proper authorization. + ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. + ... Reference: Clause 6.4.9.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_Notif_Endpoint + ... Applicability: none + ... Post-Conditions: none + Get reach the notification endpoint - Unauthorized + Check HTTP Response Status Code Is 401 *** Keywords *** Check resource existence and get CallbackUri Set Headers {"Accept":"${ACCEPT_JSON}"} @@ -104,7 +126,14 @@ Post Performance Information Available Notification Post ${callbackResp} ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} - +Post Performance Information Available Notification - Unauthorized + Set Headers {"Accept":"${ACCEPT_JSON}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + ${body} = Get File jsons/PerformanceInformationAvailableNotification.json + Post ${callbackResp} ${body} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} Post Threshold Crossed Notification log Trying to perform a POST to get notification Set Headers {"Accept":"${ACCEPT_JSON}"} diff --git a/SOL003/VNFPerformanceManagement-API/Notifications.robot b/SOL003/VNFPerformanceManagement-API/Notifications.robot index 4aa48954d8c60b0354bebc058375cfab095651ae..b33db4d7cf3529d567e4ed4f1feea30a372c68e2 100644 --- a/SOL003/VNFPerformanceManagement-API/Notifications.robot +++ b/SOL003/VNFPerformanceManagement-API/Notifications.robot @@ -1,4 +1,4 @@ -*** Setting *** +*** Settings *** Resource environment/variables.txt Suite Setup Create Sessions Suite Teardown Terminate All Processes kill=true @@ -8,6 +8,7 @@ Library OperatingSystem Library BuiltIn Library Collections Library String +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false *** Test Cases *** @@ -16,26 +17,28 @@ VNF Performance Information Availability Notification ... Test title: VNF Performance Information Availability Notification ... Test objective: The objective is to test the dispatch of VNF Performance Information Availability Notification when new VNF performance information is available in the NFVO, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF performance job is created, and a subscription for information availability notifications is available in the VNFM. - ... Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Trigger the availability of VNF Performance Information (external action) Check Performance Information Available Notification Http POST Request Body Json Schema Is PerformanceInformationAvailableNotification Check Performance Information Available Notification Http POST Request Body notificationType attribute Is PerformanceInformationAvailableNotification + Check Performance Information Available Notification VNF Threshold Crossed Notification [Documentation] Test ID: 7.3.4.8.2 ... Test title: VNF Threshold Crossed Notification ... Test objective: The objective is to test the dispatch of VNF Threshold Crossed Notification when a previously set VNF performance metric threshold is crossed, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF performance job is created, and a threshold subscription is available in the VNFM. - ... Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Trigger the cross of VNF Performance Threshold (external action) Check Threshold Crossed Notification Http POST Request Body Json Schema Is ThresholdCrossedNotification Check Threshold Crossed Notification Http POST Request Body notificationType attribute Is ThresholdCrossedNotification + Check Threshold Crossed Notification *** Keywords *** @@ -106,6 +109,50 @@ Configure Notification Forward &{notification_fwd}= Create Mock Http Forward ${endpoint_fwd} Create Mock Expectation With Http Forward ${notification_tmp} ${notification_fwd} +Check Performance Information Available Notification + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} msg=No notification received at callback endpoint! + ${request_type}= Evaluate type(${requests}) + ${last_request}= Run Keyword If "${request_type}" == "" + ... Get From List ${requests} -1 + ... ELSE + ... Set Variable ${requests} + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + Log Raw body: ${body_text} + ${notification}= Evaluate json.loads(r'''${body_text}''') json + ${pmJobId}= Get From Dictionary ${notification} pmJobId + ${pmJobUrl}= Set Variable ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs/${pmJobId} + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 + ... Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + GET ${pmJobUrl} + Integer response status 200 + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} + +Check Threshold Crossed Notification + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} msg=No notification received at callback endpoint! + ${request_type}= Evaluate type(${requests}) + ${last_request}= Run Keyword If "${request_type}" == "" + ... Get From List ${requests} -1 + ... ELSE + ... Set Variable ${requests} + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + Log Raw body: ${body_text} + ${notification}= Evaluate json.loads(r'''${body_text}''') json + ${thresholdId}= Get From Dictionary ${notification} thresholdId + ${thresholdUrl}= Set Variable ${apiRoot}/${apiName}/${apiMajorVersion}/thresholds/${thresholdId} + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 + ... Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + GET ${thresholdUrl} + Integer response status 200 + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} + Create Sessions Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance Wait For Process handle=mockInstance timeout=5s on_timeout=continue diff --git a/SOL003/VNFPerformanceManagement-API/PMJobs.robot b/SOL003/VNFPerformanceManagement-API/PMJobs.robot index 3a30e8be9c68015b7e0373dc0759d17c0753d7ee..1842e6b5a696851aa8a61d8d44549ea228c0d9b2 100644 --- a/SOL003/VNFPerformanceManagement-API/PMJobs.robot +++ b/SOL003/VNFPerformanceManagement-API/PMJobs.robot @@ -18,7 +18,7 @@ GET all VNF Performance Monitoring Jobs ... Test title: GET all VNF Performance Monitoring Jobs ... Test objective: The objective is to test the retrieval of all the available VNF performance monitoring jobs and perform a JSON schema and content validation of the collected jobs data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -32,7 +32,7 @@ GET VNF Performance Monitoring Jobs with attribute-based filter ... Test title: GET all VNF Performance Monitoring Jobs with attribute-based filter ... Test objective: The objective is to test the retrieval of VNF performance monitoring jobs using attribute-based filter, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued attribute-based filter ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -46,7 +46,7 @@ GET all VNF Performance Monitoring Jobs with all_fields attribute selector ... Test title: GET all VNF Performance Monitoring Jobs with all_fields attribute selector ... Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs all_fields attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued all_fileds selector ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -60,7 +60,7 @@ GET all VNF Performance Monitoring Jobs with exclude_default attribute selector ... Test title: GET all VNF Performance Monitoring Jobs with exclude_default attribute selector ... Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs exclude_default attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued exclude_default selector ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -74,7 +74,7 @@ GET all VNF Performance Monitoring Jobs with fields attribute selector ... Test title: GET all VNF Performance Monitoring Jobs with fields attribute selector ... Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs fields attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued fields selector ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports the use of exclude_fields attribute selector ... Post-Conditions: none @@ -88,7 +88,7 @@ GET all VNF Performance Monitoring Jobs with exclude_fields attribute selector ... Test title: GET all VNF Performance Monitoring Jobs with exclude_fields attribute selector ... Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs exclude_fields attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued exclude_fields selector ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports the use of exclude_fields attribute selector ... Post-Conditions: none @@ -102,7 +102,7 @@ GET VNF Performance Monitoring Jobs with invalid attribute-based filter ... Test title: GET VNF Performance Monitoring Jobs with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of VNF performance monitoring jobs fails when using invalid attribute-based filter, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -115,7 +115,7 @@ GET VNF Performance Monitoring Jobs with invalid resource endpoint ... Test title: GET VNF Performance Monitoring Jobs with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of VNF performance monitoring jobs fails when using invalid resource endpoint ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -127,7 +127,7 @@ Create new VNF Performance Monitoring Job ... Test title: Create a new VNF Performance Monitoring Job ... Test objective: The objective is to test the creation of a new VNF performance monitoring job and perform the JSON schema validation of the returned job data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Job is successfully created on the VNFM @@ -144,7 +144,7 @@ PUT all VNF Performance Monitoring Jobs - Method not implemented ... Test title: PUT all VNF Performance Monitoring Jobs - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify VNF Performance Monitoring Jobs ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -156,7 +156,7 @@ PATCH all VNF Performance Monitoring Jobs - (Method not implemented) ... Test title: PATCH all VNF Performance Monitoring Jobs - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update VNF Performance Monitoring Jobs ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -168,7 +168,7 @@ DELETE all VNF Performance Monitoring Jobs - Method not implemented ... Test title: DELETE all VNF Performance Monitoring Jobs - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to update VNF Performance Monitoring Jobs ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -181,7 +181,7 @@ GET all VNF Performance Monitoring Jobs as Paged Response ... Test title: GET all VNF Performance Monitoring Jobs as Paged Response ... Test objective: The objective is to test the retrieval of all the available VNF performance monitoring jobs as Paged Response. ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the VNF performance jobs resources ... Post-Conditions: none @@ -194,7 +194,7 @@ GET all VNF Performance Monitoring Jobs as Paged Response with nextpage_opauque_ ... Test title: GET all VNF Performance Monitoring Jobs as Paged Response with nextpage_opauque_marker parameter ... Test objective: The objective is to query information about all the available VNF performance monitoring jobs as a Paged Response and retrieve the next page using the nextpage_opaque_marker parameter ... Pre-conditions: A request for retrieving the available VNF performance monitoring jobs as a paged response has been successfully issued (Test ID 7.3.4.1.13) - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the VNF performance jobs resources ... Post-Conditions: none @@ -206,7 +206,7 @@ GET VNF Performance Monitoring Jobs - Bad Request Response too Big ... Test title: GET VNF Performance Monitoring Jobs - Bad Request Response too Big ... Test objective: The objective is to test that the retrieval of VNF performance monitoring jobs fails because response is too big, and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -219,7 +219,7 @@ GET all VNF Performance Monitoring Jobs with fields and exclude_default attribut ... Test title: GET all VNF Performance Monitoring Jobs with fields and exclude_default attribute selector ... Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs fields and exclude_default attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued fields selector ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports the use of fields and exclude_fields attribute selector ... Post-Conditions: none @@ -233,7 +233,7 @@ POST Create new VNF Performance Monitoring Job - Unprocessable Content ... Test title: POST Create new VNF Performance Monitoring Job - Unprocessable Content ... Test objective: The objective is to test the creation of a new VNF performance monitoring job fails when a request contains syntactically correct data but the data cannot be processed. ... Pre-conditions: none - ... Reference: clause 6.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: clause 6.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -246,7 +246,7 @@ GET all VNF Performance Monitoring Jobs with permitted authorization scope ... Test title: GET all VNF Performance Monitoring Jobs with permitted authorization scope ... Test objective: The objective is to test the retrieval of all the available VNF performance monitoring jobs and perform a JSON schema and content validation of the collected jobs data structure with permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -260,7 +260,7 @@ GET all VNF Performance Monitoring Jobs with not permitted authorization scope ... Test title: GET all VNF Performance Monitoring Jobs with not permitted authorization scope ... Test objective: The objective is to test the retrieval of all the available VNF performance monitoring jobs and perform a JSON schema and content validation of the collected jobs data structure with not permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -268,6 +268,30 @@ GET all VNF Performance Monitoring Jobs with not permitted authorization scope Check HTTP Response Status Code Is 403 Check HTTP Response Body Json Schema Is ProblemDetails +GET all VNF Performance Monitoring Jobs - Unauthorized + [Documentation] Test ID: 7.3.4.1.19 + ... Test title: GET all VNF Performance Monitoring Jobs - Unauthorized + ... Test objective: The objective is to test the retrieval of all the available VNF performance monitoring jobs and perform a JSON schema and content validation of the collected jobs data structure without providing authorization + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET all VNF Performance Monitoring Jobs - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +Create new VNF Performance Monitoring Job - Unauthorized + [Documentation] Test ID: 7.3.4.1.20 + ... Test title: Create a new VNF Performance Monitoring Job - Unauthorized + ... Test objective: The objective is to test the creation of a new VNF performance monitoring job and perform the JSON schema validation of the returned job data structure without providing authorization + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. + ... Reference: Clause 6.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Send Post Request Create new VNF Performance Monitoring Job - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails *** Keywords *** Create Sessions Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance @@ -282,7 +306,13 @@ GET all VNF Performance Monitoring Jobs GET ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs ${output}= Output response Set Suite Variable ${response} ${output} - +GET all VNF Performance Monitoring Jobs - Unauthorized + Log Trying to get all PM Jobs present in the VNFM without providing authorization + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs + ${output}= Output response + Set Suite Variable ${response} ${output} Check HTTP Response Header Contain Link ${linkURL}= Get Value From Json ${response['headers']} $..Link Should Not Be Empty ${linkURL} @@ -398,6 +428,23 @@ Send Post Request Create new VNF Performance Monitoring Job Verify Mock Expectation ${notification_request} Clear Requests ${callback_endpoint} +Send Post Request Create new VNF Performance Monitoring Job - Unauthorized + Log Creating a new PM Job without providing authorization + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + ${template}= Get File jsons/CreatePmJobRequest.json + ${body}= Format String ${template} objectInstanceIds=${objectInstanceIds} callback_uri=${callback_uri} callback_port=${callback_port} callback_endpoint=${callback_endpoint} + Log Creating mock request and response to handle GET operation on notification endpoint + &{notification_request}= Create Mock Request Matcher GET ${callback_endpoint} + &{notification_response}= Create Mock Response status_code=204 + Log Issue the request + Create Mock Expectation ${notification_request} ${notification_response} + POST ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs ${body} + ${output}= Output response + Set Suite Variable ${response} ${output} + Verify Mock Expectation ${notification_request} + Clear Requests ${callback_endpoint} Send PUT Request for all VNF Performance Monitoring Jobs Log Trying to perform a PUT. This method should not be implemented Set Headers {"Accept": "${ACCEPT_JSON}"} diff --git a/SOL003/VNFPerformanceManagement-API/Thresholds.robot b/SOL003/VNFPerformanceManagement-API/Thresholds.robot index cfac65c5d08c37fc9aa473034e3cf3ea688da7d7..5f42e0ddc6bd111388b4e281dfd2af41d3630574 100644 --- a/SOL003/VNFPerformanceManagement-API/Thresholds.robot +++ b/SOL003/VNFPerformanceManagement-API/Thresholds.robot @@ -17,7 +17,7 @@ GET All Performance Thresholds ... Test title: GET All Performance Thresholds ... Test objective: The objective is to test the retrieval of all the available VNF performance thresholds and perform a JSON schema validation of the collected thresholds data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -30,7 +30,7 @@ GET Performance Thresholds with attribute-based filter ... Test title: GET Performance Thresholds with attribute-based filter ... Test objective: The objective is to test the retrieval of all the available VNF performance thresholds when using attribute-based filters, perform a JSON schema validation of the collected thresholds data structure, and verify that the retrieved information matches the issued attribute-based filter ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -44,7 +44,7 @@ GET Performance Thresholds with invalid attribute-based filter ... Test title: GET Performance Thresholds with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of VNF performance thresholds fails when using invalid attribute-based filter, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -56,7 +56,7 @@ GET Performance Thresholds with invalid resource endpoint ... Test title: GET Performance Thresholds with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of VNF performance thresholds fails when using invalid resource endpoint, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -69,7 +69,7 @@ Create new Performance Threshold ... Test title: Create new Performance Threshold ... Test objective: The objective is to test the creation of a new VNF performance threshold and perform the JSON schema validation of the returned threshold data structure ... Pre-conditions: A VNF instance is instantiated. - ... Reference: Clause 6.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Threshold is successfully created on the VNFM @@ -86,7 +86,7 @@ PUT Performance Thresholds - Method not implemented ... Test title: PUT Performance Thresholds - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify VNF Performance Thresholds ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNF. - ... Reference: Clause 6.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -98,7 +98,7 @@ PATCH Performance Thresholds - Method not implemented ... Test title: PATCH Performance Thresholds - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to modify VNF Performance Thresholds ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -110,7 +110,7 @@ DELETE Performance Thresholds - Method not implemented ... Test title: DELETE Performance Thresholds - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to update VNF Performance Thresholds ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF performance thresholds are not deleted by the failed operation @@ -123,7 +123,7 @@ GET All Performance Thresholds as Paged Response ... Test title: GET All Performance Thresholds as Paged Response ... Test objective: The objective is to test the retrieval of all the available VNF performance thresholds as a Paged Response. ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -136,7 +136,7 @@ GET Performance Thresholds - Bad Request Response too Big ... Test title: GET Performance Thresholds - Bad Request Response too Big ... Test objective: The objective is to test that the retrieval of VNF performance thresholds fails because response is too big, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -149,7 +149,7 @@ POST create new Performance Threshold - Unprocessable Content ... Test title: POST create new Performance Threshold - Unprocessable Content ... Test objective: The objective is to test that creation of new VNF performance threshold fails when a request contains syntactically correct data but the data cannot be processed. ... Pre-conditions: A VNF instance is instantiated. - ... Reference: Clause 6.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -162,7 +162,7 @@ GET All Performance Thresholds with permitted authorization scope ... Test title: GET All Performance Thresholds with permitted authorization scope ... Test objective: The objective is to test the retrieval of all the available VNF performance thresholds and perform a JSON schema validation of the collected thresholds data structure with permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -175,14 +175,37 @@ GET All Performance Thresholds with not permitted authorization scope ... Test title: GET All Performance Thresholds with not permitted authorization scope ... Test objective: The objective is to test the retrieval of all the available VNF performance thresholds and perform a JSON schema validation of the collected thresholds data structure with not permitted authorization scope ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none GET all Performance Thresholds with not permitted authorization scope Check HTTP Response Status Code Is 403 Check HTTP Response Body Json Schema Is ProblemDetails - +Create new Performance Threshold - Unauthorized + [Documentation] Test ID: 7.3.4.4.14 + ... Test title: Create new Performance Threshold - Unauthorized + ... Test objective: The objective is to test the creation of a new VNF performance threshold and perform the JSON schema validation of the returned threshold data structure without providing authorization + ... Pre-conditions: A VNF instance is instantiated. + ... Reference: Clause 6.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Send Post Request Create new Performance Threshold - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails +GET All Performance Thresholds - Unauthorized + [Documentation] Test ID: 7.3.4.4.15 + ... Test title: GET All Performance Thresholds - Unauthorized + ... Test objective: The objective is to test the retrieval of all the available VNF performance thresholds and perform a JSON schema validation of the collected thresholds data structure without providing authorization + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. + ... Reference: Clause 6.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET all Performance Thresholds - Unauthorized + Check HTTP Response Status Code Is 401 + Check HTTP Response Body Json Schema Is ProblemDetails *** Keywords *** Create Sessions Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance @@ -198,6 +221,12 @@ GET all Performance Thresholds ${output}= Output response Set Suite Variable ${response} ${output} +GET all Performance Thresholds - Unauthorized + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/thresholds + ${output}= Output response + Set Suite Variable ${response} ${output} GET Performance Thresholds with attribute-based filter Log Trying to get thresholds present in the VNFM with filter Set Headers {"Accept": "${ACCEPT_JSON}"} @@ -237,6 +266,15 @@ Send Post Request Create new Performance Threshold ${output}= Output response Set Suite Variable ${response} ${output} +Send Post Request Create new Performance Threshold - Unauthorized + Set Headers {"Version": "${API_VERSION}"} + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} + ${template}= Get File jsons/CreateThresholdRequest.json + ${request}= Format String ${template} objectInstanceIds=${objectInstanceIds} + POST ${apiRoot}/${apiName}/${apiMajorVersion}/thresholds ${request} + ${output}= Output response + Set Suite Variable ${response} ${output} Send Post Request Create new Performance Threshold with unprocessable content Log trying to create a new Threshold Set Headers {"Version": "${API_VERSION}"} diff --git a/SOL003/VNFPerformanceManagement-API/VNFPerformanceManagementKeywords.robot b/SOL003/VNFPerformanceManagement-API/VNFPerformanceManagementKeywords.robot index a241b397bfea22c5646f6dc77391f4cf3b7817ba..6381a2d0f080a05d671f5eee474941562abd52c9 100644 --- a/SOL003/VNFPerformanceManagement-API/VNFPerformanceManagementKeywords.robot +++ b/SOL003/VNFPerformanceManagement-API/VNFPerformanceManagementKeywords.robot @@ -49,6 +49,13 @@ GET reach the notification endpoint GET ${callbackResp} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} +GET reach the notification endpoint - Unauthorized + Log Trying to reach the notification endpoint using GET method without providing authorization. + Set Headers {"Accept": "${ACCEPT_JSON}"} + Set Headers {"Version": "${API_VERSION}"} + GET ${callbackResp} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} PUT notification endpoint Log Trying to perform a PUT. This method should not be implemented. Set Headers {"Accept": "${ACCEPT_JSON}"} diff --git a/SOL003/VNFPerformanceManagement-API/environment/variables.txt b/SOL003/VNFPerformanceManagement-API/environment/variables.txt index 4312cfba8a5fb9fdf5952c1430004beda7f186c7..210cc176fcc4c8f733d5f53a73d4b0c5c541e9d1 100644 --- a/SOL003/VNFPerformanceManagement-API/environment/variables.txt +++ b/SOL003/VNFPerformanceManagement-API/environment/variables.txt @@ -40,6 +40,7 @@ ${objectInstanceIds} 1f50d68b-82e8-4deb-bd40-c934d4d1ac0a ${nextPageUri} /some_uri ${pmJobId} 29f4ff6a-be91-4ec8-856e-fcf1e2479e4e +${nonExistent_pmJobId} nonExistent_pmJobId ${erroneousPmJobId} erroneousPmJobId ${newPmJobId} newPmJobId ${response}= httpresponse @@ -49,7 +50,7 @@ ${origresponse} ${thresholdId} 1f50d68b-82e8-4deb-bd40-c934d4d1ac0a ${erroneousThresholdId} erroneousThresholdId ${newThresholdId} newThresholdId - +${nonExistentThresholdId} nonExistentThresholdId ${callback_endpoint_fwd} /endpoint/check diff --git a/SOL003/VNFSnapshotPackageManagement-API/ApiVersion.robot b/SOL003/VNFSnapshotPackageManagement-API/ApiVersion.robot index f77af28d4830ec8648cf7b54409c229419171a33..f233dfd37305ad8da46a91afb44bc5ef3133c89b 100644 --- a/SOL003/VNFSnapshotPackageManagement-API/ApiVersion.robot +++ b/SOL003/VNFSnapshotPackageManagement-API/ApiVersion.robot @@ -7,7 +7,7 @@ POST API Version - Method not implemented ... Test title: POST API version - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -19,7 +19,7 @@ GET API Version ... Test title: GET API Version ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -32,7 +32,7 @@ PUT API Version - Method not implemented ... Test title: PUT API Version - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -44,7 +44,7 @@ PATCH API Version - Method not implemented ... Test title: PATCH API Version - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -56,7 +56,7 @@ DELETE API Version - Method not implemented ... Test title: DELETE API Version - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -68,7 +68,7 @@ POST API Version with apiMajorVerion - Method not implemented ... Test title: POST API version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -80,7 +80,7 @@ GET API Version with apiMajorVerion ... Test title: GET API Version with apiMajorVerion ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -93,7 +93,7 @@ PUT API Version with apiMajorVerion - Method not implemented ... Test title: PUT API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -105,7 +105,7 @@ PATCH API Version with apiMajorVerion - Method not implemented ... Test title: PATCH API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -117,7 +117,7 @@ DELETE API Version with apiMajorVerion - Method not implemented ... Test title: DELETE API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackage.robot b/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackage.robot index 28c39d2f4a402658b7e28db6f6f1f400906e2a4a..d6ab701bd3d6e9a968c4b24def5c6768c9333741 100644 --- a/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackage.robot +++ b/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackage.robot @@ -7,7 +7,7 @@ POST Individual VNF Snapshot Package - Method not implemented ... Test title: POST Individual VNF Snapshot Package - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -19,7 +19,7 @@ GET Information about an individual VNF Snapshot Package - SUCCESSFUL ... Test title: GET Information about an individual VNF Snapshot Package - SUCCESSFUL ... Test objective: The objective is to query information about a VNF Snapshot Package resource ... Pre-conditions: none - ... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -32,7 +32,7 @@ GET Information about an individual VNF Snapshot Package - NOT FOUND ... Test title: GET Information about an individual VNF Snapshot Package - NOT FOUND ... Test objective: The objective is to test that the retrieval of individual VNF Snapshot Package fails when using an invalid resource identifier. ... Pre-conditions: At least one individual VNF Snapshot Package is available in the NFV-MANO. - ... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFV-MANO ... Applicability: none ... Post-Conditions: none @@ -45,7 +45,7 @@ PUT Individual VNF Snapshot Package - Method not implemented ... Test title: PUT Individual VNF Snapshot Package - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: VNF Snapshot Package not modified @@ -57,7 +57,7 @@ PATCH Individual VNF Snapshot Package - Method Not implemented ... Test title: PATCH Individual VNF Snapshot Package ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: VNF Snapshot Package modified @@ -69,7 +69,7 @@ DELETE Individual VNF Snapshot Package - Method Not implemented ... Test title: DELETE Individual VNF Snapshot Package - Method Not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: VNF Snapshot Package deleted @@ -81,7 +81,7 @@ GET Information about an individual VNF Snapshot Package - SUCCESSFUL with permi ... Test title: GET Information about an individual VNF Snapshot Package - SUCCESSFUL with permitted authorization scope ... Test objective: The objective is to query information about a VNF Snapshot Package resource ... Pre-conditions: none - ... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -94,7 +94,7 @@ GET Information about an individual VNF Snapshot Package with not permitted auth ... Test title: GET Information about an individual VNF Snapshot Package with not permitted authorization scope ... Test objective: The objective is to query information about a VNF Snapshot Package resource ... Pre-conditions: none - ... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackageArtifact.robot b/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackageArtifact.robot index daf65ec3b589ad8e6095fa287152e9bc68a963c9..febfd26f36c6d8e97e1ac88a83d69cee7500b8e8 100644 --- a/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackageArtifact.robot +++ b/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackageArtifact.robot @@ -7,7 +7,7 @@ POST Individual VNF Snapshot Package Artifact - Method not implemented ... Test title: POST Individual VNF Snapshot Package Artifact - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -19,7 +19,7 @@ GET Individual VNF Snapshot Package Artifact - Complete File ... Test title: GET Information about an individual VNF Snapshot Package - Complete File ... Test objective: The objective is to fetch the whole content of a VNF snapshot package using GET method. ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -32,7 +32,7 @@ GET Individual VNF Snapshot Package Artifact - Partial Content ... Test title: GET Individual VNF Snapshot Package Artifact - Partial Content ... Test objective: The objective is to fetch partial content of a VNF snapshot package by sending a range request using GET method. ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: NFVO supports range requests ... Post-Conditions: none @@ -47,7 +47,7 @@ GET Individual VNF Snapshot Package Artifact - Range Request Not Supported ... Test title: GET Information about an individual VNF Snapshot Package - Range Request Not Supported ... Test objective: The objective is to test that the whole content of a VNF snapshot package is delivered even with a range request when NFVO does not support range requests. ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: NFVO does not support range requests ... Post-Conditions: none @@ -60,7 +60,7 @@ GET Individual VNF Snapshot Package Artifact - Range Not Satisfiable ... Test title: GET Information about an individual VNF Snapshot Package - Range Not Satisfiable ... Test objective: The objective is to test that an error is returned when the byte range passed in the "Range" header does not match any available byte range in the VNF snapshot package file. ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: NFVO supports range requests ... Post-Conditions: none @@ -72,7 +72,7 @@ GET Individual VNF Snapshot Package Artifact - Conflict ... Test title: GET Information about an individual VNF Snapshot Package - Conflict ... Test objective: The objective is to test that an error is returned when the "state" of the VNF snapshot package has a value different from "AVAILABLE". ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The "state" of the VNF snapshot package has a value different from "AVAILABLE". ... Post-Conditions: none @@ -84,7 +84,7 @@ PUT Individual VNF Snapshot Package Artifact - Method not implemented ... Test title: PUT Individual VNF Snapshot Package Artifact - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: VNF Snapshot Package not modified @@ -96,7 +96,7 @@ PATCH Individual VNF Snapshot Package Artifact - Method Not implemented ... Test title: PATCH Individual VNF Snapshot Package Artifact ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -108,7 +108,7 @@ DELETE Individual VNF Snapshot Package Artifact - Method Not implemented ... Test title: DELETE Individual VNF Snapshot Package Artifact - Method Not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -120,7 +120,7 @@ GET Individual VNF Snapshot Package Artifact - Complete File with permitted auth ... Test title: GET Information about an individual VNF Snapshot Package - Complete File with permitted authorization scope ... Test objective: The objective is to fetch the whole content of a VNF snapshot package using GET method with permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -133,7 +133,7 @@ GET Individual VNF Snapshot Package Artifact - Complete File with not permitted ... Test title: GET Information about an individual VNF Snapshot Package - Complete File with not permitted authorization scope ... Test objective: The objective is to fetch the whole content of a VNF snapshot package using GET method with not permitted authorization scope. ... Pre-conditions: none - ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.5.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackageContent.robot b/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackageContent.robot index 24468f20bf58a7856e115f4d91342a9e03536e49..004280fc4f6810c84e840c7c3e84155326109e3e 100644 --- a/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackageContent.robot +++ b/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackageContent.robot @@ -7,7 +7,7 @@ POST VNF Snapshot Package Content - Method not implemented ... Test title: POST VNF Snapshot Package Content - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -19,7 +19,7 @@ GET VNF Snapshot Package Content - Complete File ... Test title: GET Information about an individual VNF Snapshot Package - Complete File ... Test objective: The objective is to fetch the whole content of a VNF snapshot package using GET method. ... Pre-conditions: none - ... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -32,7 +32,7 @@ GET VNF Snapshot Package Content - Partial Content ... Test title: GET VNF Snapshot Package Content - Partial Content ... Test objective: The objective is to fetch partial content of a VNF snapshot package by sending a range request using GET method. ... Pre-conditions: none - ... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: NFVO supports range requests ... Post-Conditions: none @@ -47,7 +47,7 @@ GET VNF Snapshot Package Content - Range Request Not Supported ... Test title: GET Information about an individual VNF Snapshot Package - Range Request Not Supported ... Test objective: The objective is to test that the whole content of a VNF snapshot package is delivered even with a range request when NFVO does not support range requests. ... Pre-conditions: none - ... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: NFVO does not support range requests ... Post-Conditions: none @@ -60,7 +60,7 @@ GET VNF Snapshot Package Content - Range Not Satisfiable ... Test title: GET Information about an individual VNF Snapshot Package - Range Not Satisfiable ... Test objective: The objective is to test that an error is returned when the byte range passed in the "Range" header does not match any available byte range in the VNF snapshot package file. ... Pre-conditions: none - ... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: NFVO supports range requests ... Post-Conditions: none @@ -72,7 +72,7 @@ GET VNF Snapshot Package Content - Conflict ... Test title: GET Information about an individual VNF Snapshot Package - Conflict ... Test objective: The objective is to test that an error is returned when the "state" of the VNF snapshot package has a value different from "AVAILABLE". ... Pre-conditions: none - ... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: The "state" of the VNF snapshot package has a value different from "AVAILABLE". ... Post-Conditions: none @@ -84,7 +84,7 @@ PUT VNF Snapshot Package Content - Method not implemented ... Test title: PUT VNF Snapshot Package Content - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: VNF Snapshot Package not modified @@ -96,7 +96,7 @@ PATCH VNF Snapshot Package Content - Method Not implemented ... Test title: PATCH VNF Snapshot Package Content ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -108,7 +108,7 @@ DELETE VNF Snapshot Package Content - Method Not implemented ... Test title: DELETE VNF Snapshot Package Content - Method Not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackages.robot b/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackages.robot index 5f4effc8cd38d7e5438d3728d1d09763d89eb911..449ad271dd3f595c2b1a695cc5af07d3ad45e24b 100644 --- a/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackages.robot +++ b/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackages.robot @@ -7,7 +7,7 @@ POST VNF Snapshot Packages - Method not implemented ... Test title: POST VNF Snapshot Packages - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -19,7 +19,7 @@ GET information about multiple VNF Snapshot Packages ... Test title: GET information about multiple VNF Snapshot Packages ... Test objective: The objective is to get information about multiples VNF Snapshot Packages ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -32,7 +32,7 @@ GET information about multiple VNF Snapshot Packages Bad Request Invalid attribu ... Test title: GET information about multiple VNF Snapshot Packages Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is to get information about multiples VNF Snapshot Packages with Invalid attribute-based filtering parameters ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -45,7 +45,7 @@ GET information about multiple VNF Snapshot Packages Bad Request Invalid attribu ... Test title: GET information about multiple VNF Snapshot Packages Bad Request Invalid attribute selector ... Test objective: The objective is to get information about multiples VNF Snapshot Packages with Invalid attribute-based filtering parameters ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -58,7 +58,7 @@ GET information about multiple VNF Snapshot Packages with "all_fields" attribute ... Test title: GET information about multiple VNF Snapshot Packages with "all_fields" attribute selector ... Test objective: The objective is to query information about multiple VNF Snapshot Packages ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -71,7 +71,7 @@ GET information about multiple VNF Snapshot Packages with "exclude_default" attr ... Test title: GET information about multiple VNF Snapshot Packages with "exclude_default" attribute selector ... Test objective: The objective is to query information about multiple VNF Snapshot Packages ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -84,7 +84,7 @@ GET information about multiple VNF Snapshot Packages with "fields" attribute sel ... Test title: GET information about multiple VNF Snapshot Packages with "fields" attribute selector ... Test objective: The objective is to query information about multiple VNF Snapshot Packages ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -97,7 +97,7 @@ GET information about multiple VNF Snapshot Packages with "exclude_default" and ... Test title: GET information about multiple VNF Snapshot Packages with "exclude_default" and "fields" attribute selector ... Test objective: The objective is to query information about multiple VNF Snapshot Packages ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -110,7 +110,7 @@ GET information about multiple VNF Snapshot Packages with "exclude_fields" attri ... Test title: GET information about multiple VNF Snapshot Packages with "exclude_fields" attribute selector ... Test objective: The objective is to query information about multiple VNF Snapshot Packages ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -123,7 +123,7 @@ GET VNF Snapshot Packages - Bad Request Response too Big ... Test title: GET VNF Snapshot Packages - Bad Request Response too Big ... Test objective: The objective is test that the retrieval of existing VNF Snapshot Packages list fails because response is too big, and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: NFVO does not support paged response. ... Post-Conditions: none @@ -136,7 +136,7 @@ GET VNF Snapshot Packages as Paged Response ... Test title: GET VNF Snapshot Packages as Paged Response ... Test objective: The objective is to test that GET method retrieves the list of existing VNF Snapshot Packages as paged response. ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: NFVO supports paged response. ... Post-Conditions: none @@ -149,7 +149,7 @@ PUT VNF Snapshot Packages - Method not implemented ... Test title: PUT VNF Snapshot Packages - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -161,7 +161,7 @@ PATCH VNF Snapshot Packages - Method not implemented ... Test title: PATCH VNF Snapshot Packages - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -173,7 +173,7 @@ DELETE VNF Snapshot Packages - Method not implemented ... Test title: DELETE VNF Snapshot Packages - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: VNF snapshot package is not deleted @@ -185,7 +185,7 @@ GET information about multiple VNF Snapshot Packages using filter ... Test title: GET information about multiple VNF Snapshot Packages using filter ... Test objective: The objective is to get information about multiples VNF Snapshot Packages using filter ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -198,7 +198,7 @@ GET information about multiple VNF Snapshot Packages with permitted authorizatio ... Test title: GET information about multiple VNF Snapshot Packages with permitted authorization scope ... Test objective: The objective is to get information about multiples VNF Snapshot Packages with permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none @@ -211,7 +211,7 @@ GET information about multiple VNF Snapshot Packages with not permitted authoriz ... Test title: GET information about multiple VNF Snapshot Packages with not permitted authorization scope ... Test objective: The objective is to get information about multiples VNF Snapshot Packages with not permitted authorization scope ... Pre-conditions: none - ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_NFVO ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/ApiVersion.robot b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/ApiVersion.robot index 0e407fbe3602666280d23e329fd29d1ef21e5d83..89dd97675d77816a38bbec87ae7debbe0ca00a67 100644 --- a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/ApiVersion.robot +++ b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/ApiVersion.robot @@ -11,7 +11,7 @@ POST API Version - Method not implemented ... Test title: POST API version - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -23,7 +23,7 @@ GET API Version ... Test title: GET API Version ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -36,7 +36,7 @@ PUT API Version - Method not implemented ... Test title: PUT API Version - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -48,7 +48,7 @@ PATCH API Version - Method not implemented ... Test title: PATCH API Version - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -60,7 +60,7 @@ DELETE API Version - Method not implemented ... Test title: DELETE API Version - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -72,7 +72,7 @@ POST API Version with apiMajorVerion - Method not implemented ... Test title: POST API version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -84,7 +84,7 @@ GET API Version with apiMajorVerion ... Test title: GET API Version with apiMajorVerion ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -97,7 +97,7 @@ PUT API Version with apiMajorVerion - Method not implemented ... Test title: PUT API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -109,7 +109,7 @@ PATCH API Version with apiMajorVerion - Method not implemented ... Test title: PATCH API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -121,7 +121,7 @@ DELETE API Version with apiMajorVerion - Method not implemented ... Test title: DELETE API Version with apiMajorVerion - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.2.1 + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 [5] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/IndividualSubscription.robot b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/IndividualSubscription.robot index ed6ff9bf674a3377a46a8b2514c13a2504df6a10..b605b3af1d9a96c122b75e95f75806077f2f617a 100644 --- a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/IndividualSubscription.robot +++ b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/IndividualSubscription.robot @@ -15,7 +15,7 @@ Create new Virtualised Resources Quota Available Notification individual subscri ... Test title: Create new Virtualised Resources Quota Available Notification individual subscription - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new Virtualised Resources Quota Available Notification individual subscription instance on VNF ... Pre-conditions: A VNF instance is instantiated - ... Reference: Clause 11.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.3.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -27,7 +27,7 @@ Get Information about an individual subscription ... Test title: Get Information about an individual subscription ... Test objective: The objective is to read an individual Virtualised Resources Quota Available Notification subscription subscribed by the client and perform a JSON schema and content validation of the returned individual subscription data structure ... Pre-conditions: The subscription with the given id exists - ... Reference: Clause 11.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -40,7 +40,7 @@ PUT an individual subscription - Method not implemented ... Test title: PUT an individual subscription - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to update a existing Virtualised Resources Quota Available Notification individual subscription instance on VNF ... Pre-conditions: A VNF instance is instantiated - ... Reference: Clause 11.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.3.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -52,7 +52,7 @@ PATCH an individual subscription - Method not implemented ... Test title: PATCH an individual subscription - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to modify a existing Virtualised Resources Quota Available Notification individual subscription instance on VNF ... Pre-conditions: A VNF instance is instantiated - ... Reference: Clause 11.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.3.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ DELETE an individual subscription ... Test title: DELETE an individual subscription ... Test objective: The objective is to test that Delete method is allowed to remove a existing Virtualised Resources Quota Available Notification individual subscription instance on VNF ... Pre-conditions: The subscription with the given id exists - ... Reference: Clause 11.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.3.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -77,7 +77,7 @@ Get Information about an individual subscription - Not Found ... Test title: Get Information about an individual subscription - Not Found ... Test objective: The objective is to test that the retrieval of an individual Virtualised Resources Quota Available Notification subscription subscribed by the client fils when resource is not present ... Pre-conditions: The subscription with the given id does not exists - ... Reference: Clause 11.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -90,7 +90,7 @@ Get Information about an individual subscription with permitted authorization sc ... Test title: Get Information about an individual subscription with permitted authorization scope ... Test objective: The objective is to read an individual Virtualised Resources Quota Available Notification subscription subscribed by the client and perform a JSON schema and content validation of the returned individual subscription data structure with permitted authorization scope ... Pre-conditions: The subscription with the given id exists - ... Reference: Clause 11.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -103,7 +103,7 @@ Get Information about an individual subscription with not permitted authorizatio ... Test title: Get Information about an individual subscription with not permitted authorization scope ... Test objective: The objective is to read an individual Virtualised Resources Quota Available Notification subscription subscribed by the client and perform a JSON schema and content validation of the returned individual subscription data structure with not permitted authorization scope ... Pre-conditions: The subscription with the given id exists - ... Reference: Clause 11.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/NotificationEndpoint.robot b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/NotificationEndpoint.robot index 309e76ef90b471b5d33cc5a5e7654f9391097395..f187c6e61e090a81a40cc51d0685f515bae80485 100644 --- a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/NotificationEndpoint.robot +++ b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/NotificationEndpoint.robot @@ -14,7 +14,7 @@ Vr Quota Availibility Notification ... Test title: Vr Quota Availibility Notification ... Test objective: The objective is to test that Vr Quota Availibility Notification is delivered with success to the notification consumer ... Pre-conditions: The VNF has subscribed to the Vr Quota Availibility resource - ... Reference: Clause 11.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ Test the Notification Endpoint - Successful ... Test title: Test the Notification Endpoint - Successful ... Test objective: The objective is to test the Notification Endpoint provided by the notification consumer. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 11.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.4.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -36,7 +36,7 @@ PUT Notification endpoint - Method Not Implemented ... Test title: PUT Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PUT method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 11.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.4.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -47,7 +47,7 @@ PATCH Notification endpoint - Method Not Implemented ... Test title: PATCH Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the PATCH method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 11.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.4.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none @@ -58,7 +58,7 @@ DELETE Notification endpoint - Method Not Implemented ... Test title: DELETE Notification endpoint - Method Not Implemented ... Test objective: The objective is to test the DELETE method for Notification Endpoint provided by the consumer is not implemented. ... Pre-conditions: A notification endpoint is provided by the API consumer upon subscription. - ... Reference: Clause 11.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.4.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_Notif_Endpoint ... Applicability: none ... Post-Conditions: none diff --git a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Notifications.robot b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Notifications.robot index efacb03192425bde9d5bc5197ef2d2f310f14f98..9d002bddb379747c1efb65e3ecbe037bfb0952cf 100644 --- a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Notifications.robot +++ b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Notifications.robot @@ -6,6 +6,7 @@ Library MockServerLibrary Library Process Library OperatingSystem Library Collections +Library REST ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT} ssl_verify=false *** Test Cases *** Virtualised Resource Quota Available Notification @@ -13,13 +14,14 @@ Virtualised Resource Quota Available Notification ... Test title: Virtualised Resource Quota Available Notification ... Test objective: The objective is to test the dispatch of Virtualised Resource Quota Available Notification, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A subscription for Virtualised Resource Quota Available Notification is available in the VNFM. - ... Reference: Clause 11.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.4.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none Trigger a dispatch of virtualised resource quota available notification (external action) Check Virtualised Resource Quota Available Notification Http POST Request Body Json Schema Is VrQuotaAvailNotification Check Virtualised Resource Quota Available Notification Http POST Request Body notificationType attribute Is VrQuotaAvailNotification + Check Virtualised Resource Quota Available Notification validation *** Keywords *** @@ -61,3 +63,18 @@ Create Sessions Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance Wait For Process handle=mockInstance timeout=5s on_timeout=continue Create Mock Session ${callback_uri}:${callback_port} + +Check Virtualised Resource Quota Available Notification validation + ${requests}= Retrieve Requests ${callback_endpoint_fwd} + Should Not Be Empty ${requests} + ${last_request}= Get From List ${requests} -1 + ${body}= Get From Dictionary ${last_request} body + ${body_text}= Get From Dictionary ${body} string + ${notification}= Evaluate json.loads(r'''${body_text}''') json + ${subscriptionId}= Get From Dictionary ${notification} subscriptionId + Set Headers {"Accept": "${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId} + Integer response status 200 + Clear Requests ${callback_endpoint} + Clear Requests ${callback_endpoint_fwd} diff --git a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Subscriptions.robot b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Subscriptions.robot index 9b79e10d31fe02fc6725133a69c60cf8c019fd1b..e2a5e7314ac6b7beb9b0102f33768fcbaab0ee5f 100644 --- a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Subscriptions.robot +++ b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Subscriptions.robot @@ -15,7 +15,7 @@ Create new Virtualised Resources Quota Available Notification subscription ... Test title: Create new Virtualised Resources Quota Available Notification subscription ... Test objective: The objective is to create a new Virtualised Resources Quota Available Notification subscription and perform a JSON schema and content validation of the returned subscription data structure ... Pre-conditions: no subscription with the same filter and callback Uri exists - ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -31,7 +31,7 @@ Create new Virtualised Resources Quota Available Notification subscription - DUP ... Test title: Create new Virtualised Resources Quota Available Notification subscription - DUPLICATION ... Test objective: The objective is to create a new Virtualised Resources Quota Available Notification subscription and perform a JSON schema and content validation of the returned duplicated subscription data structure ... Pre-conditions: subscription with the same filter and callback Uri exists - ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: the VNFM allows creating a subscription resource if another subscription resource with the same filter and callbackUri already exists ... Post-Conditions: none @@ -46,7 +46,7 @@ Create new Virtualised Resources Quota Available Notification subscription - NO- ... Test title: Create new Virtualised Resources Quota Available Notification subscription - NO-DUPLICATION ... Test objective: The objective is to create a nduplicated Virtualised Resources Quota Available Notification subscription and verify that the VNF does not allow duplication ... Pre-conditions: subscription with the same filter and callback Uri exists - ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: the VNFM decides to not create a duplicate subscription resource ... Post-Conditions: none @@ -59,7 +59,7 @@ GET Virtualised Resources Quota Available Notification Subscriptions ... Test title: GET Virtualised Resources Quota Available Notification Subscriptions ... Test objective: The objective is to retrieve the list of active Virtualised Resources Quota Available Notification subscriptions and perform a JSON schema and content validation of the returned subscriptions data structure ... Pre-conditions: none - ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -72,7 +72,7 @@ GET Virtualised Resources Quota Available Notification Subscriptions with attrib ... Test title: GET Virtualised Resources Quota Available Notification Subscriptions with attribute-based Filter ... Test objective: The objective is to retrieve the list of active Virtualised Resources Quota Available Notification subscriptions and perform a JSON schema and content validation of the returned subscriptions data structure, and verify that the retrieved information matches the issued attribute-based filters ... Pre-conditions: none - ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -85,7 +85,7 @@ GET Virtualised Resources Quota Available Notification subscriptions - Bad Reque ... Test title: GET Virtualised Resources Quota Available Notification subscriptions - Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is to retrieve the list of active Virtualised Resources Quota Available Notification subscriptions with invalid attribute-based filtering parameters, and verify that problem details are returned ... Pre-conditions: none - ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -98,7 +98,7 @@ PUT Virtualised Resources Quota Available Notification subscriptions - Method no ... Test title: PUT Virtualised Resources Quota Available Notification subscriptions - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to update existing Virtualised Resources Quota Available Notification subscriptions instance on VNF ... Pre-conditions: A VNF instance is instantiated - ... Reference: Clause 11.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.3 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -110,7 +110,7 @@ PATCH Virtualised Resources Quota Available Notification subscriptions - Method ... Test title: PATCH Virtualised Resources Quota Available Notification subscriptions - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to modify Virtualised Resources Quota Available Notification subscriptions instance on VNF ... Pre-conditions: A VNF instance is instantiated - ... Reference: Clause 11.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.4 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -122,7 +122,7 @@ DELETE Virtualised Resources Quota Available Notification subscriptions - Method ... Test title: DELETE Virtualised Resources Quota Available Notification subscriptions - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to delete Virtualised Resources Quota Available Notification subscriptions instance on VNF ... Pre-conditions: A VNF instance is instantiated - ... Reference: Clause 11.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.5 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -134,7 +134,7 @@ GET Virtualised Resources Quota Available Notification Subscriptions as Paged Re ... Test title: GET Virtualised Resources Quota Available Notification Subscriptions as Paged Response ... Test objective: The objective is to retrieve the list of active Virtualised Resources Quota Available Notification subscriptions as a Paged Response. ... Pre-conditions: none - ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the subscription resources ... Post-Conditions: none @@ -147,7 +147,7 @@ GET Virtualised Resources Quota Available Notification Subscriptions as Paged Re ... Test title: GET Virtualised Resources Quota Available Notification Subscriptions as Paged Response with nextpage_opauque_marker parameter ... Test objective: The objective is to query the list of active Virtualised Resources Quota Available Notification subscriptions as a Paged Response and retrieve the next page using the nextpage_opaque_marker parameter ... Pre-conditions: A request for retrieving the list of active Virtualised Resources Quota Available Notification subscriptions as a paged response has been successfully issued (Test ID 7.3.7.1.10) - ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports response paging for the subscription resources ... Post-Conditions: none @@ -159,7 +159,7 @@ GET Virtualised Resources Quota Available Notification subscriptions - Bad Reque ... Test title: GET Virtualised Resources Quota Available Notification subscriptions - Bad Request Response too Big ... Test objective: The objective is to test that the retrieval of active Virtualised Resources Quota Available Notification subscriptions list fails because response is too big, and verify that problem details are returned ... Pre-conditions: none - ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -172,7 +172,7 @@ Create new Virtualised Resources Quota Available Notification Subscription - Unp ... Test title: Create new Virtualised Resources Quota Available Notification Subscription - Unprocessable Content ... Test objective: The objective is to test that content type of the message content is supported and the message content of a request contains syntactically correct data but the data cannot be processed. ... re-conditions: none - ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -185,7 +185,7 @@ Create new Virtualised Resources Quota Available Notification subscription with ... Test title: Create new Virtualised Resources Quota Available Notification subscription with permitted authorization scope ... Test objective: The objective is to create a new Virtualised Resources Quota Available Notification subscription and perform a JSON schema and content validation of the returned subscription data structure with permitted authorization scope ... Pre-conditions: no subscription with the same filter and callback Uri exists - ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -201,7 +201,7 @@ Create new Virtualised Resources Quota Available Notification subscription with ... Test title: Create new Virtualised Resources Quota Available Notification subscription with not permitted authorization scope ... Test objective: The objective is to create a new Virtualised Resources Quota Available Notification subscription and perform a JSON schema and content validation of the returned subscription data structure with not permitted authorization scope ... Pre-conditions: no subscription with the same filter and callback Uri exists - ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.2.1 + ... Reference: Clause 11.4.2.3.1 - ETSI GS NFV-SOL 003 [1] v5.3.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/indexes/sol_003_index.csv b/indexes/sol_003_index.csv index c7f408b74c37f2d610e24aff08f252ad1e9ac8ac..e9632a4e43de878b77c64dd95fdfab9463109f12 100644 --- a/indexes/sol_003_index.csv +++ b/indexes/sol_003_index.csv @@ -42,6 +42,7 @@ 7.3.1.40,VNF Snapshots,VNFSnapshots.robot 7.3.1.41,Individual VNF Snapshot,IndividualVNFSnapshot.robot 7.3.1.42,VNF state snapshot,VNFStateSnapshot.robot +7.3.1.43,Change current VNF package Workflow,ChangeCurrentVNFPackageWorkflow.robot 7.3.2,VNF Lifecycle Operation Granting Interface, VNFLifecycleOperationGranting-API 7.3.2.1,Grants, Grants.robot 7.3.2.2,Individual Grant, IndividualGrant.robot