Commit 4f0b2dbc authored by mengxuan.zhao's avatar mengxuan.zhao
Browse files

LCM scale high level keywords no variables

parent dd8fc108
Loading
Loading
Loading
Loading
+28 −14
Original line number Original line Diff line number Diff line
@@ -10,6 +10,9 @@ ${GRANT_POLLING_TOT} 2
${GRANT_POLLING_INTERVAL}    5s
${GRANT_POLLING_INTERVAL}    5s
${SCALE_POLLING_TOT}    10
${SCALE_POLLING_TOT}    10
${SCALE_POLLING_INTERVAL}    15s
${SCALE_POLLING_INTERVAL}    15s
${headers} 
${vnfLcmOpOccId}
${status}   


*** Test Cases ***
*** Test Cases ***
Scale Out a vnfInstance
Scale Out a vnfInstance
@@ -22,16 +25,23 @@ Scale Out a vnfInstance
    ...    Applicability: Scale operation is supported for the VNF (as capability in the VNFD)
    ...    Applicability: Scale operation is supported for the VNF (as capability in the VNFD)
    ...    NFVO is not subscribed for
    ...    NFVO is not subscribed for
    ...    Post-Conditions: VNF instance still in INSTANTIATED state and VNF was scaled
    ...    Post-Conditions: VNF instance still in INSTANTIATED state and VNF was scaled
    ${headers}=    Send VNFScaleOut request
    [Setup]     Check resource existance
    Check Response Status    202    ${headers}
    Send VNFScaleOut request
    ${vnfLcmOpOccId}=    Get VnfLcmOpOccId    ${headers}
    Check Response Status    202    ${status}
    Check Operation Status Transition    ${vnfLcmOpOccId}    STARTING    PROCESSING    ${GRANT_POLLING_TOT}    ${GRANT_POLLING_INTERVAL}
    Get VnfLcmOpOccId
    Check Operation Status Transition    ${vnfLcmOpOccId}    PROCESSING    COMPLETED    ${SCALE_POLLING_TOT}    ${SCALE_POLLING_INTERVAL}
    Check Operation Status Transition from starting to processing
    Check Operation Status Transition from processing to completed


*** Keywords ***
*** Keywords ***
Check resource existance
    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 Response Status
Check Response Status
    [Arguments]    ${expected_status}    ${headers}
    [Arguments]    ${expected_status}    ${status}
    ${status}=    Get Value From Json    ${headers}    $..status
    Should Be Equal    ${expected_status}    ${status}
    Should Be Equal    ${expected_status}    ${status}


Send VNFscaleOut Request
Send VNFscaleOut Request
@@ -42,21 +52,25 @@ Send VNFscaleOut Request
    ${body}=    Get File    json/scaleVnfOutRequest.json
    ${body}=    Get File    json/scaleVnfOutRequest.json
    Post    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale    ${body}
    Post    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale    ${body}
    ${headers}=    Output    response headers
    ${headers}=    Output    response headers
    ${json}=    evaluate    json.loads('''${headers}''')    json
    ${headers}=    evaluate    json.loads('''${headers}''')    json
    [Return]    ${json}
    ${status}=    Output    response status


Get VnfLcmOpOccId
Get VnfLcmOpOccId
    [Arguments]    ${headers}
    ${vnfLcmOpOccId}=    Get Value From Json    ${headers}    $..Location
    ${vnfLcmOpOccId}=    Get Value From Json    ${headers}    $..Location
    Should Not Be Empty    ${vnfLcmOpOccId}
    Should Not Be Empty    ${vnfLcmOpOccId}
    [Return]    ${vnfLcmOpOccId}

Check Operation Status Transition from starting to processing
    Check Operation Status Transition    ${vnfLcmOpOccId}    STARTING    PROCESSING    ${GRANT_POLLING_TOT}    ${GRANT_POLLING_INTERVAL}

Check Operation Status Transition from processing to completed
    Check Operation Status Transition    ${vnfLcmOpOccId}    PROCESSING    COMPLETED    ${SCALE_POLLING_TOT}    ${SCALE_POLLING_INTERVAL}
    
    
Check Operation Status Transition
Check Operation Status Transition
    [Arguments]    ${vnfLcmOpOccId}    ${initial_status}    ${final_status}    ${POLLING_TOT}    ${POLLING_INTERVAL}
    [Arguments]    ${vnfLcmOpOccId}    ${initial_status}    ${final_status}    ${POLLING_TOT}    ${POLLING_INTERVAL}
    ${INDEX}=    1
    :FOR    ${INDEX}    IN RANGE    1    ${POLLING_TOT}
    :FOR    ${INDEX}    IN RANGE    1    ${POLLING_TOT}
    \    GET    ${apiRoot}/${apiName}/${apiVersion}/${vnfLcmOpOccId}
    \    GET    ${apiRoot}/${apiName}/${apiVersion}/${vnfLcmOpOccId}
    \    Check Response Status    200    response code
    \    ${status}=    Output    response status
    \    Check Response Status    200    ${status}
    \    ${body}=    Output    response body
    \    ${body}=    Output    response body
    \    ${json}=    evaluate    json.loads('''${body}''')    json
    \    ${json}=    evaluate    json.loads('''${body}''')    json
    \    ${operationState}=    Get Value From Json    ${json}    $..operationState
    \    ${operationState}=    Get Value From Json    ${json}    $..operationState