ScaleVNFToLevelTask.robot 5.92 KB
Newer Older
Resource    environment/variables.txt 
aureliano sinatra's avatar
aureliano sinatra committed
Resource    VnfLcmOperationKeywords.robot
Library    REST    ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} 
Library    OperatingSystem
Library    JSONLibrary
Library    JSONSchemaLibrary    schemas/

*** Test Cases ***
aureliano sinatra's avatar
aureliano sinatra committed
POST Scale a vnfInstance to level
aureliano sinatra's avatar
aureliano sinatra committed
    [Documentation]    Test ID: 6.3.5.5.1
    ...    Test title: POST Scale a vnfInstance to level
    ...    Test objective: The objective is to scale a VNF instance to a target level.
    ...    Pre-conditions: none
    ...    Reference: clause 5.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1
    ...    Config ID: Config_prod_VE
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Applicability: 
    ...    Post-Conditions:
    POST Scale vnfInstance to level     
    Check HTTP Response Status Code Is    202
    Check Operation Occurrence Id
aureliano sinatra's avatar
aureliano sinatra committed
POST Scale a vnfInstance to level Conflict (Not-Instantiated)
    # TODO: Need to set the pre-condition of the test. VNF instance shall be in INSTANTIATED state
aureliano sinatra's avatar
aureliano sinatra committed
    [Documentation]    Test ID: 6.3.5.5.2
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Test title: POST Scale a vnfInstance to level Conflict (Not-Instantiated)
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Test objective: The objective is to verify that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. 
    ...    Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state
    ...    Reference: clause 5.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1
    ...    Config ID: Config_prod_VE
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Applicability: 
    ...    Post-Conditions:
    POST Scale vnfInstance to level   
    Check HTTP Response Status Code Is    409
    Check HTTP Response Body Json Schema Is    ProblemDetails 
aureliano sinatra's avatar
aureliano sinatra committed
POST Scale a vnfInstance Not Found
aureliano sinatra's avatar
aureliano sinatra committed
    [Documentation]    Test ID: 6.3.5.5.3
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Test title: POST Scale a vnfInstance Not Found
root's avatar
root committed
    ...    Test objective: The objective is to verify that the VNF Scale operation fails when the VNF instance resource is not present
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state
    ...    Reference: clause 5.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1
    ...    Config ID: Config_prod_VE
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Applicability: 
    ...    Post-Conditions:
    POST Scale vnfInstance to level    
root's avatar
root committed
    Check HTTP Response Status Code Is    404
aureliano sinatra's avatar
aureliano sinatra committed
    Check HTTP Response Body Json Schema Is    ProblemDetails 
   
    
GET Scale to level VNFInstance - Method not implemented
aureliano sinatra's avatar
aureliano sinatra committed
    [Documentation]    Test ID: 6.3.5.5.4
    ...    Test title: GET Scale to level VNFInstance - Method not implemented
    ...    Test objective: The objective is to verify that the method is not implemented
    ...    Pre-conditions:  
    ...    Reference: clause 5.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1
    ...    Config ID: Config_prod_VE
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Applicability: 
    ...    Post-Conditions: 
    GET Scale vnfInstance to level
    Check HTTP Response Status Code Is    405

PUT Scale to level VNFInstance - Method not implemented
aureliano sinatra's avatar
aureliano sinatra committed
    [Documentation]    Test ID: 6.3.5.5.5
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Test title: PUT Scale to level VNFInstance - Method not implemented
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Test objective: The objective is to verify that the method is not implemented
    ...    Pre-conditions:  
    ...    Reference: clause 5.4.6.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1
    ...    Config ID: Config_prod_VE
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Applicability: 
    ...    Post-Conditions: 
    PUT Scale vnfInstance to level
    Check HTTP Response Status Code Is    405

PATCH Scale to level VNFInstance - Method not implemented
aureliano sinatra's avatar
aureliano sinatra committed
    [Documentation]    Test ID: 6.3.5.5.6
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Test title: PATCH Scale to level VNFInstance - Method not implemented
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Test objective: The objective is to verify that the method is not implemented
    ...    Pre-conditions:  
    ...    Reference: clause 5.4.6.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1
    ...    Config ID: Config_prod_VE
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Applicability: 
    ...    Post-Conditions: 
    PATCH Scale vnfInstance to level
    Check HTTP Response Status Code Is    405
    
DELETE Scale to level VNFInstance - Method not implemented
aureliano sinatra's avatar
aureliano sinatra committed
    [Documentation]    Test ID: 6.3.5.5.7
    ...    Test title: DELETE Scale to level VNFInstance - Method not implemented
    ...    Test objective: The objective is to verify that the method is not implemented
    ...    Pre-conditions:  
    ...    Reference: clause 5.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1
    ...    Config ID: Config_prod_VE
aureliano sinatra's avatar
aureliano sinatra committed
    ...    Applicability: 
    ...    Post-Conditions: 
    DELETE Scale vnfInstance to level
    Check HTTP Response Status Code Is    405
*** Keywords ***
Check resource existence
    Set Headers    {"Accept":"${ACCEPT}"}  
    Set Headers    {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Get    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} 
    Integer    response status    200

Check resource not instantiated
    Set Headers    {"Accept":"${ACCEPT}"}  
    Set Headers    {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Get    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instanceId} 
    String    response body instantiationState    NOT_INSTANTIATED

 Check scale to level not supported
    Set Headers    {"Accept":"${ACCEPT}"}  
    Set Headers    {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Get    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} 
    Missing    response body instantiatedVnfInfo scaleStatus

Launch another LCM operation
    Set Headers  {"Accept":"${ACCEPT}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
Elian Kraja's avatar
Elian Kraja committed
    ${body}=    Get File    jsons/scaleVnfRequest.json
    Post    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale    ${body}
root's avatar
root committed
    Integer    response status    202