Commit e52d714b authored by zafar's avatar zafar Committed by Giacomo Bernini
Browse files

New Resource IndividualGrant added in SOL011

parent b3e55949
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@ GET Grants - Method not implemented
    ...    Test title: GET Grants - Method not implemented
    ...    Test objective: The objective is to test that GET method is not allowed for Life cycle operation granting 
    ...    Pre-conditions: none
    ...    Reference: Clause 7.5.3.3.1 - ETSI GS NFV-SOL 011 [6] v3.3.1
    ...    Reference: Clause 7.5.3.3.2 - ETSI GS NFV-SOL 011 [6] v3.3.1
    ...    Config ID: Config_prod_NFVO
    ...    Applicability: none
    ...    Post-Conditions:   none
@@ -50,7 +50,7 @@ PUT Grants - Method not implemented
    ...    Test title: PUT Grants - Method not implemented
    ...    Test objective: The objective is to test that PUT method is not allowed for Life cycle operation granting 
    ...    Pre-conditions: none
    ...    Reference: Clause 7.5.3.3.1 - ETSI GS NFV-SOL 011 [6] v3.3.1
    ...    Reference: Clause 7.5.3.3.3 - ETSI GS NFV-SOL 011 [6] v3.3.1
    ...    Config ID: Config_prod_NFVO
    ...    Applicability: none
    ...    Post-Conditions: none
@@ -62,7 +62,7 @@ PATCH Grants - Method not implemented
    ...    Test title: PATCH Grants - Method not implemented
    ...    Test objective: The objective is to test that PATCH method is not allowed for Life cycle operation granting  
    ...    Pre-conditions: none
    ...    Reference: Clause 7.5.3.3.1 - ETSI GS NFV-SOL 011 [6] v3.3.1
    ...    Reference: Clause 7.5.3.3.4 - ETSI GS NFV-SOL 011 [6] v3.3.1
    ...    Config ID: Config_prod_NFVO
    ...    Applicability: none
    ...    Post-Conditions: none 
@@ -74,7 +74,7 @@ DELETE Grants - Method not implemented
    ...    Test title: DELETE Grants - Method not implemented
    ...    Test objective: The objective is to test that DELETE method is not allowed for Life cycle operation granting  
    ...    Pre-conditions: none
    ...    Reference: Clause 7.5.3.3.1 - ETSI GS NFV-SOL 011 [6] v3.3.1
    ...    Reference: Clause 7.5.3.3.5 - ETSI GS NFV-SOL 011 [6] v3.3.1
    ...    Config ID: Config_prod_NFVO
    ...    Applicability: none
    ...    Post-Conditions:  resources are not deleted
+122 −0
Original line number Diff line number Diff line
*** Settings ***
Resource   environment/variables.txt 
Library    OperatingSystem
Library    JSONLibrary
Library    JSONSchemaLibrary    schemas/
Library    REST    ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT}    ssl_verify=false
Documentation    This resource represents an individual grant. The client can use this resource to read the grant.
...    It is determined by means outside the scope of the present document, such as configuration or policy,
...    how long an individual grant is available.

*** Test Cases ***
POST Individual Grant - Method not implemented
    [Documentation]    Test ID: 9.3.3.2.1
    ...    Test title: POST Individual Grant - Method not implemented
    ...    Test objective: The objective is to test that POST method is not allowed for Life cycle operation granting  
    ...    Pre-conditions: none
    ...    Reference: Clause 7.5.4.3.1 - ETSI GS NFV-SOL 011 [1] v3.3.1
    ...    Config ID: Config_prod_NFVO
    ...    Applicability: none
    ...    Post-Conditions: none 
    Post individual Grant
    Check HTTP Response Status Code Is    405
    
GET an individual grant - Successful
    [Documentation]    Test ID: 9.3.3.2.2
    ...    Test title: GET an individual grant - Successful
    ...    Test objective: The objective is to retrieve a grant for a particular NS Lifecycle Operation.
    ...    Pre-conditions: The  grant information is available to the NFVO
    ...    Reference: Clause 7.5.4.3.2 - ETSI GS NFV-SOL 011 [1] v3.3.1
    ...    Config ID: Config_prod_NFVO
    ...    Applicability: none
    ...    Post-Conditions: none
    Get individual grant
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is    Grant
    
PUT an individual grant - Method not implemented
    [Documentation]    Test ID: 9.3.3.2.3
    ...    Test title: PUT an individual grant - Method not implemented
    ...    Test objective: The objective is to test that PUT method is not allowed to for Life cycle operation granting  
    ...    Pre-conditions: none
    ...    Reference: Clause 7.5.4.3.3 - ETSI GS NFV-SOL 011 [1] v3.3.1
    ...    Config ID: Config_prod_NFVO
    ...    Applicability: none
    ...    Post-Conditions: none 
    PUT individual Grant
    Check HTTP Response Status Code Is    405

PATCH an individual grant - Method not implemented
    [Documentation]    Test ID: 9.3.3.2.4
    ...    Test title: PATCH an individual grant - Method not implemented
    ...    Test objective: The objective is to test that PATCH method is not allowed to for Life cycle operation granting  
    ...    Pre-conditions: none
    ...    Reference: Clause 7.5.4.3.4 - ETSI GS NFV-SOL 011 [1] v3.3.1
    ...    Config ID: Config_prod_NFVO
    ...    Applicability: none
    ...    Post-Conditions: none 
    Patch individual Grant
    Check HTTP Response Status Code Is    405
    
