Skip to content
Snippets Groups Projects
Commit d633b029 authored by AHMADABB's avatar AHMADABB
Browse files

Reference corrections + Individual Alarms Sol3 Fault management

parent 253a1893
No related branches found
No related tags found
No related merge requests found
......@@ -39,7 +39,7 @@ Get information about multiple alarms with filters
... Test title: Get information about multiple alarms with filters
... 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: section 7.4.2 - SOL003 v2.4.1
... Reference: section 7.4.2.3.2 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
......@@ -52,7 +52,7 @@ Get information about multiple alarms Bad Request Invalid attribute-based filter
... Test title: The objective is to try to retrieve information about the alarm list and perform a JSON schema and content validation of the returned problem details data structure, and verify that the retrieved information matches the issued attribute-based filters
... Test objective: The objective is to retrieve information about the alarm list
... Pre-conditions:
... Reference: section 7.4.2 - SOL003 v2.4.1
... Reference: section 7.4.2.3.2 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions:
......
......@@ -8,11 +8,22 @@ Library OperatingSystem
Library Process
*** Variables ***
${original_etag} 1234
*** Keywords ***
Check Postcondition VNF fault management alarms Exists
Log Checking that subscriptions exists
Log Checking that alarms exists
GET Fault Management Alarms
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is Alarms
Check Postcondition VNF fault management individual alarm Exists
Log Checking that individual alarm exists
GET Fault Management Individual Alarm
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is alarm
Check Individual Subscription existance
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
......@@ -101,7 +112,7 @@ GET Fault Management Alarms With Invalid Filters
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Do POST Individual Alarm
Send POST request for fault management Individual Alarm
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}"}
......@@ -109,7 +120,7 @@ Do POST Individual Alarm
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Do DELETE Individual Alarm
DELETE Fault Management Individual Alarm
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}"}
......@@ -117,7 +128,7 @@ Do DELETE Individual Alarm
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Do PUT Individual Alarm
PUT Fault Management Individual Alarm
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}"}
......@@ -125,17 +136,19 @@ Do PUT Individual Alarm
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Do GET Individual Alarm
Log Query NFVO The GET method queries information about an alarm.
GET Fault Management Individual Alarm
Log Query VNF The GET method queries information about an alarm.
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Log Execute Query
Log Execute Query and validate response
Get ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId}
${etag} Output response headers ETag
Set Suite Variable &{original_etag} ${etag}
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Do GET Invalid Individual Alarm
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}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
......@@ -145,17 +158,28 @@ Do GET Invalid Individual Alarm
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Do PATCH Individual Alarm
PATCH Fault Management Individual Alarm
log Trying to perform a PATCH. This method modifies an individual alarm resource
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${body}= Get File jsons/alarmModifications.json
Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body}
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
PATCH Fault Management Individual Alarm - precondition failed
log Trying to perform a PATCH. This method modifies an individual alarm resource
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"}
Set Headers {"If-Match": "${original_etag[0]}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${body}= Get File jsons/alarmModifications.json
Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body}
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Do PATCH Individual Alarm Conflict
PATCH Fault Management Individual Alarm Conflict
log Trying to perform a PATCH. This method modifies an individual alarm resource
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"}
......
*** Settings ***
# Suite setup Expect spec SOL003-VNFLifecycleManagement-API.yaml
Resource environment/variables.txt
Resource FaultManagement-APIKeyword.robot
Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT}
Library OperatingSystem
Library JSONLibrary
......@@ -8,127 +9,97 @@ Library JSONSchemaLibrary schemas/
Library DependencyLibrary
*** Variables ***
${original_etag} 1234
*** Test Cases ***
POST Alarm - 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}/alarms/${alarmId}
Log Validate Status code
Output response
Integer response status 405
[Documentation] Test ID: 7.3.5.2.1
... 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: section 7.4.3.3.1 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
Send POST request for fault management Individual Alarm
Check HTTP Response Status Code Is 405
Get information about an alarm
[Documentation] Test ID: 7.4.3.1
... Test title: Get information about an alarm
... Test objective: The objective is to read an individual alarm.
Get information about an fault management individual alarm
[Documentation] Test ID: 7.3.5.2.2
... 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: section 7.4.3 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions:
Log Query VNF The GET method queries information about an alarm.
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}/alarms/${alarmId}
${etag} Output response headers ETag
Set Suite Variable &{original_etag} ${etag}
Log Validate Status code
Integer response status 200
${contentType}= Output response headers Content-Type
Should Contain ${contentType} ${CONTENT_TYPE}
${result}= Output response body
Validate Json alarm.schema.json ${result}
Log Validation OK
... Applicability: none
... Post-Conditions: none
GET Fault Management Individual Alarm
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is alarm
PUT Alarm - 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}/alarms/${alarmId}
Log Validate Status code
Integer response status 405
[Documentation] Test ID: 7.3.5.2.3
... Test title: PUT Alarm - Method not implemented
... Test objective: he objective is to test that PUT method is not allowed to for Fault management individual alarm on VNF
... Pre-conditions: The related alarm exists
... Reference: section 7.4.3.3.3 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: none
PUT Fault Management Individual Alarm
Check HTTP Response Status Code Is 405
PATCH Alarm
[Documentation] Test ID: 7.4.3.2
... Test title: Modify an individual alarm resource
... Test objective: The objective is to Modify an individual alarm resource
PATCH Fault Management Individual Alarm
[Documentation] Test ID: 7.4.5.2.4
... 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: section 7.4.3 - SOL003 v2.4.1
... Reference: section 7.4.3.3.4 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions:
log Trying to perform a PATCH. This method modifies an individual alarm resource
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"}
Set Headers {"If-Match": "${original_etag[0]}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${body}= Get File jsons/alarmModifications.json
Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body}
Log Validate Status code
${Etag_modified}= Output response headers ETag
Integer response status 200
${contentType}= Output response headers Content-Type
Should Contain ${contentType} ${CONTENT_TYPE}
${result}= Output response body
Validate Json AlarmModification.schema.json ${result}
Log Validation OK
... Applicability: none
... Post-Conditions: none
Check Postcondition VNF fault management individual alarm Exists
PATCH Fault Management Individual Alarm
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is alarmModification
PATCH Alarm - Precondition failed
[Documentation] Test ID: 7.4.3.2-1
Modify an individual alarm resource - Precondition failed
[Documentation] Test ID: 7.4.5.2.5
... Test title: Modify an individual alarm resource - Precondition failed
... Test objective: The objective is to Modify an individual alarm resource
... Test objective: The objective is to test that we cannot Modify an individual alarm resource if the alarm is already in the state that is requested to be set
... Pre-conditions: The related alarm exists
... Reference: section 7.4.3 - SOL003 v2.4.1
... Reference: section 7.4.3.3.4 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions: The alarm resource is not modified
Depends On Test PATCH Alarm # If the previous test scceeded, it means that Etag has been modified
log Trying to perform a PATCH. This method modifies an individual alarm resource
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"}
Set Headers {"If-Match": "${original_etag[0]}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${body}= Get File jsons/alarmModifications.json
Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body}
Log Validate Status code
Integer response status 412
${problemDetails}= Output response body
Validate Json ProblemDetails.schema.json ${problemDetails}
Log Validation OK
... Applicability: none
... Post-Conditions: none
Check Postcondition VNF fault management individual alarm Exists
PATCH Fault Management Individual Alarm - precondition failed
Check HTTP Response Status Code Is 409
Check HTTP Response Body Json Schema Is ProblemDetails
PATCH Alarm - Conflict
[Documentation] Test ID: 7.4.3.2-1
Modify an individual alarm resource - Conflict
[Documentation] Test ID: 7.4.5.2.6
... Test title: Modify an individual alarm resource - Conflict
... Test objective: The objective is to Modify an individual alarm resource
... Test objective: The objective is to test that we cannot Modify an individual alarm resource if the resource was modified by another entity
... Pre-conditions: The related alarm exists
... Reference: section 7.4.3 - SOL003 v2.4.1
... Reference: section 7.4.3.3.4 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions: The alarm resource is not modified
log Trying to perform a PATCH. This method modifies an individual alarm resource
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${body}= Get File jsons/alarmModifications.json
Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body}
Log Validate Status code
Integer response status 409
${problemDetails}= Output response body
Validate Json ProblemDetails.schema.json ${problemDetails}
Log Validation OK
... Applicability: none
... Post-Conditions: none
Depends On Test PATCH Fault Management Individual Alarm
Check Postcondition VNF fault management individual alarm Exists
PATCH Fault Management Individual Alarm Conflict
Check HTTP Response Status Code Is 412
Check HTTP Response Body Json Schema Is ProblemDetails
DELETE Alarm - 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}/alarms/${alarmId}
Log Validate Status code
Integer response status 405
[Documentation] Test ID: 7.3.5.2.7
... 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: nona
... Reference: section 7.4.3.3.5 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability: none
... Post-Conditions: The individual alarm still exists
DELETE Fault Management Individual Alarm
Check HTTP Response Status Code Is 405
Check Postcondition VNF fault management individual alarm Exists
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment