Commit bde22274 authored by mengxuan.zhao's avatar mengxuan.zhao
Browse files

Update VNF LCM VNFinstances tests

parent 43450ede
Loading
Loading
Loading
Loading
+132 −0
Original line number Diff line number Diff line
*** Settings ***
Suite setup     Expect spec    SOL003-VNFLifecycleManagement-API.yaml
# Suite setup     Expect spec    SOL003-VNFLifecycleManagement-API.yaml
Resource    variables.txt 
Library    REST    http://${VNFM_HOST}:${VNFM_PORT} 
#Library    RequestsLibrary
...        spec=SOL003-VNFLifecycleManagement-API.yaml

*** Test cases ***

Create a new vnfInstance
    Log    Create VNF instance by POST to /vnflcm/v1/vnf_instances
    Log    Create VNF instance by POST to ${apiRoot}/${apiName}/${apiVersion}
    Set Headers  {"Accept":"${ACCEPT}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Post    /vnflcm/v1/vnf_instances    {"vnfdId": "12345","vnfInstanceName": "Test-VnfInstance", "vnfInstanceDescription": "bla"}
    Post    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances    {"vnfdId": "${vnfId}","vnfInstanceName": "${vnfInstanceName}", "vnfInstanceDescription": "${vnfInstanceDescription}"}
    Output    response
    Integer    response status    201
    Log    Status code validated

Create a new vnfInstance Bad Request
    Log    Create VNF instance by POST to /vnflcm/v1/vnf_instances
    Set Headers  {"Accept":"${ACCEPT}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Post    /vnflcm/v1/vnf_instances    {"bad_request": "bad_example"}
    Output    response
    Integer    response status    400
    Log    Status code validated
# Create a new vnfInstance Bad Request
    # Log    Create VNF instance by POST to /vnflcm/v1/vnf_instances
    # Set Headers  {"Accept":"${ACCEPT}"}  
    # Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    # Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    # Post    /vnflcm/v1/vnf_instances    {"bad_request": "bad_example"}
    # Output    response
    # Integer    response status    400
    # Log    Status code validated

Create a new vnfInstance Unauthorized
    Log    Create VNF instance by POST to /vnflcm/v1/vnf_instances
    Set Headers  {"Accept":"${ACCEPT}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    #Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${WRONG_AUTHORIZATION}"}
    Post    /vnflcm/v1/vnf_instances    {"vnfdId": "12345","vnfInstanceName": "Test-VnfInstance", "vnfInstanceDescription": "bla"}
    Output    response
    Integer    response status    401
    Log    Status code validated
# Create a new vnfInstance Unauthorized
    # Log    Create VNF instance by POST to /vnflcm/v1/vnf_instances
    # Set Headers  {"Accept":"${ACCEPT}"}  
    # Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    # #Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${WRONG_AUTHORIZATION}"}
    # Post    /vnflcm/v1/vnf_instances    {"vnfdId": "12345","vnfInstanceName": "Test-VnfInstance", "vnfInstanceDescription": "bla"}
    # Output    response
    # Integer    response status    401
    # Log    Status code validated
    
Create a new vnfInstance Forbidden
    Log    Create VNF instance by POST to /vnflcm/v1/vnf_instances
    Set Headers  {"Accept":"${ACCEPT}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${WRONG_AUTHORIZATION}"}
    Post    /vnflcm/v1/vnf_instances    {"vnfdId": "12345","vnfInstanceName": "Test-VnfInstance", "vnfInstanceDescription": "bla"}
    Output    response
    Integer    response status    403
    Log    Status code validated
# Create a new vnfInstance Forbidden
    # Log    Create VNF instance by POST to /vnflcm/v1/vnf_instances
    # Set Headers  {"Accept":"${ACCEPT}"}  
    # Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    # Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${WRONG_AUTHORIZATION}"}
    # Post    /vnflcm/v1/vnf_instances    {"vnfdId": "12345","vnfInstanceName": "Test-VnfInstance", "vnfInstanceDescription": "bla"}
    # Output    response
    # Integer    response status    403
    # Log    Status code validated

Get information about multiple VNF instances  
    Log    Query VNF The GET method queries information about multiple VNF instances.
@@ -52,40 +53,80 @@ Get information about multiple VNF instances
    Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Log    Execute Query and validate response
    Get    /vnflcm/v1/vnf_instances
    Get    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances
    Output    response
    Log    Validate Status code
    Integer    response status    200

Get information about multiple VNF instances Bad Request 
Get information about multiple VNF instances Bad Request Invalid attribute-based filtering parameters
    Log    Query VNF The GET method queries information about multiple VNF instances.
    Set Headers  {"Accept":"${ACCEPT}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"} 
    GET    /vnflcm/v1/vnf_instances?fields=wrong_field
    GET    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances?attribute_not_exist=some_value
    Log    Validate Status code
    Output    response
    Integer    response status    400

Get information about multiple VNF instances Unauthorized
Get information about multiple VNF instances Bad Request Invalid attribute selector
    Log    Query VNF The GET method queries information about multiple VNF instances.
    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?fields=wrong_field
    Log    Validate Status code
    Output    response
    Integer    response status    400

# Get information about multiple VNF instances Unauthorized
    # Log    Query VNF The GET method queries information about multiple VNF instances.
    # Set Headers  {"Accept":"${ACCEPT}"}  
    # Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    # Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${WRONG_AUTHORIZATION}"}
    Get    /vnflcm/v1/vnf_instances
    # Get    /vnflcm/v1/vnf_instances
    # Output    response
    # Integer    response status    401
    # Log    Status code validated

# Get information about multiple VNF instances Forbidden
    # Log    Query VNF The GET method queries information about multiple VNF instances
    # Set Headers  {"Accept":"${ACCEPT}"}  
    # Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    # Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${WRONG_AUTHORIZATION}"}
    # Get    /vnflcm/v1/vnf_instances
    # Output    response
    # Integer    response status    403
    # Log    Status code validated
    
PUT VNFInstances - Method not implemented
    log    Trying to perform a PUT. This method should not be implemented
    Set Headers  {"Accept":"${ACCEPT}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Put    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances    {"vnfInstanceDescription": "${vnfInstanceDescription_Update}"}
    Log    Validate Status code
    Output    response
    Integer    response status    401
    Log    Status code validated
    Integer    response status    405

Get information about multiple VNF instances Forbidden
    Log    Query VNF The GET method queries information about multiple VNF instances
PATCH VNFInstances - Method not implemented
    log    Trying to perform a PATCH. This method should not be implemented
    Set Headers  {"Accept":"${ACCEPT}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${WRONG_AUTHORIZATION}"}
    Get    /vnflcm/v1/vnf_instances
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Patch    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances    {"vnfInstanceDescription": "${vnfInstanceDescription_Update}"}
    Log    Validate Status code
    Output    response
    Integer    response status    403
    Log    Status code validated
    Integer    response status    405

DELETE VNFInstances - Method not implemented
    log    Trying to perform a DELETE. This method should not be implemented
    Set Headers  {"Accept":"${ACCEPT}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Delete    ${apiRoot}/${apiName}/${apiVersion}/vnf_instances
    Log    Validate Status code
    Output    response
    Integer    response status    405
    
*** Keywords ***
+6 −1
Original line number Diff line number Diff line
@@ -9,9 +9,14 @@ ${AUTHORIZATION} Bearer QWxhZGRpbjpvcGVuIHNlc2FtZQ==
${CONTENT_TYPE}    application/json
${ACCEPT}         application/json
${apiRoot}        /
${apiName}        vnflcm
${apiVersion}     v1    
${AUTH_USAGE}     1
${WRONG_AUTHORIZATION}    Bearer    XXXXXWRONGXXXXX
${vnfPkgId}       6fc3539c-e602-4afa-8e13-962fb5a7d81f
${vnfId}       6fc3539c-e602-4afa-8e13-962fb5a7d81f
${vnfInstanceName}    Test-VnfInstance
${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