diff --git a/SOL009/NFVManoConfigurationAndInformationManagement-API/NFVMANOCimKeywords.robot b/SOL009/NFVManoConfigurationAndInformationManagement-API/NFVMANOCimKeywords.robot index 2f849184d4df6a3688507ce58b98747671e7be44..461fa1fad0ecdf314b0f74853b263a3945dae240 100644 --- a/SOL009/NFVManoConfigurationAndInformationManagement-API/NFVMANOCimKeywords.robot +++ b/SOL009/NFVManoConfigurationAndInformationManagement-API/NFVMANOCimKeywords.robot @@ -252,5 +252,95 @@ Send DELETE request for Individual Change State Operation Occurance Set Headers {"Accept":"${ACCEPT_JSON}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiMajorVersion}/change_state_ops/${changeStateOpOccId} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +Send Post request for NFV-MANO Serive Interface + Log Trying to perform a POST (method should not be implemented) + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + POST ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces + ${output}= Output response + Set Suite Variable ${response} ${output} + +Get NFV-MANO Serive Interface + Log Query to GET information about multiple NFV-MANO service interfaces of the NFV-MANO functional entity. + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +Get NFV-MANO Serive Interface with invalid filter + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces?attribute_not_exist=some_value + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +Get NFV-MANO Serive Interface with invalid selector + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces?fields=wrong_field + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +Get NFV-MANO Serive Interface with filter + Log Query information about multiple NFV-MANO service interfaces of the NFV-MANO functional entity with attribute filters. + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces?${filter}=${filter_value} + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +Get NFV-MANO Serive Interface with all_fields attribute selector + Log Queries information about multiple NFV-MANO service interfaces of the NFV-MANO functional entity, using all_fields + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces?exclude_default + ${output}= Output response + Set Suite Variable ${response} ${output} + +Get NFV-MANO Serive Interface with fields attribute selector + Log Queries information about multiple NFV-MANO service interfaces of the NFV-MANO functional entity, using fields + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces?fields=${fields} + ${output}= Output response + Set Suite Variable ${response} ${output} + +Get NFV-MANO Serive Interface with exclude_fields attribute selector + Log Queries information about multiple NFV-MANO service interfaces of the NFV-MANO functional entity, using fields + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces?exclude_fields=${fields} + ${output}= Output response + Set Suite Variable ${response} ${output} + +Send PUT request for NFV-MANO Serive Interface + log Trying to perform a PUT. This method should not be implemented + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +Send PATCH request for NFV-MANO Serive Interface + log Trying to perform a PATCH. This method should not be implemented + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces + ${outputResponse}= Output response + Set Global Variable @{response} ${outputResponse} + +Send DELETE request for NFV-MANO Serive Interface + log Trying to perform a DELETE. This method should not be implemented + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/${apiMajorVersion}/mano_entity/mano_interfaces ${outputResponse}= Output response Set Global Variable @{response} ${outputResponse} \ No newline at end of file diff --git a/SOL009/NFVManoConfigurationAndInformationManagement-API/NFVMANOServiceInterface.robot b/SOL009/NFVManoConfigurationAndInformationManagement-API/NFVMANOServiceInterface.robot new file mode 100644 index 0000000000000000000000000000000000000000..46fcf9102dfacf73900fe6a27f2e03e9a07dcf2c --- /dev/null +++ b/SOL009/NFVManoConfigurationAndInformationManagement-API/NFVMANOServiceInterface.robot @@ -0,0 +1,188 @@ +** Settings *** +Library JSONSchemaLibrary schemas/ +Resource environment/variables.txt +Library JSONLibrary +Library OperatingSystem +Resource NFVMANOCimKeywords.robot +Library REST ${NFVMANO_SCHEMA}://${NFVMANO_HOST}:${NFVMANO_PORT} ssl_verify=false +Library MockServerLibrary + +*** Test Cases *** +POST NFV-MANO Serive Interface - Method not implemented + [Documentation] Test ID: 8.3.1.5.1 + ... Test title: POST NFV-MANO Serive Interface - Method not implemented + ... Test objective: The objective is to test that POST method is not implemeted. + ... Pre-conditions: + ... Reference: clause 5.5.10.3.1 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: none + ... Post-Conditions: + Send Post request for NFV-MANO Serive Interface + Check HTTP Response Status Code Is 405 + +GET NFV-MANO Serive Interface + [Documentation] Test ID: 8.3.1.5.2 + ... Test title: GET NFV-MANO Serive Interface + ... Test objective: The objective is to query status information about multiple NFV-MANO service interfaces of the NFV-MANO functional entity. + ... Pre-conditions: + ... Reference: clause 5.5.10.3.2 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: + ... Post-Conditions: + Get NFV-MANO Serive Interface + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ManoServiceInterfaces + +GET NFV-MANO Serive Interface - invalid attribute-based filter + [Documentation] Test ID: 8.3.1.5.3 + ... Test title: GET NFV-MANO Serive Interface - invalid attribute-based filter + ... Test objective: The objective is to test that the retrieval of NFV-MANO Serive Interface fails when using invalid attribute-based filter, and perform the JSON schema validation of the failed operation HTTP response. + ... Pre-conditions: + ... Reference: clause 5.5.10.3.2 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: + ... Post-Conditions: + Get NFV-MANO Serive Interface with invalid filter + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails + +GET NFV-MANO Serive Interface - invalid attribute selector + [Documentation] Test ID: 8.3.1.5.4 + ... Test title: GET NFV-MANO Serive Interface - invalid attribute selector + ... Test objective: The objective is to test that the retrieval of NFV-MANO Serive Interface fails when using invalid attribute selector, and perform the JSON schema validation of the failed operation HTTP response. + ... Pre-conditions: + ... Reference: clause 5.5.10.3.2 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: + ... Post-Conditions: + Get NFV-MANO Serive Interface with invalid selector + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails + +GET NFV-MANO Serive Interface - Bad Request Response too Big + [Documentation] Test ID: 8.3.1.5.5 + ... Test title: GET NFV-MANO Serive Interface - Bad Request Response too Big + ... Test objective: The objective is to test that the retrieval of NFV-MANO Serive Interface fails when response is too big, and perform the JSON schema validation of the failed operation HTTP response. + ... Pre-conditions: + ... Reference: clause 5.5.10.3.2 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: + ... Post-Conditions: + Get NFV-MANO Serive Interface + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails + +GET NFV-MANO Serive Interface with attribute-based filter + [Documentation] Test ID: 8.3.1.5.6 + ... Test title: GET NFV-MANO Serive Interface with attribute-based filter + ... Test objective: The objective is to query status information about multiple NFV-MANO service interfaces of the NFV-MANO functional entities with attribute filters + ... Pre-conditions: + ... Reference: clause 5.5.10.3.2 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: + ... Post-Conditions: + Get NFV-MANO Serive Interface with filter + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ManoServiceInterfaces + +GET NFV-MANO Serive Interface with "all_fields" attribute selector + [Documentation] Test ID: 8.3.1.5.7 + ... Test title: GET NFV-MANO Serive Interface with "all_fields" attribute selector + ... Test objective: The objective is to retrieve NFV-MANO Serive Interface with "all_fields" attribute selector + ... Pre-conditions: + ... Reference: clause 5.5.10.3.2 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: + ... Post-Conditions: + Get NFV-MANO Serive Interface with all_fields attribute selector + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ManoServiceInterfaces + +GET NFV-MANO Serive Interface with "exclude_default" attribute selector + [Documentation] Test ID: 8.3.1.5.8 + ... Test title: GET NFV-MANO Serive Interface with "exclude_default" attribute selector + ... Test objective: The objective is to retrieve NFV-MANO Serive Interface with "exclude_default" attribute selector + ... Pre-conditions: + ... Reference: clause 5.5.10.3.2 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: + ... Post-Conditions: + Get NFV-MANO Serive Interface with all_fields attribute selector + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ManoServiceInterfaces + + +GET NFV-MANO Serive Interface with "fields" attribute selector + [Documentation] Test ID: 8.3.1.5.9 + ... Test title: GET NFV-MANO Serive Interface with "fields" attribute selector + ... Test objective: The objective is to retrieve NFV-MANO Serive Interface with fields attribute selector + ... Pre-conditions: + ... Reference: clause 5.5.10.3.2 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: + ... Post-Conditions: + Get NFV-MANO Serive Interface with fields attribute selector + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ManoServiceInterfaces + +GET NFV-MANO Serive Interface with "exclude_fields" attribute selector + [Documentation] Test ID: 8.3.1.5.10 + ... Test title: GET NFV-MANO Serive Interface with "exclude_fields" attribute selector + ... Test objective: The objective is to retrieve NFV-MANO Serive Interface with "exclude_fields" attribute selector + ... Pre-conditions: + ... Reference: clause 5.5.10.3.2 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: + ... Post-Conditions: none + Get NFV-MANO Serive Interface with exclude_fields attribute selector + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ManoServiceInterfaces + +GET NFV-MANO Serive Interface with Paged Response + [Documentation] Test ID: 8.3.1.5.11 + ... Test title: GET NFV-MANO Serive Interface with Paged Response + ... Test objective: The objective is to query NFV-MANO Serive Interface to get Paged Response. + ... Pre-conditions: + ... Reference: clause 5.5.10.3.2 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: + ... Post-Conditions: + Get NFV-MANO Serive Interface + Check HTTP Response Status Code Is 200 + Check LINK in Header + +PUT NFV-MANO Serive Interface - Method not implemented + [Documentation] Test ID: 8.3.1.5.12 + ... Test title: PUT NFV-MANO Serive Interface - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemeted. + ... Pre-conditions: + ... Reference: clause 5.5.10.3.3 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: none + ... Post-Conditions: + Send Put request for NFV-MANO Serive Interface + Check HTTP Response Status Code Is 405 + +PATCH NFV-MANO Serive Interface - Method not implemented + [Documentation] Test ID: 8.3.1.5.13 + ... Test title: PATCH NFV-MANO Serive Interface - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemeted. + ... Pre-conditions: + ... Reference: clause 5.5.10.3.4 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: none + ... Post-Conditions: + Send Patch request for NFV-MANO Serive Interface + Check HTTP Response Status Code Is 405 + +DELETE NFV-MANO Serive Interface - Method not implemented + [Documentation] Test ID: 8.3.1.5.14 + ... Test title: DELETE NFV-MANO Serive Interface - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemeted. + ... Pre-conditions: + ... Reference: clause 5.5.10.3.5 - ETSI GS NFV-SOL 009 [5] V3.3.1 + ... Config ID: Config_prod_NFV-MANO + ... Applicability: none + ... Post-Conditions: + Send Delete request for NFV-MANO Serive Interface + Check HTTP Response Status Code Is 405 \ No newline at end of file