Skip to content
Snippets Groups Projects
Commit f5bfed6c authored by Giacomo Bernini's avatar Giacomo Bernini
Browse files

upd lcm workflows

parent 3a5608ff
No related branches found
No related tags found
No related merge requests found
......@@ -16,24 +16,25 @@ Suite Teardown Terminate All Processes kill=true
*** Test Cases ***
Scale out a VNF Instance
[Documentation] Test ID: 5.x.y.x
... Test title: Change VNF Flavour Operation
... Test objective: The objective is to test a change flavour operation of an existing VNF instance
... Pre-conditions: VNF instance in INSTANTIATED state (Test ID: 5.a.b.c)
... Reference: section 5.3.3 - SOL003 v2.4.1
Change VNF Flavour
[Documentation] Test ID: 5.4.7.1
... Test title: Change VNF Flavour Workflow
... Test objective: The objective is to test the workflow for a change flavour of an existing VNF instance
... Pre-conditions: VNF instance in INSTANTIATED state (Test ID: 5.4.4.1). NFVO is subscribed to VNF LCM Operation Occurrence notifications (Test ID: 5.4.20.1)
... Reference: section 5.4.7 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability: change flavour operation is supported for the VNF (as capability in the VNFD)
... Applicability: Multiple flavours are supported for the VNF (as capability in the VNFD). NFVO is able to receive notifications from VNFM
... Post-Conditions: VNF instance still in INSTANTIATED state and the flavour is changed
Send VNF Scale Out Request
Send Change VNF Flavour Request
Check HTTP Response Status Code Is 202
Check HTTP Response Header Contains Location
Check Operation Occurrence Id
Check Operation Notification For Change Flavour STARTING
Create a new Grant - Sync - CHANGE_FLAVOUR
Check Operation Notification For Change Flavour PROCESSING
Check Operation Notification For Change Flavour COMPLETED
Check Postcondition VNF CHANGE_FLAVOUR
Check Postcondition VNF Flavor Changed
#Create a new Grant Sync - CHANGE_FLAVOU Scale REMOVED
*** Keywords ***
......@@ -48,8 +49,7 @@ Precondition Checks
${LccnSubscriptions}= Check subscriptions about one VNFInstance and operation type ${vnfInstanceId} VnfLcmOperationOccurrenceNotification operationType=SCALE
${scaleInfo}= Get Vnf Scale Info ${vnfInstanceId}
Check Postcondition VNF
[Arguments] ${operation}
Check Postcondition VNF Flavor Changed
Check resource instantiated
${newFlavour}= Get Vnf Flavour Info ${vnfInstanceId}
Should be Equal ${requestedFlavour} ${newFlavour}
......
......@@ -16,35 +16,32 @@ Suite Teardown Terminate All Processes kill=true
*** Test Cases ***
Create a VNF Instance
[Documentation] Test ID: 5.x.y.x
... Test title: Create a VNF instance procedure
... Test objective: The objective is to test the procedure for the creation of a VNF instance resource.
... Pre-conditions:
... Reference: section 5.3.1 - SOL003 v2.4.1; section
Create VNF Instance Resource
[Documentation] Test ID: 5.3.1.1
... Test title: Create VNF Instance workflow
... Test objective: The objective is to test the workflow for the creation of a new VNF instance resource.
... Pre-conditions: NFVO is subscribed to VNF Identifier Creation notifications (Test ID: 5.4.20.2)
... Reference: section 5.4.2 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... NFVO is not subscribed for
... Post-Conditions: upon successful completion, the VNF instance resource has been created in "NOT_INSTANTIATED" state.
Send VNF create Request
... Applicability: NFVO is able to receive notifications from VNFM
... Post-Conditions: The VNF instance resource has been created in "NOT_INSTANTIATED" state.
Send VNF Instance Resource create Request
Check HTTP Response Status Code Is 201
Check HTTP Response Header Contains Location
Check Operation Notification For Create VnfIdentifierCreationNotification
Check Postcondition VNF CREATE
Check Operation Notification For VNF Instance Creation
Check Postcondition VNF Instance Created NOT_INSTANTIATED
*** Keywords ***
Initialize System
Create Sessions
Check Postcondition VNF
[Arguments] ${operation}
Check Postcondition VNF Instance Created
[Arguments] ${status}
Check VNF Instance ${vnfInstanceId}
Check HTTP Response Status Code Is 200
Check VNF Status ${response.body.instantiationState} NOT_INSTANTIATED
Check Operation Notification For Create
[Arguments] ${element}
${json}= Get File schemas/${element}.schema.json
Configure Notification Handler ${notification_ep}
Check VNF Status ${response.body.instantiationState} ${status}
Check Operation Notification For VNF Instance Creation
Check VNF Instance Operation Notification VnfIdentifierCreationNotification ${vnfInstanceId}
\ No newline at end of file
......@@ -16,32 +16,28 @@ Suite Teardown Terminate All Processes kill=true
*** Test Cases ***
Create a VNF Instance
[Documentation] Test ID: 5.x.y.x
... Test title: Delete a VNF instance procedure
... Test objective: The objective is to test the procedure for the deletion of a VNF instance resource.
... Pre-conditions: The resource representing the VNF instance to be deleted needs to be in NOT_INSTANTIATED state
Delete VNF Instance Resource
[Documentation] Test ID: 5.3.2.1
... Test title: Delete VNF Instance workflow
... Test objective: The objective is to test the workflow for the deleteion of an existing VNF instance resource
... Pre-conditions: The VNF Instance resource is in NOT_INSTANTIATED state. NFVO is subscribed to VNF Identifier Creation notifications (Test ID: 5.4.20.2)
... Reference: section 5.3.2 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions: The resource representing the VNF instance has been removed from the list of VNF instance resources
Send VNF delete Request
... Applicability: NFVO is able to receive notifications from VNFM
... Post-Conditions: The VNF instance resource is deleted on the VNFM.
Send VNF Instance Resource delete Request
Check HTTP Response Status Code Is 204
Check Operation Notification For Create VnfIdentifierDeletionNotification
Check Postcondition VNF DELETE
Check Operation Notification For VNF Instance Deletion
Check Postcondition VNF Instance Deleted
*** Keywords ***
Initialize System
Create Sessions
Check Postcondition VNF
[Arguments] ${operation}
Check Postcondition VNF Instance Deleted
Check VNF Instance ${vnfInstanceId}
Check HTTP Response Status Code Is 404
Check Operation Notification For Create
[Arguments] ${element}
${json}= Get File schemas/${element}.schema.json
Configure Notification Handler ${notification_ep}
\ No newline at end of file
Check Operation Notification For VNF Instance Deletion
Check VNF Instance Operation Notification VnfIdentifierDeletionNotification ${vnfInstanceId}
\ No newline at end of file
......@@ -18,13 +18,13 @@ Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT}
*** Test Cases ***
VNF Instantiation
[Documentation] Test ID: 5.x.y.x
... Test title: VNF Instantiation
... Test objective: The objective is to test the instantiation of a VNF instance
... Pre-conditions: VNF instance resources is created (Test ID: 5.a.b.c)
... Reference: section 5.x.y - SOL003 v2.4.1
[Documentation] Test ID: 5.4.4.1
... Test title: VNF Instantiation worflow
... Test objective: The objective is to test the workflow for the instantiation of a VNF instance
... Pre-conditions: VNF instance resources is already created (Test ID: 5.4.2.1). NFVO is subscribed to VNF LCM Operation Occurrence notifications (Test ID: 5.4.20.1)
... Reference: section 5.4.4 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability: VNFM is in direct mode
... Applicability: NFVO is able to receive notifications from VNFM
... Post-Conditions: VNF instance in INSTANTIATED state
Send VNF Instantiation Request
Check HTTP Response Status Code Is 202
......
......@@ -16,25 +16,25 @@ Suite Teardown Terminate All Processes kill=true
*** Test Cases ***
Scale out a VNF Instance
[Documentation] Test ID: 5.x.y.x
... Test title: Scale out VNF operation
... Test objective: The objective is to test a scale out of an existing VNF instance
... Pre-conditions: VNF instance in INSTANTIATED state (Test ID: 5.a.b.c)
... Reference: section 5.4.5 - SOL003 v2.4.1
VNF Instance Scale To Level
[Documentation] Test ID: 5.4.6.1
... Test title: VNF Instance Scale To Level worflow
... Test objective: The objective is to test the workflow for the scale to level of a VNF instance
... Pre-conditions: VNF instance in INSTANTIATED state (Test ID: 5.4.4.1). NFVO is subscribed to VNF LCM Operation Occurrence notifications (Test ID: 5.4.20.1)
... Reference: section 5.4.6 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability: Scale operation is supported for the VNF (as capability in the VNFD)
... NFVO is not subscribed for
... Post-Conditions: VNF instance still in INSTANTIATED state and VNF was scaled
... Applicability: NFVO is able to receive notifications from VNFM. Scale operation is supported for the VNF (as capability in the VNFD)
... Post-Conditions: VNF instance still in INSTANTIATED state and VNF is scaled to the new level
Send VNF Scale To Level Request
Check HTTP Response Status Code Is 202
Check HTTP Response Header Contains Location
Check Operation Occurrence Id
Check Operation Notification For Scale STARTING
Create a new Grant - Sync - ScaleToLevel
Check Operation Notification For Scale PROCESSING
Check Operation Notification For Scale COMPLETED
Check Postcondition VNF
Check Postcondition VNF Scaled To New Level
#Create a new Grant - Sync - Scale REMOVED
*** Keywords ***
......@@ -45,7 +45,7 @@ Initialize System
${instantiationLevelId}= Get Value From Json ${scaleVnfToLevelRequest} $..instantiationLevelId #How to use this info to get the instantiation scale level?
${scaleInfo}= Get Value From Json ${scaleVnfToLevelRequest} $..scaleInfo
Check Postcondition VNF
Check Postcondition VNF Scaled To New Level
Check resource instantiated
${newScaleInfo}= Get Vnf Scale Info ${vnfInstanceId}
Compare ScaleInfos ${scaleInfo} ${newScaleInfo}
......
......@@ -16,26 +16,26 @@ Suite Teardown Terminate All Processes kill=true
*** Test Cases ***
Scale out a VNF Instance
[Documentation] Test ID: 5.x.y.x
... Test title: Scale out VNF operation
... Test objective: The objective is to test a scale out of an existing VNF instance
... Pre-conditions: VNF instance in INSTANTIATED state (Test ID: 5.a.b.c)
VNF Instance Scale Out
[Documentation] Test ID: 5.4.5.1
... Test title: VNF Instance Scale Out worflow
... Test objective: The objective is to test the workflow for the scaling out a VNF instance
... Pre-conditions: VNF instance in INSTANTIATED state (Test ID: 5.4.4.1). NFVO is subscribed to VNF LCM Operation Occurrence notifications (Test ID: 5.4.20.1)
... Reference: section 5.4.5 - SOL003 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability: Scale operation is supported for the VNF (as capability in the VNFD)
... NFVO is not subscribed for
... Post-Conditions: VNF instance still in INSTANTIATED state and VNF was scaled
... Applicability: NFVO is able to receive notifications from VNFM. Scale operation is supported for the VNF (as capability in the VNFD)
... Post-Conditions: VNF instance still in INSTANTIATED state and VNF is scaled out
Send VNF Scale Out Request
Check HTTP Response Status Code Is 202
Check HTTP Response Header Contains Location
Check Operation Occurrence Id
Check Operation Notification For Scale STARTING
Create a new Grant - Sync - Scale
Check Operation Notification For Scale PROCESSING
Check Operation Notification For Scale COMPLETED
Check Postcondition VNF SCALE_OUT
#Create a new Grant - Sync - Scale REMOVED
*** Keywords ***
Initialize System
......
......@@ -26,7 +26,7 @@ Create Sessions
Wait For Process handle=mockInstance timeout=5s on_timeout=continue
Create Mock Session ${callback_uri}:${callback_port}
Configure Notification Handler
Configure Notification Status Handler
[Arguments] ${endpoint} ${status}=""
Run Keyword If ${status}!="" set to dictionary ${json["operationState"]} dp=${status}
${BODY}= evaluate json.dumps(${json}) json
......@@ -34,6 +34,15 @@ Configure Notification Handler
&{notification_request}= Create Mock Request Matcher POST ${endpoint} body_type="JSON" body=${BODY}
&{notification_response}= Create Mock Response headers="Content-Type: application/json" status_code=204
Create Mock Expectation ${notification_request} ${notification_response}
Configure Notification VNF Instance Handler
[Arguments] ${endpoint} ${instanceId}=""
Run Keyword If ${instanceId}!="" set to dictionary ${json["vnfInstanceId"]} dp=${instanceId}
${BODY}= evaluate json.dumps(${json}) json
Log Creating mock request and response to handle ${element}
&{notification_request}= Create Mock Request Matcher POST ${endpoint} body_type="JSON" body=${BODY}
&{notification_response}= Create Mock Response headers="Content-Type: application/json" status_code=204
Create Mock Expectation ${notification_request} ${notification_response}
Configure Notification Forward
[Arguments] ${element} ${endpoint} ${endpoint_fwd}
......@@ -47,7 +56,14 @@ Check Operation Notification
[Arguments] ${element} ${status}=""
${json}= Get File schemas/${element}.schema.json
Configure Notification Forward ${element} ${notification_ep} ${notification_ep_fwd}
Configure Notification Handler ${notification_ep_fwd} ${status}
Configure Notification Status Handler ${notification_ep_fwd} ${status}
Wait Until Keyword Succeeds 2 min 10 sec Verify Mock Expectation ${notification_request}
Clear Requests ${notification_ep}
Clear Requests ${notification_ep_fwd}
Check VNF Instance Operation Notification
[Arguments] ${element} ${instance_id}
${json}= Get File schemas/${element}.schema.json
Configure Notification Forward ${element} ${notification_ep} ${notification_ep_fwd}
Configure Notification VNF Instance Handler ${notification_ep_fwd} ${instance_id}
\ No newline at end of file
......@@ -92,7 +92,7 @@ Send VNF Scale To Level Request
${aspectId}= Set Variable ${json.aspectId}
${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body}
Send VNF Create Request
Send VNF Instance Resource Create Request
Log Create VNF instance by POST to ${apiRoot}/${apiName}/${apiVersion}/vnf_instances
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
......@@ -100,7 +100,7 @@ Send VNF Create Request
${body}= Get File json/createVnfRequest.json
${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${body}
Send VNF Delete Request
Send VNF Instance Resource Delete Request
log Delete an individual VNF instance
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${response}= Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}
......
......@@ -17,4 +17,5 @@ ${VnfIdentifierDeletionNotification} {}
${response} {}
${notification_request} []
${notification_response} []
${json} {}
\ No newline at end of file
${json} {}
${requestedFlavour} test
\ 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