Commit 2ff1443d authored by Najam UI Hassan's avatar Najam UI Hassan
Browse files

New Resource NotificationConsumer added

parent 286e6fbb
*** Settings ***
Library String
Library OperatingSystem
Resource environment/variables.txt
Library JSONLibrary
Library JSONSchemaLibrary schemas/
Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false
Suite Setup Check resource existence and get CallbackUri
*** Test Cases ***
VNF Fault Alarm Notification
[Documentation] Test ID: 7.3.5.7.1
... 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] v2.7.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
Post Alarm Notification
Check HTTP Response Status Code Is 204
VNF Fault Alarm Cleared Notification
[Documentation] Test ID: 7.3.5.7.2
... 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] v2.7.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
Post Alarm Cleared Notification
Check HTTP Response Status Code Is 204
VNF Fault Alarm List Reulit Notification
[Documentation] Test ID: 7.3.5.7.3
... 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] v2.7.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
Post Alarm List Rebuilt Notification
Check HTTP Response Status Code Is 204
*** Keywords ***
Check resource existence and get CallbackUri
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Get ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId}
Integer response status 200
Validate Json response body FmSubscriptions.schema.json
Set Global Variable ${callbackResp} response body callbackUri
Check HTTP Response Status Code Is
[Arguments] ${expected_status}
Log Validate Status code
Should Be Equal As Strings ${response['status']} ${expected_status}
Log Status code validated
Post Alarm Notification
log Trying to perform a POST to get notification
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${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}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${template} = Get File jsons/AlarmClearedNotification.json
${body}= Format String ${template} subscriptionId=${subscriptionId} alarmId=${alarmId}
Post ${callbackResp} ${body}
${outputResponse}= Output response
Set Global Variable ${response} ${outputResponse}
Post Alarm List Rebuilt Notification
log Trying to perform a POST to get notification
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${template} = Get File jsons/AlarmListRebuiltNotification.json
${body}= Format String ${template} subscriptionId=${subscriptionId}
Post ${callbackResp} ${body}
${outputResponse}= Output response
Set Global Variable ${response} ${outputResponse}
\ No newline at end of file
......@@ -54,4 +54,6 @@ ${fields} criteria,objectInstanceIds
${callback_uri} http://127.0.0.1
${callback_endpoint} /subscribe
${vnfdIds} 6fc3539c-e602-4afa-8e13-962fb5a7d81f
\ No newline at end of file
${vnfdIds} 6fc3539c-e602-4afa-8e13-962fb5a7d81f
${callbackResp} localhost
\ No newline at end of file
{{
"id":"",
"notificationType":"AlarmClearedNotification",
"subscriptionId":"{subscriptionId}",
"timeStamp":"",
"alarmId":"{alarmId}",
"alarmCleareTime":"",
"_links":{{
"subscription":"",
"alarm":""
}}
}}
{{
"id":"",
"notificationType":"AlarmListRebuiltNotification",
"subscriptionId":"{subscriptionId}",
"timeStamp":"",
"_links":{{
"subscription":"",
"alarms":""
}}
}}
{{
"id":"",
"notificationType":"AlarmNotification",
"subscriptionId":"{subscriptionId}",
"timeStamp":"",
"alarm":{{
"id":"",
"managedObjectId":""
}},
"_links":{{
"subscription":""
}}
}}
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