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
eb8a950e
Commit
eb8a950e
authored
Nov 06, 2018
by
mengxuan.zhao
Browse files
SOL003 VNFLifecycleOperationGranting API
parent
7715169a
Changes
6
Show whitespace changes
Inline
Side-by-side
SOL003/VNFLifecycleOperationGranting-API_egm/Grants.robot
0 → 100644
View file @
eb8a950e
*** Settings ***
Resource
variables.txt
Library
REST
http://
${NFVO_HOST}
:
${NFVO_PORT}
...
spec=SOL003-VNFLifecycleOperationGranting-API.yaml
Library
OperatingSystem
Documentation
This resource represents grants. The client can use this resource to obtain permission
...
from the NFVO to perform a particular VNF lifecycle operation.
*** Test Cases ***
Create a new Grant - Synchronous mode
Log
Request a new Grant for a VNF LCM operation by POST to
${apiRoot}
/
${apiName}
/
${apiVersion}
/grants
Pass Execution If
${SYNC_MODE}
=
= 0
The Granting process is asynchronous mode. 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/grantRequest.json
Post
${apiRoot}
/
${apiName}
/
${apiVersion}
/grants
${body}
Output
response
Integer
response status
201
Log
Status code validated
Create a new Grant - Asynchronous mode
Log
Request a new Grant for a VNF LCM operation by POST to
${apiRoot}
/
${apiName}
/
${apiVersion}
/grants
Pass Execution If
${SYNC_MODE}
=
= 1
The Granting process is synchronous mode. 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/grantRequest.json
Post
${apiRoot}
/
${apiName}
/
${apiVersion}
/grants
${body}
Output
response
Integer
response status
202
Log
Status code validated
Create a new Grant - Forbidden
# TODO: How to set up the pre-condition for this test?
Log
Request a new Grant for a VNF LCM operation by POST to
${apiRoot}
/
${apiName}
/
${apiVersion}
/grants
Log
The grant request should be rejected
Set Headers
{"Accept": "
${ACCEPT}
"}
Set Headers
{"Content-Type": "
${CONTENT_TYPE}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization": "
${AUTHORIZATION}
"}
${body}
=
Get File
json/grantRejectedRequest.json
Post
${apiRoot}
/
${apiName}
/
${apiVersion}
/grants
${body}
Output
response
Integer
response status
403
Log
Status code validated
GET Grants - Method not implemented
Log
Trying to perform a GET. This method should not be implemented
Set Headers
{"Accept":"
${ACCEPT}
"}
Run Keyword If
${AUTH_USAGE}
=
= 1
Set Headers
{"Authorization":"
${AUTHORIZATION}
"}
Log
Execute Query and validate response
Get
${apiRoot}
/
${apiName}
/
${apiVersion}
/grants
Output
response
Log
Validate Status code
Integer
response status
405
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
SOL003/VNFLifecycleOperationGranting-API_egm/SOL003-VNFLifecycleOperationGranting-API.yaml
0 → 100644
View file @
eb8a950e
This source diff could not be displayed because it is too large. You can
view the blob
instead.
SOL003/VNFLifecycleOperationGranting-API_egm/jsons/grantRejectedRequest.json
0 → 100644
View file @
eb8a950e
{
"vnfInstanceId"
:
"string"
,
"vnfLcmOpOccId"
:
"string"
,
"vnfdId"
:
"string"
,
"flavourId"
:
"string"
,
"operation"
:
"INSTANTIATE"
,
"isAutomaticInvocation"
:
true
,
"_links"
:
{
"vnfLcmOpOcc"
:
{
"href"
:
"string"
},
"vnfInstance"
:
{
"href"
:
"string"
}
}
}
\ No newline at end of file
SOL003/VNFLifecycleOperationGranting-API_egm/jsons/grantRequest.json
0 → 100644
View file @
eb8a950e
{
"vnfInstanceId"
:
"string"
,
"vnfLcmOpOccId"
:
"string"
,
"vnfdId"
:
"string"
,
"flavourId"
:
"string"
,
"operation"
:
"INSTANTIATE"
,
"isAutomaticInvocation"
:
true
,
"_links"
:
{
"vnfLcmOpOcc"
:
{
"href"
:
"string"
},
"vnfInstance"
:
{
"href"
:
"string"
}
}
}
\ No newline at end of file
SOL003/VNFLifecycleOperationGranting-API_egm/variables.txt
0 → 100644
View file @
eb8a950e
*** Variables ***
${VNFM_HOST} localhost # Hostname of the VNFM
${VNFM_PORT} 8080 # Listening port of the VNFM
${NFVO_HOST} localhost # Hostname of the NFVO
${NFVO_PORT} 8081 # Listening port of the NFVO
${VNFM_SCHEMA} https
${NFVO_SCHEMA} https
${AUTHORIZATION} Bearer QWxhZGRpbjpvcGVuIHNlc2FtZQ==
${CONTENT_TYPE} application/json
${CONTENT_TYPE_PATCH} application/merge-patch+json
${ACCEPT} application/json
${apiRoot} /
${apiName} grant
${apiVersion} v1
${AUTH_USAGE} 1
${WRONG_AUTHORIZATION} Bearer XXXXXWRONGXXXXX
${grantId} 6fc3539c-e602-4afa-8e13-962fb5a7d81d
${vnfInstanceDescription} description vnf
${vnfInstanceDescription_Update} Updated description vnf
${SINGLE_FILE_VNFD} 1 # If VNFD is PLAIN TEXT
${ACCEPT_PLAIN} text/plain
${ACCEPT_ZIP} application/zip
${vnfPkgId_processing} 007c111c-38a1-42c0-a666-7475ecb1567c
${ARTIFACT_TYPE} application/octet-stream
${ARTIFACT_ID} artifactId
${WRONG_ACCEPT} application/json
${SYNC_MODE} 1
${sub_filter} filter
${sub_filter_invalid} filter_invalid
${subscriptionId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f
${notification_ep} notification
${VrQuotaAvailNotification} {}
\ No newline at end of file
TrackingStatus.txt
View file @
eb8a950e
...
...
@@ -70,7 +70,9 @@ SOL003
* IndividualSubscription -----------------------------------> [DONE]
* NotificationEndpoint -------------------------------------> [DONE] //to be reviewed with nxw on how notification server will be configured
- VNFLifecycleOperationGranting-API_egm -------------------> [NOT STARTED]
- VNFLifecycleOperationGranting-API_egm -------------------> [IN PROGRESS]
* Grants----------------------------------------------> [DONE]
* IndividualGrant----------------------------------------------> [IN PROGRESS]
- VNFPackageManagement-API_nxw ----------------------------> [DONE]
* VNFPackages -----------------------------------------------> [DONE]
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment