Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
NFV - Network Functions Virtualisation
api-tests
Commits
25a0f6b9
Commit
25a0f6b9
authored
Apr 19, 2019
by
Giacomo Bernini
Browse files
added proper post-condition
parents
ced6e7e1
351aa48c
Changes
18
Hide whitespace changes
Inline
Side-by-side
SOL003/VNFIndicator-API/Subscriptions.robot
View file @
25a0f6b9
...
...
@@ -2,147 +2,86 @@
Library
JSONSchemaLibrary
schemas/
Resource
environment/variables.txt
# Generic Parameters
Resource
environment/subscriptions.txt
Resource
VNFIndicatorsKeywords.robot
Library
OperatingSystem
Library
JSONLibrary
Library
REST
${VNFM_SCHEMA}
://
${VNFM_HOST}
:
${VNFM_PORT}
Library
REST
${VNFM_SCHEMA}
://
${VNFM_HOST}
:
${VNFM_PORT}
ssl_verify=false
Library
MockServerLibrary
Library
Process
Suite Setup
Create Sessions
Suite Teardown
Terminate All Processes
kill=true
*** Test Cases ***
GET Subscription
Log
Trying to get the list of subscriptions
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
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
Validate Json
VnfIndicatorSubscriptions.schema.json
${result}
Log
Validated VnfIndicatorSubscription schema
GET Subscription - Filter
Log
Trying to get the list of subscriptions using filters
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions?
${POS_FILTER}
Integer
response status
200
${contentType}
=
Output
response headers Content-Type
Should Contain
${contentType}
application/json
Log
Received a 200 OK as expected
${result}
=
Output
response body
Validate Json
VnfIndicatorSubscriptions.schema.json
${result}
Log
Validated VnfIndicatorSubscriptions schema
GET Subscription - Negative Filter
Log
Trying to get the list of subscriptions using filters with wrong attribute name
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions?
${NEG_FILTER}
Integer
response status
400
Log
Received a 400 Bad Request as expected
${contentType}
=
Output
response headers Content-Type
Should Contain
${contentType}
application/json
Log
Trying to validate ProblemDetails
${problemDetails}
=
Output
response body
Validate Json
ProblemDetails.schema.json
${problemDetails}
Log
Validation OK
GET Subscription - Negative (Not Found)
Log
Trying to perform a request on a Uri which doesn't exist
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscription
Integer
response status
404
Log
Received 404 Not Found as expected
${contentType}
=
Output
response headers Content-Type
Should Contain
${contentType}
application/json
Log
Trying to validate ProblemDetails
${problemDetails}
=
Output
response body
Validate Json
ProblemDetails.schema.json
${problemDetails}
Log
Validation OK
GET Subscription - Negative (Unauthorized: Wrong Token)
Log
Trying to perform a negative get, using wrong authorization bearer
Pass Execution If
${AUTH_USAGE}
=
= 0
Skipping test as VNFM is not supporting authentication
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
Integer
response status
401
Log
Received 401 Unauthorized as expected
${contentType}
=
Output
response headers Content-Type
Should Contain
${contentType}
application/json
Log
Trying to validate ProblemDetails
${problemDetails}
=
Output
response body
Validate Json
ProblemDetails.schema.json
${problemDetails}
Log
Validation OK
POST 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
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
POST
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
${body}
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
POST Subscription - DUPLICATION
Log
Trying to create a subscription with an already created content
Pass Execution If
${VNFM_DUPLICATION}
=
= 0
VNFM is not permitting duplication. Skipping the test
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Set Headers
{"Content-Type": "
${CONTENT_TYPE_JSON}
"}
${body}
=
Get File
jsons/subscriptions.json
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
POST
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
${body}
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
POST Subscription - NO DUPLICATION
Log
Trying to create a subscription with an already created content
Pass Execution If
${VNFM_DUPLICATION}
=
= 1
VNFM is permitting duplication. Skipping the test
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Set Headers
{"Content-Type": "
${CONTENT_TYPE_JSON}
"}
${body}
=
Get File
jsons/subscriptions.json
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
POST
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
${body}
Integer
response status
303
Log
Received 303 See Other as expected
${headers}
=
Output
response headers
Should Contain
${headers}
Location
Log
Response has header Location
PUT Subscription - (Method not implemented)
Log
Trying to perform a PUT. This method should not be implemented
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
PUT
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
Integer
response status
405
Log
Received 405 Method not implemented as expected
PATCH Subscription - (Method not implemented)
Log
Trying to perform a PATCH. This method should not be implemented
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
PATCH
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
Integer
response status
405
Log
Received 405 Method not implemented as expected
DELETE Subscription - (Method not implemented)
Log
Trying to perform a DELETE. This method should not be implemented
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
DELETE
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
Integer
response status
405
Log
Received 405 Method not implemented as expected
GET All VNF Indicators Subscriptions
Get All VNF Indicators Subscriptions
Check HTTP Response Status Code Is
200
Check HTTP Response Body Json Schema Is
VnfIndicatorSubscriptions
GET VNF Indicators Subscriptions with attribute-based filter
Get VNF Indicators Subscriptions with filter
Check HTTP Response Status Code Is
200
Check HTTP Response Body Json Schema Is
VnfIndicatorSubscriptions
Check HTTP Response Body Subscriptions Match the requested Attribute-Based Filter
GET VNF Indicators Subscriptions with invalid attribute-based filter
Get VNF Indicators Subscriptions with invalid filter
Check HTTP Response Status Code Is
400
Check HTTP Response Body Json Schema Is
ProblemDetails
GET VNF Indicators Subscriptions with invalid resource endpoint
Get VNF Indicators Subscriptions with invalid resource endpoint
Check HTTP Response Status Code Is
404
GET VNF Indicators Subscriptions with invalid authentication token
Get VNF Indicators Subscriptions with invalid authentication token
Check HTTP Response Status Code Is
401
Check HTTP Response Body Json Schema Is
ProblemDetails
Create new VNF indicator subscription
Send Post Request for VNF Indicator Subscription
Check HTTP Response Status Code Is
201
Check HTTP Response Body Json Schema Is
VnfIndicatorSubscription
Check HTTP Response Body Matches the Subscription
Check Postcondition VNF Indicator Subscription Is Set
Create duplicated VNF indicator subscription with duplication handler
Send Post Request for Duplicated VNF indicator Subscription
Check HTTP Response Status Code Is
303
Check HTTP Response Body Is Empty
Check HTTP Response Header Contains
Location
Check Postcondition VNF indicator Subscription Is Set
Location
Create duplicated VNF indicator subscription without duplication handler
Send Post Request for Duplicated VNF indicator Subscription
Check HTTP Response Status Code Is
201
Check HTTP Response Body Json Schema Is
PmSubscription
Check HTTP Response Body Matches the Subscription
Check Postcondition VNF indicator Subscription Is Set
PUT VNF Indicator Subscriptions - Method not implemented
Send Put Request for VNF Indicator Subscriptions
Check HTTP Response Status Code Is
405
PATCH VNF Indicator Subscriptions - Method not implemented
Send Patch Request for VNF Indicator Subscriptions
Check HTTP Response Status Code Is
405
DELETE VNF Indicator Subscriptions - Method not implemented
Send Delete Request for VNF Indicator Subscriptions
Check HTTP Response Status Code Is
405
SOL003/VNFIndicator-API/VNFIndicatorsKeywords.robot
0 → 100644
View file @
25a0f6b9
*** Settings ***
Resource
environment/variables.txt
Resource
environment/subscriptions.txt
Library
REST
${VNFM_SCHEMA}
://
${VNFM_HOST}
:
${VNFM_PORT}
ssl_verify=false
Library
MockServerLibrary
Library
OperatingSystem
Library
BuiltIn
Library
JSONLibrary
Library
Collections
Library
JSONSchemaLibrary
schemas/
Library
Process
*** Keywords ***
Get All VNF Indicators Subscriptions
Log
Trying to get the list of subscriptions
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
${output}
=
Output
response
Set Suite Variable
${response}
${output}
# 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
# Validate Json VnfIndicatorSubscriptions.schema.json ${result}
# Log Validated VnfIndicatorSubscription schema
Get VNF Indicators Subscriptions with filter
Log
Trying to get the list of subscriptions using filters
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions?
${filter_ok}
${output}
=
Output
response
Set Suite Variable
${response}
${output}
# Integer response status 200
# ${contentType}= Output response headers Content-Type
# Should Contain ${contentType} application/json
# Log Received a 200 OK as expected
# ${result}= Output response body
# Validate Json VnfIndicatorSubscriptions.schema.json ${result}
# Log Validated VnfIndicatorSubscriptions schema
Get VNF Indicators Subscriptions with invalid filter
Log
Trying to get the list of subscriptions using filters with wrong attribute name
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions?
${filter_ko}
${output}
=
Output
response
Set Suite Variable
${response}
${output}
# Integer response status 400
# Log Received a 400 Bad Request as expected
# ${contentType}= Output response headers Content-Type
# Should Contain ${contentType} application/json
# Log Trying to validate ProblemDetails
# ${problemDetails}= Output response body
# Validate Json ProblemDetails.schema.json ${problemDetails}
# Log Validation OK
Get VNF Indicators Subscriptions with invalid resource endpoint
Log
Trying to perform a request on a Uri which doesn't exist
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscription
${output}
=
Output
response
Set Suite Variable
${response}
${output}
# Integer response status 404
# Log Received 404 Not Found as expected
# ${contentType}= Output response headers Content-Type
# Should Contain ${contentType} application/json
# Log Trying to validate ProblemDetails
# ${problemDetails}= Output response body
# Validate Json ProblemDetails.schema.json ${problemDetails}
# Log Validation OK
Get VNF Indicators Subscriptions with invalid authentication token
Log
Trying to perform a negative get, using wrong authorization bearer
Pass Execution If
${AUTH_USAGE}
=
= 0
Skipping test as VNFM is not supporting authentication
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
${output}
=
Output
response
Set Suite Variable
${response}
${output}
# Integer response status 401
# Log Received 401 Unauthorized as expected
# ${contentType}= Output response headers Content-Type
# Should Contain ${contentType} application/json
# Log Trying to validate ProblemDetails
# ${problemDetails}= Output response body
# Validate Json ProblemDetails.schema.json ${problemDetails}
# Log Validation OK
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
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
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
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
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
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
Send Put Request for VNF Indicator Subscriptions
Log
Trying to perform a PUT. This method should not be implemented
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
PUT
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
${output}
=
Output
response
Set Suite Variable
${response}
${output}
Send Patch Request for VNF Indicator Subscriptions
Log
Trying to perform a PATCH. This method should not be implemented
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
PATCH
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
${output}
=
Output
response
Set Suite Variable
${response}
${output}
Send Delete Request for VNF Indicator Subscriptions
Log
Trying to perform a DELETE. This method should not be implemented
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
DELETE
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions
${output}
=
Output
response
Set Suite Variable
${response}
${output}
Check HTTP Response Status Code Is
[
Arguments
]
${expected_status}
Should Be Equal
${response['status']}
${expected_status}
Log
Status code validated
Check HTTP Response Body Json Schema Is
[
Arguments
]
${input}
Should Contain
${response['headers']['Content-Type']}
application/json
${schema}
=
Catenate
${input}
.schema.json
Validate Json
${schema}
${response['body']}
Log
Json Schema Validation OK
Check HTTP Response Body Is Empty
Should Be Empty
${response['body']}
Log
No json schema is provided. Validation OK
Check HTTP Response Body Subscriptions Match the requested Attribute-Based Filter
Log
Check Response includes VNF Performance Management according to filter
#TODO
Check HTTP Response Body Matches the Subscription
Log
Check Response matches subscription
${body}
=
Get File
jsons/subscriptions.json
${subscription}
=
evaluate
json.loads('''
${body}
''')
json
Should Be Equal
${response['body']['callbackUri']}
${subscription['callbackUri']}
Check Postcondition VNF Indicator Subscription Is Set
[
Arguments
]
${location}
=""
Log
Check Postcondition subscription exist
Log
Trying to get the subscription
Set Headers
{"Accept": "
${ACCEPT_JSON}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
Run Keyword If
Should Not Be Equal As Strings
${location}
Location
GET
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions/
${response['body']['id']}
Run Keyword If
Should Be Equal As Strings
${location}
Location
GET
${response['headers']['Location']}
${output}
=
Output
response
Set Suite Variable
${response}
${output}
Check HTTP Response Status Code Is
200
Check HTTP Response Header Contains
[
Arguments
]
${CONTENT_TYPE}
Should Contain
${response.headers}
${CONTENT_TYPE}
Log
Header is present
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}
Check Notification Endpoint
&{notification_request}
=
Create Mock Request Matcher
GET
${callback_endpoint}
&{notification_response}
=
Create Mock Response
headers="Content-Type: application/json"
status_code=204
Create Mock Expectation
${notification_request}
${notification_response}
Wait Until Keyword Succeeds
${total_polling_time}
${polling_interval}
Verify Mock Expectation
${notification_request}
Clear Requests
${callback_endpoint}
SOL003/VNFIndicator-API/environment/subscriptions.txt
View file @
25a0f6b9
*** Variables ***
${POS_FILTER} callbackUri=http://127.0.0.1/subscribe
${NEG_FILTER} callback=http://127.0.0.1/subscribe
${filter_ok} callbackUri=${callbackUri}
${filter_ko} erroneousFilter=erroneous
${callbackUri} http://172.22.1.7:9091/vnfind/subscriptions
${total_polling_time} 2 min
${polling_interval} 10 sec
SOL003/VNFIndicator-API/environment/variables.txt
View file @
25a0f6b9
...
...
@@ -13,5 +13,15 @@ ${apiRoot} /
${apiVersion} v1
${apiName} vnfind
${VNFM_
DUPLICATION} 1
${VNFM_
CHECKS_NOTIF_ENDPOINT} 1 ## If true, during subscription, the FUT performs a get to the notification endpoint
${VNFM_ALLOWS_DUPLICATE_SUBS} 1
${response}
${callback_port} 9091
${callback_uri} http://172.22.1.7:${callback_port}
${callback_endpoint} /vnfind/subscriptions
${callback_endpoint_error} /subs_404
${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar
\ No newline at end of file
SOL003/VNFIndicator-API/jsons/subscriptions.json
View file @
25a0f6b9
{
"callbackUri"
:
"http://1
27.0.0.1
/subscribe"
"callbackUri"
:
"http://1
72.22.1.7:9091/vnfind
/subscribe
s
"
}
\ No newline at end of file
SOL003/VNFIndicatorNotification-API/VnfIndicatorNotification.robot
View file @
25a0f6b9
...
...
@@ -11,14 +11,6 @@ Library String
*** Test Cases ***
Check Notification Endpoint
&{req}
=
Create Mock Request Matcher
GET
${callback_endpoint}
&{rsp}
=
Create Mock Response
headers="Content-Type: application/json"
status_code=204
Create Mock Expectation
${req}
${rsp}
Sleep
${sleep_interval}
Verify Mock Expectation
${req}
Clear Requests
${callback_endpoint}
Post VNF Indicator Notification
${json}
=
Get File
schemas/VnfIndicatorValueChangeNotification.schema.json
${BODY}
=
evaluate
json.loads('''
${json}
''')
json
...
...
@@ -26,7 +18,7 @@ Post VNF Indicator Notification
&{req}
=
Create Mock Request Matcher
POST
${callback_endpoint}
body_type="JSON_SCHEMA"
body=
${BODY}
&{rsp}
=
Create Mock Response
headers="Content-Type: application/json"
status_code=204
Create Mock Expectation
${req}
${rsp}
Sleep
${
sleep_interval
}
Wait Until Keyword Succeeds
${
total_polling_time}
${polling_interval}
Verify Mock Expectation
${req
}
Log
Verifying results
Verify Mock Expectation
${req}
Log
Cleaning the endpoint
...
...
@@ -39,7 +31,7 @@ Post VNF Indicator Notification Negative 404
&{req}
=
Create Mock Request Matcher
POST
${callback_endpoint_error}
body_type="JSON_SCHEMA"
body=
${BODY}
&{rsp}
=
Create Mock Response
headers="Content-Type: application/json"
status_code=404
Create Mock Expectation
${req}
${rsp}
Sleep
${
sleep_interval
}
Wait Until Keyword Succeeds
${
total_polling_time}
${polling_interval}
Verify Mock Expectation
${req
}
Log
Verifying results
Verify Mock Expectation
${req}
Log
Cleaning the endpoint
...
...
@@ -52,7 +44,7 @@ Put VNF Indicator Notification
&{req}
=
Create Mock Request Matcher
PUT
${callback_endpoint}
&{rsp}
=
Create Mock Response
status_code=405
Create Mock Expectation
${req}
${rsp}
Sleep
${
sleep_interval
}
Wait Until Keyword Succeeds
${
total_polling_time}
${polling_interval}
Verify Mock Expectation
${req
}
Log
Verifying results
Verify Mock Expectation
${req}
Log
Cleaning the endpoint
...
...
@@ -64,7 +56,7 @@ Patch VNF Indicator Notification
&{req}
=
Create Mock Request Matcher
PATCH
${callback_endpoint}
&{rsp}
=
Create Mock Response
status_code=405
Create Mock Expectation
${req}
${rsp}
Sleep
${
sleep_interval
}
Wait Until Keyword Succeeds
${
total_polling_time}
${polling_interval}
Verify Mock Expectation
${req
}
Log
Verifying results
Verify Mock Expectation
${req}
Log
Cleaning the endpoint
...
...
@@ -76,7 +68,7 @@ Delete VNF Indicator Notification
&{req}
=
Create Mock Request Matcher
DELETE
${callback_endpoint}
&{rsp}
=
Create Mock Response
status_code=405
Create Mock Expectation
${req}
${rsp}
Sleep
${
sleep_interval
}
Wait Until Keyword Succeeds
${
total_polling_time}
${polling_interval}
Verify Mock Expectation
${req
}
Log
Verifying results
Verify Mock Expectation
${req}
Log
Cleaning the endpoint
...
...
@@ -87,5 +79,5 @@ Delete VNF Indicator Notification
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}
Create Mock Session
${callback_uri}
\ No newline at end of file
SOL003/VNFIndicatorNotification-API/environment/variables.txt
View file @
25a0f6b9
*** Variables ***
${callback_uri} http://localhost
${callback_port} 9091
${callback_endpoint} /endpoint
${callback_endpoint_error} /endpoint_404
${sleep_interval} 20s
${callbackUri} http://172.22.1.7:${callback_port}
${callback_endpoint} /vnfind/subscriptions
${callback_endpoint_error} /subs_404
${total_polling_time} 2 min
${polling_interval} 10 sec
${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar
\ No newline at end of file
SOL003/VNFPackageManagement-API/Subscriptions.robot
View file @
25a0f6b9
...
...
@@ -2,132 +2,77 @@
Library
JSONSchemaLibrary
schemas/
Resource
environment/variables.txt
# Generic Parameters
Resource
environment/subscriptions.txt
Resource
VNFPackageManagementKeywords.robot
Library
OperatingSystem
Library
JSONLibrary
Library
REST
${NFVO_SCHEMA}
://
${NFVO_HOST}
:
${NFVO_PORT}
Library
REST
${NFVO_SCHEMA}
://
${NFVO_HOST}
:
${NFVO_PORT}
ssl_verify=false
Library
MockServerLibrary
Library
Process
Suite Setup
Create Sessions
Suite Teardown
Terminate All Processes
kill=true
*** Test Cases ***
GET Subscription