Commit 608ab78d authored by mengxuan.zhao's avatar mengxuan.zhao
Browse files

SOL 003 Fault Management API

parent 84b24dbf
......@@ -12,7 +12,7 @@ ${Etag_modified}= a modified etag
*** Test cases ***
POST Alarm - Method not implemented
log Trying to perform a PUT. This method should not be implemented
log Trying to perform a POST. This method should not be implemented
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Post ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId}
......
*** Settings ***
Resource variables.txt
Library REST http://${VNFM_HOST}:${VNFM_PORT}
... spec=SOL003-VNFFaultManagement-API.yaml
Documentation This resource represents an individual subscription for VNF alarms.
... The client can use this resource to read and to terminate a subscription to notifications related to VNF fault management.
Suite setup Check resource existance
*** Test Cases ***
Post Individual Subscription - Method not implemented
log Trying to perform a POST. This method should not be implemented
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Log Validate Status code
Output response
Integer response status 405
Get Information about an individual subscription
log Trying to get information about an individual subscription
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Log Validate Status code
Output response
Integer response status 200
PUT an individual subscription - Method not implemented
log Trying to perform a PUT. This method should not be implemented
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Log Validate Status code
Output response
Integer response status 405
PATCH an individual subscription - Method not implemented
log Trying to perform a PATCH. This method should not be implemented
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Patch ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Log Validate Status code
Output response
Integer response status 405
DELETE an individual subscription
log Try to delete an individual subscription
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Patch ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Log Validate Status code
Output response
Integer response status 204
*** Key words ***
Check resource existance
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId}
Integer response status 200
\ No newline at end of file
*** Settings ***
Resource variables.txt
Library REST http://${NFVO_HOST}:${NFVO_PORT}
... spec=SOL003-VNFFaultManagement-API.yaml
*** Test Cases ***
Deliver a notification - Operation Occurence
log The POST method delivers a notification from the server to the client.
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Post ${notification_ep} ${AlarmNotification}
Log Validate Status code
Output response
Integer response status 204
Deliver a notification - Id Creation
log The POST method delivers a notification from the server to the client.
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Post ${notification_ep} ${AlarmClearedNotification}
Log Validate Status code
Output response
Integer response status 204
Deliver a notification - Id deletion
log The POST method delivers a notification from the server to the client.
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Post ${notification_ep} ${AlarmListRebuiltNotification}
Log Validate Status code
Output response
Integer response status 204
Test a notification end point
log The GET method allows the server to test the notification endpoint
Get ${notification_ep}
Log Validate Status code
Output response
Integer response status 204
PUT notification - Method not implemented
log Trying to perform a PUT. This method should not be implemented
Put ${notification_ep}
Log Validate Status code
Output response
Integer response status 405
PATCH subscriptions - Method not implemented
log Trying to perform a PATCH. This method should not be implemented
Patch ${notification_ep}
Log Validate Status code
Output response
Integer response status 405
DELETE subscriptions - Method not implemented
log Trying to perform a DELETE. This method should not be implemented
Delete ${notification_ep}
Log Validate Status code
Output response
Integer response status 405
\ No newline at end of file
*** Settings ***
Resource variables.txt
Library REST http://${VNFM_HOST}:${VNFM_PORT}
... spec=SOL003-VNFFaultManagement-API.yaml
Library OperatingSystem
*** Test Cases ***
Create a new subscription
Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${body}= Get File json/fmSubscriptionRequest.json
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body}
Output response
Integer response status 201
Log Status code validated
Create a new Subscription - DUPLICATION
Log Trying to create a subscription with an already created content
Pass Execution If ${NVFM_DUPLICATION} == 0 VNFM is not permitting duplication. Skipping the test
Set Headers {"Accept": "${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
${body}= Get File json/fmSubscriptionRequest.json
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body}
Output response
Integer response status 201
Log Status code validated
Create a new Subscription - NO-DUPLICATION
Log Trying to create a subscription with an already created content
Pass Execution If ${NVFM_DUPLICATION} == 1 VNFM permits duplication. Skipping the test
Set Headers {"Accept": "${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
${body}= Get File json/fmSubscriptionRequest.json
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body}
Output response
Integer response status 303
Log Status code validated
GET Subscriptions
Log Get the list of active subscriptions
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Log Execute Query and validate response
Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions
Output response
Log Validate Status code
Integer response status 200
GET Subscription - Filter
Log Get the list of active subscriptions using a filter
Set Headers {"Accept": "${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter}
Integer response status 200
Log Received a 200 OK as expected
GET subscriptions - Bad Request Invalid attribute-based filtering parameters
Log Get the list of active subscriptions using an invalid filter
Set Headers {"Accept": "${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter_invalid}
Integer response status 400
Log Received a 400 Bad Request as expected
PUT subscriptions - Method not implemented
log Trying to perform a PUT. This method should not be implemented
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions
Log Validate Status code
Output response
Integer response status 405
PATCH subscriptions - Method not implemented
log Trying to perform a PATCH. This method should not be implemented
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Patch ${apiRoot}/${apiName}/${apiVersion}/subscriptions
Log Validate Status code
Output response
Integer response status 405
DELETE subscriptions - Method not implemented
log Trying to perform a DELETE. This method should not be implemented
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Delete ${apiRoot}/${apiName}/${apiVersion}/subscriptions
Log Validate Status code
Output response
Integer response status 405
\ No newline at end of file
{
"filter": {
"vnfInstanceSubscriptionFilter": {
"vnfdIds": [
"6fc3539c-e602-4afa-8e13-962fb5a7d81f"
]
}
},
"callbackUri": "http://127.0.0.1/subscribe"
}
\ No newline at end of file
......@@ -35,6 +35,6 @@ ${sub_filter} filter
${sub_filter_invalid} filter_invalid
${subscriptionId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f
${notification_ep} notification
${VnfLcmOperationOccurrenceNotification} {}
${VnfIdentifierCreationNotification} {}
${VnfIdentifierDeletionNotification} {}
\ No newline at end of file
${AlarmNotification} {}
${AlarmClearedNotification} {}
${AlarmListRebuiltNotification} {}
\ No newline at end of file
......@@ -2,14 +2,16 @@
Resource variables.txt
Library REST http://${VNFM_HOST}:${VNFM_PORT}
... spec=SOL003-VNFLifecycleManagement-API.yaml
Library OperatingSystem
*** Test Cases ***
Create a new subscription
Log Create VNF instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions
Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${LccnSubscriptionRequest}
${body}= Get File json/lccbSubscriptionRequest.json
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body}
Output response
Integer response status 201
Log Status code validated
......@@ -20,7 +22,8 @@ Create a new Subscription - DUPLICATION
Set Headers {"Accept": "${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${LccnSubscriptionRequest}
${body}= Get File json/lccbSubscriptionRequest.json
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body}
Output response
Integer response status 201
Log Status code validated
......@@ -31,7 +34,8 @@ Create a new Subscription - NO-DUPLICATION
Set Headers {"Accept": "${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${LccnSubscriptionRequest}
${body}= Get File json/lccbSubscriptionRequest.json
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body}
Output response
Integer response status 303
Log Status code validated
......
......@@ -27,7 +27,6 @@ ${ARTIFACT_ID} artifactId
${WRONG_ACCEPT} application/json
${vnfLcmOpOccId} 6fc3539c-e602-4afa-8e13-962fb5a7d81d
${CancelMode} GRACEFUL
${LccnSubscriptionRequest} {}
${NVFM_DUPLICATION} 0
${sub_filter} filter
${sub_filter_invalid} filter_invalid
......
......@@ -31,8 +31,9 @@ SOL003
- VNFFaultManagement-API_egm ------------------------------> [IN PROGRESS]
* Alarms ----------------------------------------------> [DONE]
* IndividualAlarm ----------------------------------------------> [DONE]
* Subscriptions --------------------------------------------> [IN PROGRESS] //to be reviewed with nxw on how notification server will be configured
* IndividualSubscription -----------------------------------> [IN PROGRESS]
* Subscriptions --------------------------------------------> [DONE]
* IndividualSubscription -----------------------------------> [DONE]
* NotificationEndpoint -------------------------------------> [DONE] //to be reviewed with nxw on how notification server will be configured
- VNFFaultManagementNotification-API_egm ------------------> [NOT STARTED]
......@@ -62,9 +63,9 @@ SOL003
* RollbackOperationTask ------------------------------------> [DONE]
* FailOperationTask ----------------------------------------> [DONE]
* CancelOperationTask --------------------------------------> [DONE]
* Subscriptions --------------------------------------------> [DONE] //to be reviewed with nxw on how notification server will be configured
* IndividualSubscription -----------------------------------> [DONE] //same as above
* NotificationEndpoint -------------------------------------> [DONE] //same as above
* Subscriptions --------------------------------------------> [DONE]
* IndividualSubscription -----------------------------------> [DONE]
* NotificationEndpoint -------------------------------------> [DONE] //to be reviewed with nxw on how notification server will be configured
- VNFLifecycleOperationGranting-API_egm -------------------> [NOT STARTED]
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment