diff --git a/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackage.robot b/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackage.robot index 082970684474c14755d7113c2d3878149d552086..61a4f53a0f2cb0c8f27a8a013a8230b44367d8c8 100644 --- a/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackage.robot +++ b/SOL003/VNFSnapshotPackageManagement-API/IndividualVNFSnapshotPackage.robot @@ -17,7 +17,7 @@ POST Individual VNF Snapshot Package - Method not implemented GET Information about an individual VNF Snapshot Package - SUCCESSFUL [Documentation] Test ID: 7.3.8.3.2 ... Test title: GET Information about an individual VNF Snapshot Package - SUCCESSFUL - ... Test objective: The objective is to create a new VNF Snapshot Package resource + ... Test objective: The objective is to query information about a VNF Snapshot Package resource ... Pre-conditions: none ... Reference: Clause 12.4.3.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1 ... Config ID: Config_prod_NFVO diff --git a/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackages.robot b/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackages.robot index b5de47fe891427ee1cd393d086566e42cb4ec785..19060b7abacd9a3606d36f6a9f9fcbebdec2a22c 100644 --- a/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackages.robot +++ b/SOL003/VNFSnapshotPackageManagement-API/VNFSnapshotPackages.robot @@ -179,3 +179,16 @@ DELETE VNF Snapshot Packages - Method not implemented ... Post-Conditions: VNF snapshot package is not deleted DELETE VNF Snapshot Packages Check HTTP Response Status Code Is 405 + +GET information about multiple VNF Snapshot Packages using filter + [Documentation] Test ID: 7.3.8.2.15 + ... Test title: GET information about multiple VNF Snapshot Packages using filter + ... Test objective: The objective is to get information about multiples VNF Snapshot Packages using filter + ... Pre-conditions: none + ... Reference: Clause 12.4.2.3.2 - ETSI GS NFV-SOL 003 [1] v3.3.1 + ... Config ID: Config_prod_NFVO + ... Applicability: none + ... Post-Conditions: none + GET multiple VNF Snapshot Packages using filter + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is VnfSnapshotPkgInfos diff --git a/SOL003/VNFSnapshotPackageManagement-API/VnfSnapshotPackageManagementKeywords.robot b/SOL003/VNFSnapshotPackageManagement-API/VnfSnapshotPackageManagementKeywords.robot index 2ae5c0aa2b7e4c18563e145a572da56e64b67587..9a74ba0f650f7e4f3a5422088595e88da1a953c5 100644 --- a/SOL003/VNFSnapshotPackageManagement-API/VnfSnapshotPackageManagementKeywords.robot +++ b/SOL003/VNFSnapshotPackageManagement-API/VnfSnapshotPackageManagementKeywords.robot @@ -120,7 +120,16 @@ GET multiple VNF Snapshot Packages with bad filter Set Headers {"Accept":"${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} - GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshot_packages?fields=wrong_field + GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshot_packages?${NEG_FILTER} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET multiple VNF Snapshot Packages using filter + Log Query VNF The GET method queries information about multiple VNF Snapshot Packages. + Set Headers {"Accept":"${ACCEPT_JSON}"} + Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} + GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshot_packages?${POS_FILTER} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} @@ -128,7 +137,7 @@ GET multiple VNF Snapshot Packages with all_fields attribute selector Log Query status information about multiple VNF Snapshot Packages, using fields Set Headers {"Accept": "${ACCEPT_JSON}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"${AUTHORIZATION_HEADER}":"${AUTHORIZATION_TOKEN}"} - GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshot_packages?exclude_default + GET ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_snapshot_packages?all_fields ${output}= Output response Set Suite Variable ${response} ${output} diff --git a/SOL003/VNFSnapshotPackageManagement-API/environment/variables.txt b/SOL003/VNFSnapshotPackageManagement-API/environment/variables.txt index 130ed7b5dce2bc85036bf4169fd49e15155b8cbe..9cfcb189e3647c43ccb2a292e7407725d4894ca7 100644 --- a/SOL003/VNFSnapshotPackageManagement-API/environment/variables.txt +++ b/SOL003/VNFSnapshotPackageManagement-API/environment/variables.txt @@ -86,7 +86,7 @@ ${vndEncryptedArtifactID} encryptedId ${length} 1024 -${POS_FILTER} vnfdId=41fdd38a-3d4c-465c-83e0-f80e014425f8 ,vnfProvider=NXW # Positive case, suing compiant fields name for filtering get request +${POS_FILTER} id=41fdd38a-3d4c-465c-83e0-f80e014425f8 ,vnfProvider=NXW # Positive case, suing compiant fields name for filtering get request ${NEG_FILTER} nfvId=41fdd38a-3d4c-465c-83e0-f80e014425f8 # Negative case, using wrong name of field ${fields} softwareImages,additionalArtifacts ${VAR_SEPERATOR} & diff --git a/SOL003/VNFSnapshotPackageManagement-API/schemas/ProblemDetails.schema.json b/SOL003/VNFSnapshotPackageManagement-API/schemas/ProblemDetails.schema.json new file mode 100644 index 0000000000000000000000000000000000000000..2af3ef9b3f8c0e1dc6bfa39a818ba45e63ca223c --- /dev/null +++ b/SOL003/VNFSnapshotPackageManagement-API/schemas/ProblemDetails.schema.json @@ -0,0 +1 @@ +{ "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", "type": "object", "required": [ "status", "detail" ], "properties": { "type": { "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", "type": "string", "format": "URI" }, "title": { "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", "type": "string" }, "status": { "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", "type": "integer" }, "detail": { "description": "A human-readable explanation specific to this occurrence of the problem.\n", "type": "string" }, "instance": { "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", "type": "string", "format": "URI" } }} \ No newline at end of file