Newer
Older
*** Settings ***
Documentation This resource represents an individual subscription for notifications about performance management related events.
... The client can use this resource to read and to terminate a subscription to notifications related to NS performance
... management.
Library JSONSchemaLibrary schemas/
Library REST ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT}
Library OperatingSystem
Library JSONLibrary
Resource environment/individualSubscription.txt
*** Test Cases ***
GET Individual Subscription
[Documentation] The client can use this method for reading an individual subscription about Performance management notifications
... subscribed by the client.
... This method shall follow the provisions specified in the tables 6.4.8.3.2-1 and 6.4.8.3.2-2 for URI query parameters,
... request and response data structures, and response codes.
Set headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Integer response status 200
Log Received a 200 OK as expected
${contentType}= Output response headers Content-Type
Should Contain ${contentType} application/json
${result}= Output response body
Log Validated PmSubscription schema
GET Individual Subscription - Negative (Not Found)
[Documentation] The client can use this method for reading an individual subscription about Performance management notifications
... subscribed by the client.
... This method shall follow the provisions specified in the tables 6.4.8.3.2-1 and 6.4.8.3.2-2 for URI query parameters,
... request and response data structures, and response codes.
Set headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${erroneousSubscriptionId}
Integer response status 404
Log Received a 404 Not found as expected
${contentType}= Output response headers Content-Type
Should Contain ${contentType} application/json
${result}= Output response body
Log Validated ProblemDetails schema
POST Individual Subscription - (Method not implemented)
[Documentation] This method is not supported. When this method is requested on this resource, the NFVO shall return a "405 Method
... Not Allowed" response as defined in clause 4.3.5.4.
Pass Execution If ${testOptionalMethods} == 0 optional methods are not implemented on the FUT. Skipping test.
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Integer response status 405
Log Received 405 Method not implemented as expected
PUT Individual Subscription - (Method not implemented)
[Documentation] This method is not supported. When this method is requested on this resource, the NFVO shall return a "405 Method
... Not Allowed" response as defined in clause 4.3.5.4.
Pass Execution If ${testOptionalMethods} == 0 optional methods are not implemented on the FUT. Skipping test.
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
PUT ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Integer response status 405
Log Received 405 Method not implemented as expected
PATCH Individual Subscription - (Method not implemented)
[Documentation] This method is not supported. When this method is requested on this resource, the NFVO shall return a "405 Method
... Not Allowed" response as defined in clause 4.3.5.4.
Pass Execution If ${testOptionalMethods} == 0 optional methods are not implemented on the FUT. Skipping test.
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
PATCH ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Integer response status 405
Log Received 405 Method not implemented as expected
DELETE Individual Subscription
[Documentation] This method terminates an individual subscription.
... This method shall follow the provisions specified in the tables 6.4.8.3.5-1 and 6.4.8.3.5-2 for URI query parameters,
... request and response data structures, and response codes.
Set headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
DELETE ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Integer response status 204
Log Received a 204 No Content as expected
${body}= Output response body
Should Be Empty ${body}
Log Body of the response is empty