DELETE an individual grant - Method not implemented
    [Documentation]    Test ID: 9.3.3.2.5
    ...    Test title: DELETE an individual grant - Method not implemented
    ...    Test objective: The objective is to test that DELETE method is not allowed to for Life cycle operation granting  
    ...    Pre-conditions: none
    ...    Reference: Clause 7.5.4.3.5 - ETSI GS NFV-SOL 011 [1] v3.3.1
    ...    Config ID: Config_prod_NFVO
    ...    Applicability: none
    ...    Post-Conditions: none
    Delete individual Grant
    Check HTTP Response Status Code Is    405

*** Keywords ***    
Get individual grant
    log    Trying to read an individual grant
    Set Headers    {"Accept":"${ACCEPT}"}  
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Get    ${apiRoot}/${apiName}/${apiVersion}/grants/${grantId}
    ${body}=    Output    response
    Set Suite Variable    ${response}    ${body}

Post individual Grant
    log    Trying to create an individual grant
    Set Headers    {"Accept":"${ACCEPT}"}  
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Get    ${apiRoot}/${apiName}/${apiVersion}/grants/${grantId}
    ${body}=    Output    response
    Set Suite Variable    ${response}    ${body}

Put individual Grant
    Log    Trying to update an individual grant. This method should not be implemented.
    Set Headers  {"Accept":"${ACCEPT}"} 
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Put    ${apiRoot}/${apiName}/${apiVersion}/grants/${grantId}
    ${body}=    Output    response
    Set Suite Variable    ${response}    ${body}
    
Patch individual Grant
    Log    Trying to update an individual grant. This method should not be implemented.
    Set Headers  {"Accept":"${ACCEPT}"} 
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Patch    ${apiRoot}/${apiName}/${apiVersion}/grants/${grantId}
    ${body}=    Output    response
    Set Suite Variable    ${response}    ${body}
    
Delete individual Grant
    Log    Trying to delete an individual grant. This method should not be implemented.
    Set Headers  {"Accept":"${ACCEPT}"} 
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Delete    ${apiRoot}/${apiName}/${apiVersion}/grants/${grantId}
    ${body}=    Output    response
    Set Suite Variable    ${response}    ${body}
        
Check HTTP Response Status Code Is
    [Arguments]    ${expected_status}    
    Should Be Equal As Strings    ${response['status']}    ${expected_status}
    Log    Status code validated
    
Check HTTP Response Body Json Schema Is
    [Arguments]    ${input}
    ${schema} =    Catenate    ${input}    .schema.json
    Validate Json    ${schema}    ${response['body']}
+1 −1
Original line number Diff line number Diff line
@@ -14,7 +14,7 @@ ${apiVersion} v1

${SYNC_MODE}    1


${grantId}


${response}
+51 −0
Original line number Diff line number Diff line
{
  "description": "This type represents a grant. It shall comply with the provisions defined in table 7.6.2.3-1.",
  "type": "object",
  "required": [
    "id",
    "nsInstanceId",
    "nsLcmOpOccId",
    "_links"
  ],
  "properties": {
    "id": {
      "description": "Identifier of the grant.",
      "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
    },
    "nsInstanceId": {
      "description": "Identifier of the NS instance which this grant request relates to.",
      "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
    },
    "nsLcmOpOccId": {
      "description": "Identifier of the NS lifecycle management operation occurrence associated to the GrantRequest.",
      "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
    },
    "additionalParams": {
      "description": "Additional parameters passed by NFVO-N, specific to the NS and the lifecycle management operation.",
      "$ref": "../components/SOL011_schemas.yaml#/components/schemas/KeyValuePairs"
    },
    "_links": {
      "description": "Links to resources related to this resource.",
      "type": "object",
      "required": [
        "self",
        "nsLcmOpOcc",
        "nsInstance"
      ],
      "properties": {
        "self": {
          "description": "URI of this resource",
          "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Link"
        },
        "nsLcmOpOcc": {
          "description": "Related NS lifecycle management operation occurrence",
          "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Link"
        },
        "nsInstance": {
          "description": "Related NS instance.",
          "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Link"
        }
      }
    }
  }
}
 No newline at end of file
+0 −53
Original line number Diff line number Diff line
{
  "Grant": {
    "description": "This type represents a grant. It shall comply with the provisions defined in table 7.6.2.3-1.",
    "type": "object",
    "required": [
      "id",
      "nsInstanceId",
      "nsLcmOpOccId",
      "_links"
    ],
    "properties": {
      "id": {
        "description": "Identifier of the grant.",
        "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
      },
      "nsInstanceId": {
        "description": "Identifier of the NS instance which this grant request relates to.",
        "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
      },
      "nsLcmOpOccId": {
        "description": "Identifier of the NS lifecycle management operation occurrence associated to the GrantRequest.",
        "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Identifier"
      },
      "additionalParams": {
        "description": "Additional parameters passed by NFVO-N, specific to the NS and the lifecycle management operation.",
        "$ref": "../components/SOL011_schemas.yaml#/components/schemas/KeyValuePairs"
      },
      "_links": {
        "description": "Links to resources related to this resource.",
        "type": "object",
        "required": [
          "self",
          "nsLcmOpOcc",
          "nsInstance"
        ],
        "properties": {
          "self": {
            "description": "URI of this resource",
            "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Link"
          },
          "nsLcmOpOcc": {
            "description": "Related NS lifecycle management operation occurrence",
            "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Link"
          },
          "nsInstance": {
            "description": "Related NS instance.",
            "$ref": "../components/SOL011_schemas.yaml#/components/schemas/Link"
          }
        }
      }
    }
  }
}
 No newline at end of file