Loading SOL003/VNFFaultManagement-API/FaultManagement-APIKeyword.robot +40 −13 Original line number Diff line number Diff line Loading @@ -5,13 +5,19 @@ Library JSONLibrary Library JSONSchemaLibrary schemas/ Library OperatingSystem #Suite Teardown Terminate All Processes kill=true Library Process Library MockServerLibrary Library String *** Variables *** ${original_etag} 1234 *** Keywords *** 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 Operation Occurrence Id ${opOccId}= Get Value From Json ${response['headers']} $..Location Should Not Be Empty ${opOccId} Loading Loading @@ -236,10 +242,17 @@ POST Subscription Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} ${body}= Get File jsons/fmSubscriptionRequest.json ${template}= Get File jsons/fmSubscriptionRequest.json ${body}= Format String ${template} 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}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} Clear Requests ${callback_endpoint} POST Subscription Duplication permitted Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions Loading @@ -247,10 +260,17 @@ POST Subscription Duplication permitted Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} ${body}= Get File jsons/fmSubscriptionRequest.json ${template}= Get File jsons/fmSubscriptionRequest.json ${body}= Format String ${template} 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}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} Clear Requests ${callback_endpoint} POST Subscription Duplication not permitted Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions Loading @@ -258,10 +278,17 @@ POST Subscription Duplication not permitted Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} ${body}= Get File jsons/fmSubscriptionRequest.json ${template}= Get File jsons/fmSubscriptionRequest.json ${body}= Format String ${template} 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}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} Clear Requests ${callback_endpoint} GET Subscriptions Log Get the list of active subscriptions Loading SOL003/VNFFaultManagement-API/Subscriptions.robot +4 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,10 @@ Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=fal Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ Library Process Suite Setup Create Sessions Suite Teardown Terminate All Processes kill=true *** Test Cases *** Create a new Fault Management alarm subscription Loading SOL003/VNFFaultManagement-API/environment/variables.txt +7 −1 Original line number Diff line number Diff line Loading @@ -47,3 +47,9 @@ ${invalid_alarm_filter} badFilter ${invalidAlarmId} invalidIdAlarm ${fields} criteria,objectInstanceIds ${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar ${callback_endpoint} /notification ${callback_port} 9091 ${callback_uri} http://localhost No newline at end of file SOL003/VNFFaultManagement-API/jsons/fmSubscriptionRequest.json +1 −1 Original line number Diff line number Diff line Loading @@ -6,5 +6,5 @@ ] } }, "callbackUri": "http://127.0.0.1/subscribe" "callbackUri": "{callback_uri}{callback_endpoint}" } No newline at end of file SOL003/VNFIndicator-API/VNFIndicatorsKeywords.robot +23 −27 Original line number Diff line number Diff line Loading @@ -13,6 +13,7 @@ Library JSONLibrary Library Collections Library JSONSchemaLibrary schemas/ Library Process Library String *** Keywords *** Get All VNF Indicators Subscriptions Loading Loading @@ -102,21 +103,18 @@ Send Post Request for VNF Indicator Subscription Log Trying to create a new subscription Set Headers {"Accept": "${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} ${body}= Get File jsons/subscriptions.json ${template}= Get File jsons/subscriptions.json ${body}= Format String ${template} callback_uri=${callback_uri}:${callback_port} callback_endpoint=${callback_endpoint} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} 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}/${apiVersion}/subscriptions ${body} ${output}= Output response Set Suite Variable ${response} ${output} Run Keyword If ${VNFM_CHECKS_NOTIF_ENDPOINT} == 1 ... Check Notification Endpoint # Integer response status 201 # Log Received 201 Created as expected # ${headers}= Output response headers # Should Contain ${headers} Location # Log Response has header Location # ${result}= Output response body # Validate Json VnfIndicatorSubscription.schema.json ${result} # Log Validation of VnfIndicatorSubscription OK Set Global Variable ${response} ${output} Clear Requests ${callback_endpoint} Loading @@ -124,19 +122,18 @@ Send Post Request for Duplicated VNF indicator Subscription Log Trying to create a subscription with an already created content Set Headers {"Accept": "${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} ${body}= Get File jsons/subscriptions.json ${template}= Get File jsons/subscriptions.json ${body}= Format String ${template} callback_uri=${callback_uri}:${callback_port} callback_endpoint=${callback_endpoint} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} 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}/${apiVersion}/subscriptions ${body} ${output}= Output response Set Suite Variable ${response} ${output} # Integer response status 201 # Log Received 201 Created as expected # ${headers}= Output response headers # Should Contain ${headers} Location # Log Response has header Location # ${result}= Output response body # Validate Json VnfIndicatorSubscription.schema.json ${result} # Log Validation of VnfIndicatorSubscription OK Set Global Variable ${response} ${output} Clear Requests ${callback_endpoint} Send Put Request for VNF Indicator Subscriptions Loading Loading @@ -547,7 +544,6 @@ Check Postcondition VNF indicator subscription is not created Check HTTP Response Status Code Is 404 Create Sessions Pass Execution If ${VNFM_CHECKS_NOTIF_ENDPOINT} == 0 MockServer not necessary to run 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} Loading Loading
SOL003/VNFFaultManagement-API/FaultManagement-APIKeyword.robot +40 −13 Original line number Diff line number Diff line Loading @@ -5,13 +5,19 @@ Library JSONLibrary Library JSONSchemaLibrary schemas/ Library OperatingSystem #Suite Teardown Terminate All Processes kill=true Library Process Library MockServerLibrary Library String *** Variables *** ${original_etag} 1234 *** Keywords *** 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 Operation Occurrence Id ${opOccId}= Get Value From Json ${response['headers']} $..Location Should Not Be Empty ${opOccId} Loading Loading @@ -236,10 +242,17 @@ POST Subscription Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} ${body}= Get File jsons/fmSubscriptionRequest.json ${template}= Get File jsons/fmSubscriptionRequest.json ${body}= Format String ${template} 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}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} Clear Requests ${callback_endpoint} POST Subscription Duplication permitted Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions Loading @@ -247,10 +260,17 @@ POST Subscription Duplication permitted Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} ${body}= Get File jsons/fmSubscriptionRequest.json ${template}= Get File jsons/fmSubscriptionRequest.json ${body}= Format String ${template} 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}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} Clear Requests ${callback_endpoint} POST Subscription Duplication not permitted Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions Loading @@ -258,10 +278,17 @@ POST Subscription Duplication not permitted Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} ${body}= Get File jsons/fmSubscriptionRequest.json ${template}= Get File jsons/fmSubscriptionRequest.json ${body}= Format String ${template} 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}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} Clear Requests ${callback_endpoint} GET Subscriptions Log Get the list of active subscriptions Loading
SOL003/VNFFaultManagement-API/Subscriptions.robot +4 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,10 @@ Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=fal Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ Library Process Suite Setup Create Sessions Suite Teardown Terminate All Processes kill=true *** Test Cases *** Create a new Fault Management alarm subscription Loading
SOL003/VNFFaultManagement-API/environment/variables.txt +7 −1 Original line number Diff line number Diff line Loading @@ -47,3 +47,9 @@ ${invalid_alarm_filter} badFilter ${invalidAlarmId} invalidIdAlarm ${fields} criteria,objectInstanceIds ${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar ${callback_endpoint} /notification ${callback_port} 9091 ${callback_uri} http://localhost No newline at end of file
SOL003/VNFFaultManagement-API/jsons/fmSubscriptionRequest.json +1 −1 Original line number Diff line number Diff line Loading @@ -6,5 +6,5 @@ ] } }, "callbackUri": "http://127.0.0.1/subscribe" "callbackUri": "{callback_uri}{callback_endpoint}" } No newline at end of file
SOL003/VNFIndicator-API/VNFIndicatorsKeywords.robot +23 −27 Original line number Diff line number Diff line Loading @@ -13,6 +13,7 @@ Library JSONLibrary Library Collections Library JSONSchemaLibrary schemas/ Library Process Library String *** Keywords *** Get All VNF Indicators Subscriptions Loading Loading @@ -102,21 +103,18 @@ Send Post Request for VNF Indicator Subscription Log Trying to create a new subscription Set Headers {"Accept": "${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} ${body}= Get File jsons/subscriptions.json ${template}= Get File jsons/subscriptions.json ${body}= Format String ${template} callback_uri=${callback_uri}:${callback_port} callback_endpoint=${callback_endpoint} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} 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}/${apiVersion}/subscriptions ${body} ${output}= Output response Set Suite Variable ${response} ${output} Run Keyword If ${VNFM_CHECKS_NOTIF_ENDPOINT} == 1 ... Check Notification Endpoint # Integer response status 201 # Log Received 201 Created as expected # ${headers}= Output response headers # Should Contain ${headers} Location # Log Response has header Location # ${result}= Output response body # Validate Json VnfIndicatorSubscription.schema.json ${result} # Log Validation of VnfIndicatorSubscription OK Set Global Variable ${response} ${output} Clear Requests ${callback_endpoint} Loading @@ -124,19 +122,18 @@ Send Post Request for Duplicated VNF indicator Subscription Log Trying to create a subscription with an already created content Set Headers {"Accept": "${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} ${body}= Get File jsons/subscriptions.json ${template}= Get File jsons/subscriptions.json ${body}= Format String ${template} callback_uri=${callback_uri}:${callback_port} callback_endpoint=${callback_endpoint} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} 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}/${apiVersion}/subscriptions ${body} ${output}= Output response Set Suite Variable ${response} ${output} # Integer response status 201 # Log Received 201 Created as expected # ${headers}= Output response headers # Should Contain ${headers} Location # Log Response has header Location # ${result}= Output response body # Validate Json VnfIndicatorSubscription.schema.json ${result} # Log Validation of VnfIndicatorSubscription OK Set Global Variable ${response} ${output} Clear Requests ${callback_endpoint} Send Put Request for VNF Indicator Subscriptions Loading Loading @@ -547,7 +544,6 @@ Check Postcondition VNF indicator subscription is not created Check HTTP Response Status Code Is 404 Create Sessions Pass Execution If ${VNFM_CHECKS_NOTIF_ENDPOINT} == 0 MockServer not necessary to run 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} Loading