From ce74d3eb2ce5b0be37bcef0447aa3fa6819bde04 Mon Sep 17 00:00:00 2001 From: Elian Kraja Date: Mon, 18 Feb 2019 14:57:40 +0100 Subject: [PATCH] Bug fixing --- .../IndividualAlarm.robot | 6 +- .../Subscriptions.robot | 6 +- .../schemas/alarms.schema.json | 348 ++++++++--------- .../ChangeExternalVNFConnectivityTask.robot | 6 +- .../ChangeVNFFlavourTask.robot | 10 +- .../HealVNFTask.robot | 10 +- .../IndividualVNFInstance.robot | 8 +- .../InstantiateVNFTask.robot | 4 +- .../OperateVNFTask.robot | 10 +- .../ScaleVNFTask.robot | 10 +- .../ScaleVNFToLevelTask.robot | 10 +- .../Subscriptions.robot | 6 +- .../TerminateVNFTask.robot | 8 +- .../VNFInstances.robot | 2 +- SOL003/VNFFaultManagement-API/Alarms.robot | 1 - .../IndividualAlarm.robot | 9 +- .../IndividualSubscription.robot | 1 - .../Subscriptions.robot | 7 +- .../schemas/Alarms.schema.json | 349 +++++++++--------- .../schemas/subscriptions.schema.json | 84 ----- .../NotificationEndpoint.robot | 56 +-- SOL003/VNFIndicator-API/Subscriptions.robot | 6 +- .../VnfIndicatorNotification.robot | 2 +- .../CancelOperationTask.robot | 1 - .../CancelOperationWorkflow.robot | 1 - .../ChangeExternalVNFConnectivityTask.robot | 9 +- ...hangeExternalVNFConnectivityWorkflow.robot | 3 +- .../ChangeVNFFlavourTask.robot | 17 +- .../ChangeVNFFlavourWorkflow.robot | 3 +- .../CreateVNFWorkflow.robot | 1 - .../DeleteVNFWorkflow.robot | 2 - .../FailOperationTask.robot | 3 +- .../FailOperationWorkflow.robot | 2 - .../HealVNFTask.robot | 13 +- .../HealVNFWorkflow.robot | 1 - .../IndividualSubscription.robot | 1 - .../IndividualVNFInstance.robot | 12 +- .../IndividualVnfLcmOperationOccurence.robot | 1 - .../InstantiateVNFTask.robot | 5 +- .../InstantiateVNFTaskWorkflow.robot | 2 +- .../ModifyVNFInformationWorkflow.robot | 3 +- .../NotificationEndpoint.robot | 2 +- .../OperateVNFTask.robot | 13 +- .../OperateVNFWorkflow.robot | 4 +- .../RetryOperationTask.robot | 3 +- .../RetryOperationWorkflow.robot | 2 - .../RollBackOperationWorkflow.robot | 1 - .../RollbackOperationTask.robot | 3 +- .../ScaleVNFTask.robot | 13 +- .../ScaleVNFToLevelTask.robot | 13 +- .../ScaleVNFToLevelWorkflow.robot | 3 +- .../ScaleVNFWorkflow.robot | 1 - .../SubscriptionKeywords.robot | 2 +- .../Subscriptions.robot | 7 +- .../TerminateVNFTask.robot | 11 +- .../TerminatelVNFWorkflow.robot | 1 - .../VNFInstances.robot | 2 +- .../VnfInstancesWithChecks.robot | 2 +- .../VnfLcmMntOperationKeywords.robot | 24 +- .../VnfLcmOperationOccurences.robot | 3 +- .../Grants.robot | 5 +- .../IndividualGrant.robot | 1 - .../IndividualSubscription.robot | 14 +- .../Subscriptions.robot | 6 +- .../IndividualSubscription.robot | 1 - .../NotificationEndpoint.robot | 56 ++- .../Subscriptions.robot | 7 +- 67 files changed, 575 insertions(+), 664 deletions(-) delete mode 100644 SOL003/VNFFaultManagement-API/schemas/subscriptions.schema.json diff --git a/SOL002/VNFFaultManagement-API/IndividualAlarm.robot b/SOL002/VNFFaultManagement-API/IndividualAlarm.robot index 5fe680cb..43c1d675 100644 --- a/SOL002/VNFFaultManagement-API/IndividualAlarm.robot +++ b/SOL002/VNFFaultManagement-API/IndividualAlarm.robot @@ -62,7 +62,7 @@ PATCH Alarm Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/alarmModifications.json + ${body}= Get File jsons/alarmModifications.json Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body} Log Validate Status code ${Etag_modified}= Output response headers Etag @@ -87,7 +87,7 @@ PATCH Alarm - Conflict Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/alarmModifications.json + ${body}= Get File jsons/alarmModifications.json Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body} Log Validate Status code Integer response status 409 @@ -110,7 +110,7 @@ PATCH Alarm - Precondition failed Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Set Headers {"If-Match": "${Etag}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/alarmModifications.json + ${body}= Get File jsons/alarmModifications.json Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body} Log Validate Status code Integer response status 412 diff --git a/SOL002/VNFFaultManagement-API/Subscriptions.robot b/SOL002/VNFFaultManagement-API/Subscriptions.robot index 996a6499..2a8c4bfc 100644 --- a/SOL002/VNFFaultManagement-API/Subscriptions.robot +++ b/SOL002/VNFFaultManagement-API/Subscriptions.robot @@ -19,7 +19,7 @@ Create a new subscription Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/fmSubscriptionRequest.json + ${body}= Get File jsons/fmSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 Log Status code validated @@ -45,7 +45,7 @@ Create a new Subscription - DUPLICATION Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/fmSubscriptionRequest.json + ${body}= Get File jsons/fmSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 Log Status code validated @@ -69,7 +69,7 @@ Create a new Subscription - NO-DUPLICATION Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/fmSubscriptionRequest.json + ${body}= Get File jsons/fmSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 303 Log Status code validated diff --git a/SOL002/VNFFaultManagement-API/schemas/alarms.schema.json b/SOL002/VNFFaultManagement-API/schemas/alarms.schema.json index 76c1392e..95cfbe78 100644 --- a/SOL002/VNFFaultManagement-API/schemas/alarms.schema.json +++ b/SOL002/VNFFaultManagement-API/schemas/alarms.schema.json @@ -1,185 +1,187 @@ { - "type": "object", + "type": "array", "items": { - "description": "The alarm data type encapsulates information about an alarm.\n", "type": "object", - "required": [ - "id", - "managedObjectId", - "rootCauseFaultyResource", - "alarmRaisedTime", - "ackState", - "perceivedSeverity", - "eventTime", - "eventType", - "probableCause", - "isRootCause", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "managedObjectId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "rootCauseFaultyResource": { - "description": "This type represents the faulty virtual resources that have a negative impact on a VNF.\n", - "type": "object", - "required": [ - "faultyResource", - "faultyResourceType" - ], - "properties": { - "faultyResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" + "items": { + "description": "The alarm data type encapsulates information about an alarm.\n", + "type": "object", + "required": [ + "id", + "managedObjectId", + "rootCauseFaultyResource", + "alarmRaisedTime", + "ackState", + "perceivedSeverity", + "eventTime", + "eventType", + "probableCause", + "isRootCause", + "_links" + ], + "properties": { + "id": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "managedObjectId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "rootCauseFaultyResource": { + "description": "This type represents the faulty virtual resources that have a negative impact on a VNF.\n", + "type": "object", + "required": [ + "faultyResource", + "faultyResourceType" + ], + "properties": { + "faultyResource": { + "required": [ + "vimConnectionId", + "resourceId" + ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", + "properties": { + "vimConnectionId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceProviderId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceId": { + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" + }, + "vimLevelResourceType": { + "description": "Type of the resource in the scope of the VIM or the resource provider.\n", + "type": "string" + } } + }, + "faultyResourceType": { + "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n", + "type": "string", + "enum": [ + "COMPUTE", + "STORAGE", + "NETWORK" + ] } - }, - "faultyResourceType": { - "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n", - "type": "string", - "enum": [ - "COMPUTE", - "STORAGE", - "NETWORK" - ] } - } - }, - "alarmRaisedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "alarmChangedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "alarmClearedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "ackState": { - "description": "Acknowledgement state of the alarm. Permitted values: * UNACKNOWLEDGED * ACKNOWLEDGED.\n", - "type": "string", - "enum": [ - "UNACKNOWLEDGED", - "ACKNOWLEDGED" - ] - }, - "perceivedSeverity": { - "description": "Indicates the relative level of urgency for operator attention. * CRITICAL: The Critical severity level indicates that a service affecting condition has occurred and an immediate corrective action\n is required. Such a severity can be reported, for example, when a\n managed object becomes totally out of service and its capability needs\n to be restored (ITU-T Recommendation X.733).\n* MAJOR: The Major severity level indicates that a service affecting condition has developed and an urgent corrective action is required.\n Such a severity can be reported, for example, when there is a severe\n degradation in the capability of the managed object and its full\n capability needs to be restored (ITU-T Recommendation X.733).\n* MINOR: The Minor severity level indicates the existence of a non-service affecting fault condition and that corrective action\n should be taken in order to prevent a more serious (for example,\n service affecting) fault. Such a severity can be reported, for\n example, when the detected alarm condition is not currently degrading\n the capacity of the managed object (ITU-T Recommendation X.733).\n* WARNING: The Warning severity level indicates the detection of a potential or impending service affecting fault, before any significant\n effects have been felt. Action should be taken to further diagnose (if\n necessary) and correct the problem in order to prevent it from\n becoming a more serious service affecting fault (ITU-T Recommendation\n X.733).\n* INDETERMINATE: The Indeterminate severity level indicates that the severity level cannot be determined (ITU-T Recommendation X.733).\n* CLEARED: The Cleared severity level indicates the clearing of one or more previously reported alarms. This alarm clears all alarms for this\n managed object that have the same Alarm type, Probable cause and\n Specific problems (if given) (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "CRITICAL", - "MAJOR", - "MINOR", - "WARNING", - "INDETERMINATE", - "CLEARED" - ] - }, - "eventTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "eventType": { - "description": "The enumeration EventType represents those types of events that trigger an alarm. * COMMUNICATIONS_ALARM: An alarm of this type is associated with the procedure and/or process required conveying information from one point\n to another (ITU-T Recommendation X.733).\n* PROCESSING_ERROR_ALARM: An alarm of this type is associated with a software or processing fault (ITU-T Recommendation X.733).\n* ENVIRONMENTAL_ALARM: An alarm of this type is associated with a condition related to an enclosure in which the equipment resides\n (ITU-T Recommendation X.733).\n* QOS_ALARM: An alarm of this type is associated with degradation in the quality of a service (ITU-T Recommendation X.733).\n* EQUIPMENT_ALARM: An alarm of this type is associated with an equipment fault (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "COMMUNICATIONS_ALARM", - "PROCESSING_ERROR_ALARM", - "ENVIRONMENTAL_ALARM", - "QOS_ALARM", - "EQUIPMENT_ALARM" - ] - }, - "faultType": { - "description": "Additional information to clarify the type of the fault.\n", - "type": "string" - }, - "probableCause": { - "description": "Information about the probable cause of the fault.\n", - "type": "string" - }, - "isRootCause": { - "description": "Attribute indicating if this fault is the root for other correlated alarms. If TRUE, then the alarms listed in the attribute CorrelatedAlarmId are caused by this fault.\n", - "type": "boolean" - }, - "correlatedAlarmIds": { - "description": "List of identifiers of other alarms correlated to this fault.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", + }, + "alarmRaisedTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "alarmChangedTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "alarmClearedTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "ackState": { + "description": "Acknowledgement state of the alarm. Permitted values: * UNACKNOWLEDGED * ACKNOWLEDGED.\n", + "type": "string", + "enum": [ + "UNACKNOWLEDGED", + "ACKNOWLEDGED" + ] + }, + "perceivedSeverity": { + "type": "string", + "enum": [ + "CRITICAL", + "MAJOR", + "MINOR", + "WARNING", + "INDETERMINATE", + "CLEARED" + ] + }, + "eventTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "eventType": { + "description": "The enumeration EventType represents those types of events that trigger an alarm. * COMMUNICATIONS_ALARM: An alarm of this type is associated with the procedure and/or process required conveying information from one point\n to another (ITU-T Recommendation X.733).\n* PROCESSING_ERROR_ALARM: An alarm of this type is associated with a software or processing fault (ITU-T Recommendation X.733).\n* ENVIRONMENTAL_ALARM: An alarm of this type is associated with a condition related to an enclosure in which the equipment resides\n (ITU-T Recommendation X.733).\n* QOS_ALARM: An alarm of this type is associated with degradation in the quality of a service (ITU-T Recommendation X.733).\n* EQUIPMENT_ALARM: An alarm of this type is associated with an equipment fault (ITU-T Recommendation X.733).\n", + "type": "string", + "enum": [ + "COMMUNICATIONS_ALARM", + "PROCESSING_ERROR_ALARM", + "ENVIRONMENTAL_ALARM", + "QOS_ALARM", + "EQUIPMENT_ALARM" + ] + }, + "faultType": { + "description": "Additional information to clarify the type of the fault.\n", "type": "string" - } - }, - "faultDetails": { - "description": "Provides additional information about the fault.\n", - "type": "array", - "items": { + }, + "probableCause": { + "description": "Information about the probable cause of the fault.\n", "type": "string" - } - }, - "_links": { - "description": "Links for this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" + }, + "isRootCause": { + "description": "Attribute indicating if this fault is the root for other correlated alarms. If TRUE, then the alarms listed in the attribute CorrelatedAlarmId are caused by this fault.\n", + "type": "boolean" + }, + "correlatedAlarmIds": { + "description": "List of identifiers of other alarms correlated to this fault.\n", + "type": "array", + "items": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + } + }, + "faultDetails": { + "description": "Provides additional information about the fault.\n", + "type": "array", + "items": { + "type": "string" + } + }, + "_links": { + "description": "Links for this resource.\n", + "type": "object", + "required": [ + "self" + ], + "properties": { + "self": { + "description": "This type represents a link to a resource.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "URI of the referenced resource.\n", + "type": "string", + "format": "url" + } } - } - }, - "objectInstance": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" + }, + "objectInstance": { + "description": "This type represents a link to a resource.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "URI of the referenced resource.\n", + "type": "string", + "format": "url" + } } } } diff --git a/SOL002/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot b/SOL002/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot index ed9b1c4b..0ddb0426 100644 --- a/SOL002/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot +++ b/SOL002/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot @@ -13,7 +13,7 @@ Change external VNF connectivity Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeExtVnfConnectivityRequest .json + ${body}= Get File jsons/changeExtVnfConnectivityRequest .json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${body} Integer response status 202 Log Status code validated @@ -32,7 +32,7 @@ Change external VNF connectivity Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeExtVnfConnectivityRequest .json + ${body}= Get File jsons/changeExtVnfConnectivityRequest .json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${body} Log Validate Status code Integer response status 409 @@ -82,6 +82,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot b/SOL002/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot index 4ae2da6d..b1c238bf 100644 --- a/SOL002/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot +++ b/SOL002/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot @@ -13,7 +13,7 @@ Change deployment flavour of a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeVnfFlavourRequest.json + ${body}= Get File jsons/changeVnfFlavourRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} Integer response status 202 Log Status code validated @@ -33,7 +33,7 @@ Change deployment flavour of a vnfInstance Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeVnfFlavourRequest.json + ${body}= Get File jsons/changeVnfFlavourRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} Integer response status 409 Log Status code validated @@ -53,7 +53,7 @@ Change deployment flavour of a vnfInstance Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeVnfFlavourRequest.json + ${body}= Get File jsons/changeVnfFlavourRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} Log Validate Status code Integer response status 409 @@ -73,7 +73,7 @@ Change deployment flavour of a vnfInstance Not Found Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeVnfFlavourRequest.json + ${body}= Get File jsons/changeVnfFlavourRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} Integer response status 404 Log Status code validated @@ -136,6 +136,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/HealVNFTask.robot b/SOL002/VNFLifecycleManagement-API/HealVNFTask.robot index e72d796d..d761cb34 100644 --- a/SOL002/VNFLifecycleManagement-API/HealVNFTask.robot +++ b/SOL002/VNFLifecycleManagement-API/HealVNFTask.robot @@ -13,7 +13,7 @@ Heal a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/healVnFRequest.json + ${body}= Get File jsons/healVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} Integer response status 202 Log Status code validated @@ -33,7 +33,7 @@ Heal a vnfInstance Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/healVnFRequest.json + ${body}= Get File jsons/healVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} Integer response status 409 Log Status code validated @@ -53,7 +53,7 @@ Heal a vnfInstance Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/healVnFRequest.json + ${body}= Get File jsons/healVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} Log Validate Status code Integer response status 409 @@ -73,7 +73,7 @@ Heal a vnfInstance Not Found Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/healVnFRequest.json + ${body}= Get File jsons/healVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} Integer response status 404 Log Status code validated @@ -135,6 +135,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/IndividualVNFInstance.robot b/SOL002/VNFLifecycleManagement-API/IndividualVNFInstance.robot index 5a184c31..cf1a04dc 100644 --- a/SOL002/VNFLifecycleManagement-API/IndividualVNFInstance.robot +++ b/SOL002/VNFLifecycleManagement-API/IndividualVNFInstance.robot @@ -57,7 +57,7 @@ PATCH Individual VNFInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/patchBodyRequest.json + ${body}= Get File jsons/patchBodyRequest.json Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} Log Validate Status code ${Etag_modified}= Output response headers Etag @@ -77,7 +77,7 @@ PATCH Individual VNFInstance Precondition failed Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Set Headers {"If-Match": "${Etag}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/patchBodyRequest.json + ${body}= Get File jsons/patchBodyRequest.json Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} Log Validate Status code Integer response status 412 @@ -97,7 +97,7 @@ PATCH Individual VNFInstance Conflict Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/patchBodyRequest.json + ${body}= Get File jsons/patchBodyRequest.json Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} Log Validate Status code Integer response status 409 @@ -154,7 +154,7 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 202 diff --git a/SOL002/VNFLifecycleManagement-API/InstantiateVNFTask.robot b/SOL002/VNFLifecycleManagement-API/InstantiateVNFTask.robot index f560800f..307b42a7 100644 --- a/SOL002/VNFLifecycleManagement-API/InstantiateVNFTask.robot +++ b/SOL002/VNFLifecycleManagement-API/InstantiateVNFTask.robot @@ -15,7 +15,7 @@ Instantiate a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/instantiateVnfRequest.json + ${body}= Get File jsons/instantiateVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${body} Integer response status 202 Log Status code validated @@ -34,7 +34,7 @@ Instantiate a vnfInstance Conflict Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/instantiateVnfRequest.json + ${body}= Get File jsons/instantiateVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${body} Integer response status 409 Log Status code validated diff --git a/SOL002/VNFLifecycleManagement-API/OperateVNFTask.robot b/SOL002/VNFLifecycleManagement-API/OperateVNFTask.robot index 64ea5da7..77ae2f97 100644 --- a/SOL002/VNFLifecycleManagement-API/OperateVNFTask.robot +++ b/SOL002/VNFLifecycleManagement-API/OperateVNFTask.robot @@ -13,7 +13,7 @@ Operate a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/operateVnFRequest.json + ${body}= Get File jsons/operateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} Integer response status 202 Log Status code validated @@ -33,7 +33,7 @@ Operate a vnfInstance Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/operateVnFRequest.json + ${body}= Get File jsons/operateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} Integer response status 409 Log Status code validated @@ -53,7 +53,7 @@ Operate a vnfInstance Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/operateVnFRequest.json + ${body}= Get File jsons/operateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} Log Validate Status code Integer response status 409 @@ -73,7 +73,7 @@ Operate a vnfInstance Not Found Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/operateVnFRequest.json + ${body}= Get File jsons/operateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} Integer response status 404 Log Status code validated @@ -136,6 +136,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/ScaleVNFTask.robot b/SOL002/VNFLifecycleManagement-API/ScaleVNFTask.robot index 8f7a4c3f..879d55fd 100644 --- a/SOL002/VNFLifecycleManagement-API/ScaleVNFTask.robot +++ b/SOL002/VNFLifecycleManagement-API/ScaleVNFTask.robot @@ -13,7 +13,7 @@ Scale a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 Log Status code validated @@ -32,7 +32,7 @@ Scale a vnfInstance Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 409 Log Status code validated @@ -51,7 +51,7 @@ Scale a vnfInstance Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 409 Log Status code validated @@ -71,7 +71,7 @@ Scale a vnfInstance Not Found Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 404 Log Status code validated @@ -133,6 +133,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot b/SOL002/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot index 61d72bd1..b1f5b464 100644 --- a/SOL002/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot +++ b/SOL002/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot @@ -13,7 +13,7 @@ Scale a vnfInstance to level Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 202 Log Status code validated @@ -32,7 +32,7 @@ Scale a vnfInstance to level Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 409 Log Status code validated @@ -50,7 +50,7 @@ Scale a vnfInstance to level Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Log Validate Status code Integer response status 409 @@ -70,7 +70,7 @@ Scale a vnfInstance Not Found Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 404 Log Status code validated @@ -137,6 +137,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/Subscriptions.robot b/SOL002/VNFLifecycleManagement-API/Subscriptions.robot index 4d2c30f3..c0a37afa 100644 --- a/SOL002/VNFLifecycleManagement-API/Subscriptions.robot +++ b/SOL002/VNFLifecycleManagement-API/Subscriptions.robot @@ -11,7 +11,7 @@ Create a new subscription Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/lccbSubscriptionRequest.json + ${body}= Get File jsons/lccbSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 Log Status code validated @@ -29,7 +29,7 @@ Create a new Subscription - DUPLICATION Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/lccbSubscriptionRequest.json + ${body}= Get File jsons/lccbSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 Log Status code validated @@ -45,7 +45,7 @@ Create a new Subscription - NO-DUPLICATION Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/lccbSubscriptionRequest.json + ${body}= Get File jsons/lccbSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 303 Log Status code validated diff --git a/SOL002/VNFLifecycleManagement-API/TerminateVNFTask.robot b/SOL002/VNFLifecycleManagement-API/TerminateVNFTask.robot index 854fc1e8..d7556a34 100644 --- a/SOL002/VNFLifecycleManagement-API/TerminateVNFTask.robot +++ b/SOL002/VNFLifecycleManagement-API/TerminateVNFTask.robot @@ -13,7 +13,7 @@ Terminate a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/terminateVnFRequest.json + ${body}= Get File jsons/terminateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} Integer response status 202 Log Status code validated @@ -33,7 +33,7 @@ Terminate a vnfInstance Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/terminateVnFRequest.json + ${body}= Get File jsons/terminateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} Integer response status 409 Log Status code validated @@ -53,7 +53,7 @@ Terminate a vnfInstance Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/terminateVnFRequest.json + ${body}= Get File jsons/terminateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} Log Validate Status code Integer response status 409 @@ -116,6 +116,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/VNFInstances.robot b/SOL002/VNFLifecycleManagement-API/VNFInstances.robot index 28da64c6..2a5f30c3 100644 --- a/SOL002/VNFLifecycleManagement-API/VNFInstances.robot +++ b/SOL002/VNFLifecycleManagement-API/VNFInstances.robot @@ -13,7 +13,7 @@ Create a new vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/createVnfRequest.json + ${body}= Get File jsons/createVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${body} Integer response status 201 Log Status code validated diff --git a/SOL003/VNFFaultManagement-API/Alarms.robot b/SOL003/VNFFaultManagement-API/Alarms.robot index 26e38d56..0befae9a 100644 --- a/SOL003/VNFFaultManagement-API/Alarms.robot +++ b/SOL003/VNFFaultManagement-API/Alarms.robot @@ -2,7 +2,6 @@ # Suite setup Expect spec SOL003-VNFLifecycleManagement-API.yaml Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFFaultManagement-API.yaml Library JSONLibrary Library JSONSchemaLibrary schemas/ Library OperatingSystem diff --git a/SOL003/VNFFaultManagement-API/IndividualAlarm.robot b/SOL003/VNFFaultManagement-API/IndividualAlarm.robot index 11fb1cfc..f3961600 100644 --- a/SOL003/VNFFaultManagement-API/IndividualAlarm.robot +++ b/SOL003/VNFFaultManagement-API/IndividualAlarm.robot @@ -2,7 +2,6 @@ # Suite setup Expect spec SOL003-VNFLifecycleManagement-API.yaml Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFFaultManagement-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -34,7 +33,7 @@ Get information about an alarm Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} - ${Etag}= Output response headers Etag + #${Etag}= Output response headers Etag Log Validate Status code Integer response status 200 ${contentType}= Output response headers Content-Type @@ -65,7 +64,7 @@ PATCH Alarm Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/alarmModifications.json + ${body}= Get File jsons/alarmModifications.json Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body} Log Validate Status code ${Etag_modified}= Output response headers Etag @@ -89,7 +88,7 @@ PATCH Alarm - Conflict Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/alarmModifications.json + ${body}= Get File jsons/alarmModifications.json Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body} Log Validate Status code Integer response status 409 @@ -112,7 +111,7 @@ PATCH Alarm - Precondition failed Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Set Headers {"If-Match": "${Etag}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/alarmModifications.json + ${body}= Get File jsons/alarmModifications.json Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body} Log Validate Status code Integer response status 412 diff --git a/SOL003/VNFFaultManagement-API/IndividualSubscription.robot b/SOL003/VNFFaultManagement-API/IndividualSubscription.robot index 8fc2d26c..9d57803d 100644 --- a/SOL003/VNFFaultManagement-API/IndividualSubscription.robot +++ b/SOL003/VNFFaultManagement-API/IndividualSubscription.robot @@ -3,7 +3,6 @@ Resource environment/variables.txt Library JSONLibrary Library JSONSchemaLibrary schemas/ Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFFaultManagement-API.yaml Documentation This resource represents an individual subscription for VNF alarms. ... The client can use this resource to read and to terminate a subscription to notifications related to VNF fault management. Suite Setup Check resource existance diff --git a/SOL003/VNFFaultManagement-API/Subscriptions.robot b/SOL003/VNFFaultManagement-API/Subscriptions.robot index d19f401d..b4590084 100644 --- a/SOL003/VNFFaultManagement-API/Subscriptions.robot +++ b/SOL003/VNFFaultManagement-API/Subscriptions.robot @@ -1,7 +1,6 @@ *** Settings *** Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFFaultManagement-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -20,7 +19,7 @@ Create a new subscription Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/fmSubscriptionRequest.json + ${body}= Get File jsons/fmSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 Log Status code validated @@ -46,7 +45,7 @@ Create a new Subscription - DUPLICATION Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/fmSubscriptionRequest.json + ${body}= Get File jsons/fmSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 Log Status code validated @@ -70,7 +69,7 @@ Create a new Subscription - NO-DUPLICATION Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/fmSubscriptionRequest.json + ${body}= Get File jsons/fmSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 303 Log Status code validated diff --git a/SOL003/VNFFaultManagement-API/schemas/Alarms.schema.json b/SOL003/VNFFaultManagement-API/schemas/Alarms.schema.json index 4be8e6ff..95cfbe78 100644 --- a/SOL003/VNFFaultManagement-API/schemas/Alarms.schema.json +++ b/SOL003/VNFFaultManagement-API/schemas/Alarms.schema.json @@ -1,184 +1,187 @@ { - "type": "object", + "type": "array", "items": { - "description": "The alarm data type encapsulates information about an alarm.\n", "type": "object", - "required": [ - "id", - "managedObjectId", - "rootCauseFaultyResource", - "alarmRaisedTime", - "ackState", - "perceivedSeverity", - "eventTime", - "eventType", - "probableCause", - "isRootCause", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "managedObjectId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "rootCauseFaultyResource": { - "description": "This type represents the faulty virtual resources that have a negative impact on a VNF.\n", - "type": "object", - "required": [ - "faultyResource", - "faultyResourceType" - ], - "properties": { - "faultyResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" + "items": { + "description": "The alarm data type encapsulates information about an alarm.\n", + "type": "object", + "required": [ + "id", + "managedObjectId", + "rootCauseFaultyResource", + "alarmRaisedTime", + "ackState", + "perceivedSeverity", + "eventTime", + "eventType", + "probableCause", + "isRootCause", + "_links" + ], + "properties": { + "id": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "managedObjectId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "rootCauseFaultyResource": { + "description": "This type represents the faulty virtual resources that have a negative impact on a VNF.\n", + "type": "object", + "required": [ + "faultyResource", + "faultyResourceType" + ], + "properties": { + "faultyResource": { + "required": [ + "vimConnectionId", + "resourceId" + ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", + "properties": { + "vimConnectionId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceProviderId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceId": { + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" + }, + "vimLevelResourceType": { + "description": "Type of the resource in the scope of the VIM or the resource provider.\n", + "type": "string" + } } + }, + "faultyResourceType": { + "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n", + "type": "string", + "enum": [ + "COMPUTE", + "STORAGE", + "NETWORK" + ] } - }, - "faultyResourceType": { - "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n", - "type": "string", - "enum": [ - "COMPUTE", - "STORAGE", - "NETWORK" - ] } - } - }, - "alarmRaisedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "alarmChangedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "alarmClearedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "ackState": { - "description": "Acknowledgement state of the alarm. Permitted values: * UNACKNOWLEDGED * ACKNOWLEDGED.\n", - "type": "string", - "enum": [ - "UNACKNOWLEDGED", - "ACKNOWLEDGED" - ] - }, - "perceivedSeverity": { - "type": "string", - "enum": [ - "CRITICAL", - "MAJOR", - "MINOR", - "WARNING", - "INDETERMINATE", - "CLEARED" - ] - }, - "eventTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "eventType": { - "description": "The enumeration EventType represents those types of events that trigger an alarm. * COMMUNICATIONS_ALARM: An alarm of this type is associated with the procedure and/or process required conveying information from one point\n to another (ITU-T Recommendation X.733).\n* PROCESSING_ERROR_ALARM: An alarm of this type is associated with a software or processing fault (ITU-T Recommendation X.733).\n* ENVIRONMENTAL_ALARM: An alarm of this type is associated with a condition related to an enclosure in which the equipment resides\n (ITU-T Recommendation X.733).\n* QOS_ALARM: An alarm of this type is associated with degradation in the quality of a service (ITU-T Recommendation X.733).\n* EQUIPMENT_ALARM: An alarm of this type is associated with an equipment fault (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "COMMUNICATIONS_ALARM", - "PROCESSING_ERROR_ALARM", - "ENVIRONMENTAL_ALARM", - "QOS_ALARM", - "EQUIPMENT_ALARM" - ] - }, - "faultType": { - "description": "Additional information to clarify the type of the fault.\n", - "type": "string" - }, - "probableCause": { - "description": "Information about the probable cause of the fault.\n", - "type": "string" - }, - "isRootCause": { - "description": "Attribute indicating if this fault is the root for other correlated alarms. If TRUE, then the alarms listed in the attribute CorrelatedAlarmId are caused by this fault.\n", - "type": "boolean" - }, - "correlatedAlarmIds": { - "description": "List of identifiers of other alarms correlated to this fault.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", + }, + "alarmRaisedTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "alarmChangedTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "alarmClearedTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "ackState": { + "description": "Acknowledgement state of the alarm. Permitted values: * UNACKNOWLEDGED * ACKNOWLEDGED.\n", + "type": "string", + "enum": [ + "UNACKNOWLEDGED", + "ACKNOWLEDGED" + ] + }, + "perceivedSeverity": { + "type": "string", + "enum": [ + "CRITICAL", + "MAJOR", + "MINOR", + "WARNING", + "INDETERMINATE", + "CLEARED" + ] + }, + "eventTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "eventType": { + "description": "The enumeration EventType represents those types of events that trigger an alarm. * COMMUNICATIONS_ALARM: An alarm of this type is associated with the procedure and/or process required conveying information from one point\n to another (ITU-T Recommendation X.733).\n* PROCESSING_ERROR_ALARM: An alarm of this type is associated with a software or processing fault (ITU-T Recommendation X.733).\n* ENVIRONMENTAL_ALARM: An alarm of this type is associated with a condition related to an enclosure in which the equipment resides\n (ITU-T Recommendation X.733).\n* QOS_ALARM: An alarm of this type is associated with degradation in the quality of a service (ITU-T Recommendation X.733).\n* EQUIPMENT_ALARM: An alarm of this type is associated with an equipment fault (ITU-T Recommendation X.733).\n", + "type": "string", + "enum": [ + "COMMUNICATIONS_ALARM", + "PROCESSING_ERROR_ALARM", + "ENVIRONMENTAL_ALARM", + "QOS_ALARM", + "EQUIPMENT_ALARM" + ] + }, + "faultType": { + "description": "Additional information to clarify the type of the fault.\n", "type": "string" - } - }, - "faultDetails": { - "description": "Provides additional information about the fault.\n", - "type": "array", - "items": { + }, + "probableCause": { + "description": "Information about the probable cause of the fault.\n", "type": "string" - } - }, - "_links": { - "description": "Links for this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" + }, + "isRootCause": { + "description": "Attribute indicating if this fault is the root for other correlated alarms. If TRUE, then the alarms listed in the attribute CorrelatedAlarmId are caused by this fault.\n", + "type": "boolean" + }, + "correlatedAlarmIds": { + "description": "List of identifiers of other alarms correlated to this fault.\n", + "type": "array", + "items": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + } + }, + "faultDetails": { + "description": "Provides additional information about the fault.\n", + "type": "array", + "items": { + "type": "string" + } + }, + "_links": { + "description": "Links for this resource.\n", + "type": "object", + "required": [ + "self" + ], + "properties": { + "self": { + "description": "This type represents a link to a resource.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "URI of the referenced resource.\n", + "type": "string", + "format": "url" + } } - } - }, - "objectInstance": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" + }, + "objectInstance": { + "description": "This type represents a link to a resource.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "URI of the referenced resource.\n", + "type": "string", + "format": "url" + } } } } @@ -186,4 +189,4 @@ } } } -} +} \ No newline at end of file diff --git a/SOL003/VNFFaultManagement-API/schemas/subscriptions.schema.json b/SOL003/VNFFaultManagement-API/schemas/subscriptions.schema.json deleted file mode 100644 index 147294f3..00000000 --- a/SOL003/VNFFaultManagement-API/schemas/subscriptions.schema.json +++ /dev/null @@ -1,84 +0,0 @@ -{ - "description": "This type represents a subscription related to notifications related to the availability of the virtualised resources quotas.\n", - "type": "object", - "required": [ - "id", - "callbackUri", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "filter": { - "description": "This type represents a subscription filter related to notifications about the availability of the virtualised resources quotas. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n", - "type": "object", - "properties": { - "vimIds": { - "description": "Match VIMs that were created the quota for a consumer of the virtualised resources. This attribute shall only be supported when VNF-related Resource Management in direct mode is applicable.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "resourceProviderIds": { - "description": "Match the entities responsible for the management of the virtualised resources that were allocated by the NFVO. This attribute shall only be supported when VNF-related Resource Management in indirect mode is applicable. The identification scheme is outside the scope of the present document.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "resourceTypes": { - "description": "Match particular resource types.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "COMPUTE", - "STORAGE", - "NETWORK" - ] - } - }, - "resourceGroupIds": { - "description": "Match the \"infrastructure resource groups\" that are logical groupings of the virtualised resources assigned to a tenant within an infrastructure Domain.\n", - "type": "array", - "items": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - } - } - } - }, - "callbackUri": { - "description": "String formatted according to IETF RFC 3986.\n", - "type": "string" - }, - "_links": { - "description": "Links for this resource\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } -} \ No newline at end of file diff --git a/SOL003/VNFFaultManagementNotification-API/NotificationEndpoint.robot b/SOL003/VNFFaultManagementNotification-API/NotificationEndpoint.robot index 0c7f8c78..a8fe24e4 100644 --- a/SOL003/VNFFaultManagementNotification-API/NotificationEndpoint.robot +++ b/SOL003/VNFFaultManagementNotification-API/NotificationEndpoint.robot @@ -80,35 +80,49 @@ Test a notification end point ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: - log The GET method allows the server to test the notification endpoint - Get ${callback_endpoint} - Log Validate Status code - Integer response status 204 - Log Validation OK + Log The GET method allows the server to test the notification endpoint + &{req}= Create Mock Request Matcher GET ${callback_endpoint} + &{rsp}= Create Mock Response headers="Content-Type: application/json" status_code=204 + Create Mock Expectation ${req} ${rsp} + Sleep ${sleep_interval} + Verify Mock Expectation ${req} + Clear Requests ${callback_endpoint} PUT notification - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Put ${callback_endpoint} - Log Validate Status code - Output response - Integer response status 405 + Log PUT Method not implemented + &{req}= Create Mock Request Matcher PUT ${callback_endpoint} + &{rsp}= Create Mock Response status_code=405 + Create Mock Expectation ${req} ${rsp} + Sleep ${sleep_interval} + Log Verifying results + Verify Mock Expectation ${req} + Log Cleaning the endpoint + Clear Requests ${callback_endpoint} PATCH subscriptions - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Patch ${callback_endpoint} - Log Validate Status code - Output response - Integer response status 405 + Log PATCH Method not implemented + &{req}= Create Mock Request Matcher PATCH ${callback_endpoint} + &{rsp}= Create Mock Response status_code=405 + Create Mock Expectation ${req} ${rsp} + Sleep ${sleep_interval} + Log Verifying results + Verify Mock Expectation ${req} + Log Cleaning the endpoint + Clear Requests ${callback_endpoint} DELETE subscriptions - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Delete ${callback_endpoint} - Log Validate Status code - Output response - Integer response status 405 + Log DELETE Method not implemented + &{req}= Create Mock Request Matcher DELETE ${callback_endpoint} + &{rsp}= Create Mock Response status_code=405 + Create Mock Expectation ${req} ${rsp} + Sleep ${sleep_interval} + Log Verifying results + Verify Mock Expectation ${req} + Log Cleaning the endpoint + Clear Requests ${callback_endpoint} *** Keywords *** Create Sessions Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance Wait For Process handle=mockInstance timeout=5s on_timeout=continue - Create Mock Session ${callback_uri}:${callback_port} #The API producer is set to NFVO according to SOL003-7.3.4 + Create Mock Session ${callback_uri}:${callback_port} diff --git a/SOL003/VNFIndicator-API/Subscriptions.robot b/SOL003/VNFIndicator-API/Subscriptions.robot index fe87ab7a..d7bd5ef2 100644 --- a/SOL003/VNFIndicator-API/Subscriptions.robot +++ b/SOL003/VNFIndicator-API/Subscriptions.robot @@ -79,7 +79,7 @@ POST Subscription Log Trying to create a new subscription Set Headers {"Accept": "${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} - ${body}= Get File json/subscriptions.json + ${body}= Get File jsons/subscriptions.json Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 @@ -96,7 +96,7 @@ POST Subscription - DUPLICATION Pass Execution If ${VNFM_DUPLICATION} == 0 VNFM is not permitting duplication. Skipping the test Set Headers {"Accept": "${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} - ${body}= Get File json/subscriptions.json + ${body}= Get File jsons/subscriptions.json Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 @@ -113,7 +113,7 @@ POST Subscription - NO DUPLICATION Pass Execution If ${VNFM_DUPLICATION} == 1 VNFM is permitting duplication. Skipping the test Set Headers {"Accept": "${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} - ${body}= Get File json/subscriptions.json + ${body}= Get File jsons/subscriptions.json Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 303 diff --git a/SOL003/VNFIndicatorNotification-API/VnfIndicatorNotification.robot b/SOL003/VNFIndicatorNotification-API/VnfIndicatorNotification.robot index c38bbe86..b80583e2 100644 --- a/SOL003/VNFIndicatorNotification-API/VnfIndicatorNotification.robot +++ b/SOL003/VNFIndicatorNotification-API/VnfIndicatorNotification.robot @@ -72,7 +72,7 @@ Patch VNF Indicator Notification Delete VNF Indicator Notification - Log PATCH Method not implemented + Log DELETE Method not implemented &{req}= Create Mock Request Matcher DELETE ${callback_endpoint} &{rsp}= Create Mock Response status_code=405 Create Mock Expectation ${req} ${rsp} diff --git a/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot b/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot index aef97a9e..3be16bb2 100644 --- a/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot +++ b/SOL003/VNFLifecycleManagement-API/CancelOperationTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library DependencyLibrary Library JSONLibrary Library JSONSchemaLibrary schemas/ diff --git a/SOL003/VNFLifecycleManagement-API/CancelOperationWorkflow.robot b/SOL003/VNFLifecycleManagement-API/CancelOperationWorkflow.robot index f7347a33..21805d38 100644 --- a/SOL003/VNFLifecycleManagement-API/CancelOperationWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/CancelOperationWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections diff --git a/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot b/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot index 83378f40..c767d88b 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -15,7 +14,7 @@ Change external VNF connectivity Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeExtVnfConnectivityRequest.json + ${body}= Get File jsons/changeExtVnfConnectivityRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${body} Integer response status 202 Log Status code validated @@ -34,14 +33,14 @@ Change external VNF connectivity Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeExtVnfConnectivityRequest .json + ${body}= Get File jsons/changeExtVnfConnectivityRequest .json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${body} Log Validate Status code Integer response status 409 ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished GET Change external VNF connectivity - Method not implemented @@ -84,6 +83,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityWorkflow.robot index 17d928a1..084b3420 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections @@ -39,7 +38,7 @@ Operate a VNF Instance Initialize System Create Sessions - ${body}= Get File json/changeExtVnfConnectivityRequest.json + ${body}= Get File jsons/changeExtVnfConnectivityRequest.json ${changeVnfExtConnectivityRequest}= evaluate json.loads('''${body}''') json Precondition Checks diff --git a/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot b/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot index 41f0c4e0..6d08b6df 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -15,7 +14,8 @@ Change deployment flavour of a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeVnfFlavourRequest.json + ${body_file}= Get File jsons/changeVnfFlavourRequest.json + ${body}= evaluate json.loads('''${body_file}''') json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} Integer response status 202 Log Status code validated @@ -35,7 +35,8 @@ Change deployment flavour of a vnfInstance Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeVnfFlavourRequest.json + ${body_file}= Get File jsons/changeVnfFlavourRequest.json + ${body}= evaluate json.loads('''${body_file}''') json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} Integer response status 409 Log Status code validated @@ -55,14 +56,15 @@ Change deployment flavour of a vnfInstance Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeVnfFlavourRequest.json + ${body_file}= Get File jsons/changeVnfFlavourRequest.json + ${body}= evaluate json.loads('''${body_file}''') json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} Log Validate Status code Integer response status 409 ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished Change deployment flavour of a vnfInstance Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent @@ -75,7 +77,8 @@ Change deployment flavour of a vnfInstance Not Found Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeVnfFlavourRequest.json + ${body_file}= Get File jsons/changeVnfFlavourRequest.json + ${body}= evaluate json.loads('''${body_file}''') json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} Integer response status 404 Log Status code validated @@ -138,6 +141,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourWorkflow.robot index d1cb5dff..8be4c4ab 100644 --- a/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/ChangeVNFFlavourWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections @@ -40,7 +39,7 @@ Change VNF External Connectivity Initialize System Create Sessions - ${body}= Get File json/changeVnfFlavourRequest.json + ${body}= Get File jsons/changeVnfFlavourRequest.json ${changeVnfFlavourRequest}= evaluate json.loads('''${body}''') json ${requestedFlavour}= Get Value From Json ${changeVnfFlavourRequest} $..newFlavourId diff --git a/SOL003/VNFLifecycleManagement-API/CreateVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/CreateVNFWorkflow.robot index 82ae84e3..e9f0ebdd 100644 --- a/SOL003/VNFLifecycleManagement-API/CreateVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/CreateVNFWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections diff --git a/SOL003/VNFLifecycleManagement-API/DeleteVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/DeleteVNFWorkflow.robot index 01a0e647..cd750fec 100644 --- a/SOL003/VNFLifecycleManagement-API/DeleteVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/DeleteVNFWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections @@ -31,7 +30,6 @@ Delete VNF Instance Resource Check Postcondition VNF Instance Deleted *** Keywords *** - Initialize System Create Sessions diff --git a/SOL003/VNFLifecycleManagement-API/FailOperationTask.robot b/SOL003/VNFLifecycleManagement-API/FailOperationTask.robot index 97f8a0e1..94dbab29 100644 --- a/SOL003/VNFLifecycleManagement-API/FailOperationTask.robot +++ b/SOL003/VNFLifecycleManagement-API/FailOperationTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library DependencyLibrary Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -57,7 +56,7 @@ Post Fail operation task Conflict (parallel LCM operation) ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished Post Fail operation task Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent diff --git a/SOL003/VNFLifecycleManagement-API/FailOperationWorkflow.robot b/SOL003/VNFLifecycleManagement-API/FailOperationWorkflow.robot index d0fc1c2c..3134564f 100644 --- a/SOL003/VNFLifecycleManagement-API/FailOperationWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/FailOperationWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections @@ -32,7 +31,6 @@ Fail VNF LCM Operation *** Keywords *** - Initialize System Create Sessions diff --git a/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot b/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot index bca73ce4..c0115d04 100644 --- a/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/HealVNFTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -15,7 +14,7 @@ Heal a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/healVnFRequest.json + ${body}= Get File jsons/healVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} Integer response status 202 Log Status code validated @@ -35,7 +34,7 @@ Heal a vnfInstance Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/healVnFRequest.json + ${body}= Get File jsons/healVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} Integer response status 409 Log Status code validated @@ -55,14 +54,14 @@ Heal a vnfInstance Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/healVnFRequest.json + ${body}= Get File jsons/healVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} Log Validate Status code Integer response status 409 ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished Heal a vnfInstance Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent @@ -75,7 +74,7 @@ Heal a vnfInstance Not Found Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/healVnFRequest.json + ${body}= Get File jsons/healVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} Integer response status 404 Log Status code validated @@ -137,6 +136,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/HealVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/HealVNFWorkflow.robot index c23bec76..cfdf607d 100644 --- a/SOL003/VNFLifecycleManagement-API/HealVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/HealVNFWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections diff --git a/SOL003/VNFLifecycleManagement-API/IndividualSubscription.robot b/SOL003/VNFLifecycleManagement-API/IndividualSubscription.robot index 40eea1d1..d59a4fc0 100644 --- a/SOL003/VNFLifecycleManagement-API/IndividualSubscription.robot +++ b/SOL003/VNFLifecycleManagement-API/IndividualSubscription.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library JSONLibrary Library JSONSchemaLibrary schemas/ Documentation This resource represents an individual subscription. The client can use this resource to read and to terminate a diff --git a/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot b/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot index 5c454535..48c72009 100644 --- a/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot +++ b/SOL003/VNFLifecycleManagement-API/IndividualVNFInstance.robot @@ -3,7 +3,6 @@ Resource environment/configuration.txt # Suite setup Expect spec SOL003-VNFLifecycleManagement-API.yaml Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library DependencyLibrary Library JSONLibrary @@ -33,7 +32,6 @@ Get Information about an individual VNF Instance Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} Log Validate Status code - ${Etag}= Output response headers Etag Integer response status 200 ${contentType}= Output response headers Content-Type Should Contain ${contentType} ${CONTENT_TYPE} @@ -59,7 +57,7 @@ PATCH Individual VNFInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/patchBodyRequest.json + ${body}= Get File jsons/patchBodyRequest.json Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} Log Validate Status code ${Etag_modified}= Output response headers Etag @@ -79,7 +77,7 @@ PATCH Individual VNFInstance Precondition failed Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Set Headers {"If-Match": "${Etag}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/patchBodyRequest.json + ${body}= Get File jsons/patchBodyRequest.json Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} Log Validate Status code Integer response status 412 @@ -97,14 +95,14 @@ PATCH Individual VNFInstance Conflict Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/patchBodyRequest.json + ${body}= Get File jsons/patchBodyRequest.json Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} Log Validate Status code Integer response status 409 ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished DELETE Individual VNFInstance [Documentation] Delete VNF Identifier This method deletes an individual VNF instance resource. @@ -150,6 +148,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 202 diff --git a/SOL003/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot b/SOL003/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot index b913ec5b..55a084d8 100644 --- a/SOL003/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot +++ b/SOL003/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library JSONLibrary Library JSONSchemaLibrary schemas/ Documentation This resource represents a VNF lifecycle management operation occurrence. The client can use this resource to read diff --git a/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot b/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot index b58cb426..3859bdc9 100644 --- a/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/InstantiateVNFTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library DependencyLibrary Library OperatingSystem Library JSONLibrary @@ -17,7 +16,7 @@ Instantiate a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/instantiateVnfRequest.json + ${body}= Get File jsons/instantiateVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${body} Integer response status 202 Log Status code validated @@ -36,7 +35,7 @@ Instantiate a vnfInstance Conflict Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/instantiateVnfRequest.json + ${body}= Get File jsons/instantiateVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${body} Integer response status 409 Log Status code validated diff --git a/SOL003/VNFLifecycleManagement-API/InstantiateVNFTaskWorkflow.robot b/SOL003/VNFLifecycleManagement-API/InstantiateVNFTaskWorkflow.robot index 1fef05fa..978bdcc9 100644 --- a/SOL003/VNFLifecycleManagement-API/InstantiateVNFTaskWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/InstantiateVNFTaskWorkflow.robot @@ -41,7 +41,7 @@ Send VNF Instantiation Request Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/instantiateVnfRequest.json + ${body}= Get File jsons/instantiateVnfRequest.json ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${body} Check Operation Notification For Instantiation diff --git a/SOL003/VNFLifecycleManagement-API/ModifyVNFInformationWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ModifyVNFInformationWorkflow.robot index 5b22d8b3..1f97c4bb 100644 --- a/SOL003/VNFLifecycleManagement-API/ModifyVNFInformationWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/ModifyVNFInformationWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections @@ -37,7 +36,7 @@ Modify info of a VNF Instance Initialize System Create Sessions - ${body}= Get File json/patchBodyRequest.json + ${body}= Get File jsons/patchBodyRequest.json ${patchBodyRequest}= evaluate json.loads('''${body}''') json Precondition Checks diff --git a/SOL003/VNFLifecycleManagement-API/NotificationEndpoint.robot b/SOL003/VNFLifecycleManagement-API/NotificationEndpoint.robot index 6263041f..05e513a3 100644 --- a/SOL003/VNFLifecycleManagement-API/NotificationEndpoint.robot +++ b/SOL003/VNFLifecycleManagement-API/NotificationEndpoint.robot @@ -6,7 +6,7 @@ Resource environment/variables.txt Library MockServerLibrary Library Process Library OperatingSystem -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} spec=SOL003-VNFLifecycleManagement-API.yaml +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} *** Variables *** ${sleep_interval} 20s diff --git a/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot b/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot index 8bcec889..17f2a76a 100644 --- a/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/OperateVNFTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -15,7 +14,7 @@ Operate a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/operateVnFRequest.json + ${body}= Get File jsons/operateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} Integer response status 202 Log Status code validated @@ -35,7 +34,7 @@ Operate a vnfInstance Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/operateVnFRequest.json + ${body}= Get File jsons/operateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} Integer response status 409 Log Status code validated @@ -55,14 +54,14 @@ Operate a vnfInstance Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/operateVnFRequest.json + ${body}= Get File jsons/operateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} Log Validate Status code Integer response status 409 ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished Operate a vnfInstance Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent @@ -75,7 +74,7 @@ Operate a vnfInstance Not Found Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/operateVnFRequest.json + ${body}= Get File jsons/operateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} Integer response status 404 Log Status code validated @@ -138,6 +137,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/OperateVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/OperateVNFWorkflow.robot index 17f3fe90..b66dcca2 100644 --- a/SOL003/VNFLifecycleManagement-API/OperateVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/OperateVNFWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections @@ -36,10 +35,9 @@ Operate a VNF Instance Check Postcondition VNF OPERATE *** Keywords *** - Initialize System Create Sessions - ${body}= Get File json/operateVnFRequest.json + ${body}= Get File jsons/operateVnFRequest.json ${changeVnfOperateRequest}= evaluate json.loads('''${body}''') json ${requestedState}= Get Value From Json ${changeVnfOperateRequest} $..changeStateTo diff --git a/SOL003/VNFLifecycleManagement-API/RetryOperationTask.robot b/SOL003/VNFLifecycleManagement-API/RetryOperationTask.robot index fe36b9b7..4be7f59f 100644 --- a/SOL003/VNFLifecycleManagement-API/RetryOperationTask.robot +++ b/SOL003/VNFLifecycleManagement-API/RetryOperationTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library DependencyLibrary Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -59,7 +58,7 @@ Post Retry operation task Conflict (parallel LCM operation) ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished Post Retry operation task Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent diff --git a/SOL003/VNFLifecycleManagement-API/RetryOperationWorkflow.robot b/SOL003/VNFLifecycleManagement-API/RetryOperationWorkflow.robot index d2a68de9..4905e192 100644 --- a/SOL003/VNFLifecycleManagement-API/RetryOperationWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/RetryOperationWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections @@ -51,7 +50,6 @@ Retry VNF LCM Operation - Unsuccessful Check Postcondition VNF Retry Unsuccessful *** Keywords *** - Initialize System Create Sessions diff --git a/SOL003/VNFLifecycleManagement-API/RollBackOperationWorkflow.robot b/SOL003/VNFLifecycleManagement-API/RollBackOperationWorkflow.robot index 12724068..d6652173 100644 --- a/SOL003/VNFLifecycleManagement-API/RollBackOperationWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/RollBackOperationWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections diff --git a/SOL003/VNFLifecycleManagement-API/RollbackOperationTask.robot b/SOL003/VNFLifecycleManagement-API/RollbackOperationTask.robot index da7de32f..2083c792 100644 --- a/SOL003/VNFLifecycleManagement-API/RollbackOperationTask.robot +++ b/SOL003/VNFLifecycleManagement-API/RollbackOperationTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library DependencyLibrary Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -58,7 +57,7 @@ Post Rollback operation task Conflict (parallel LCM operation) ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished Post Rollback operation task Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent diff --git a/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot b/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot index 32a9c49c..d7dd5e74 100644 --- a/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ScaleVNFTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -15,7 +14,7 @@ Scale a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 Log Status code validated @@ -34,7 +33,7 @@ Scale a vnfInstance Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 409 Log Status code validated @@ -53,14 +52,14 @@ Scale a vnfInstance Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 409 Log Status code validated ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished Scale a vnfInstance Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent @@ -73,7 +72,7 @@ Scale a vnfInstance Not Found Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 404 Log Status code validated @@ -135,6 +134,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot b/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot index 8ecce83d..eb1231d6 100644 --- a/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot +++ b/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -15,7 +14,7 @@ Scale a vnfInstance to level Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 202 Log Status code validated @@ -34,7 +33,7 @@ Scale a vnfInstance to level Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 409 Log Status code validated @@ -52,14 +51,14 @@ Scale a vnfInstance to level Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Log Validate Status code Integer response status 409 ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished Scale a vnfInstance Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent @@ -72,7 +71,7 @@ Scale a vnfInstance Not Found Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} Integer response status 404 Log Status code validated @@ -139,6 +138,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelWorkflow.robot index 876691df..6c168d34 100644 --- a/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/ScaleVNFToLevelWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections @@ -40,7 +39,7 @@ VNF Instance Scale To Level Initialize System Create Sessions - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json ${scaleVnfToLevelRequest}= evaluate json.loads('''${body}''') json ${instantiationLevelId}= Get Value From Json ${scaleVnfToLevelRequest} $..instantiationLevelId #How to use this info to get the instantiation scale level? ${scaleInfo}= Get Value From Json ${scaleVnfToLevelRequest} $..scaleInfo diff --git a/SOL003/VNFLifecycleManagement-API/ScaleVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/ScaleVNFWorkflow.robot index 538c00b4..7344f7f8 100644 --- a/SOL003/VNFLifecycleManagement-API/ScaleVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/ScaleVNFWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections diff --git a/SOL003/VNFLifecycleManagement-API/SubscriptionKeywords.robot b/SOL003/VNFLifecycleManagement-API/SubscriptionKeywords.robot index 2d2f5ea5..4658f0cd 100644 --- a/SOL003/VNFLifecycleManagement-API/SubscriptionKeywords.robot +++ b/SOL003/VNFLifecycleManagement-API/SubscriptionKeywords.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmMntOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} spec=SOL003-VNFLifecycleManagement-API.yaml +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} Library OperatingSystem Library BuiltIn Library Process diff --git a/SOL003/VNFLifecycleManagement-API/Subscriptions.robot b/SOL003/VNFLifecycleManagement-API/Subscriptions.robot index a5c41a70..ca7fd6af 100644 --- a/SOL003/VNFLifecycleManagement-API/Subscriptions.robot +++ b/SOL003/VNFLifecycleManagement-API/Subscriptions.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -13,7 +12,7 @@ Create a new subscription Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/lccbSubscriptionRequest.json + ${body}= Get File jsons/lccbSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 Log Status code validated @@ -31,7 +30,7 @@ Create a new Subscription - DUPLICATION Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/lccbSubscriptionRequest.json + ${body}= Get File jsons/lccbSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 Log Status code validated @@ -47,7 +46,7 @@ Create a new Subscription - NO-DUPLICATION Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/lccbSubscriptionRequest.json + ${body}= Get File jsons/lccbSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 303 Log Status code validated diff --git a/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot b/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot index 45aedcef..be6be400 100644 --- a/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot +++ b/SOL003/VNFLifecycleManagement-API/TerminateVNFTask.robot @@ -2,7 +2,6 @@ Resource environment/configuration.txt Resource environment/variables.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -15,7 +14,7 @@ Terminate a vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/terminateVnFRequest.json + ${body}= Get File jsons/terminateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} Integer response status 202 Log Status code validated @@ -35,7 +34,7 @@ Terminate a vnfInstance Conflict (Not-Instantiated) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/terminateVnFRequest.json + ${body}= Get File jsons/terminateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} Integer response status 409 Log Status code validated @@ -55,14 +54,14 @@ Terminate a vnfInstance Conflict (parallel LCM operation) Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/terminateVnFRequest.json + ${body}= Get File jsons/terminateVnFRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} Log Validate Status code Integer response status 409 ${problemDetails}= Output response body Validate Json ProblemDetails.schema.json ${problemDetails} Log Validation OK - [Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished + #[Teardown] #We cannot know if the "scale" operation is finished easily because the 202 indicates only whether the operation has been accepted, not whether the operation has been finished GET Terminate VNFInstance - Method not implemented log Trying to perform a GET. This method should not be implemented @@ -118,6 +117,6 @@ Launch another LCM operation Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfRequest.json + ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} Integer response status 202 \ No newline at end of file diff --git a/SOL003/VNFLifecycleManagement-API/TerminatelVNFWorkflow.robot b/SOL003/VNFLifecycleManagement-API/TerminatelVNFWorkflow.robot index a069cd0f..02b8ce42 100644 --- a/SOL003/VNFLifecycleManagement-API/TerminatelVNFWorkflow.robot +++ b/SOL003/VNFLifecycleManagement-API/TerminatelVNFWorkflow.robot @@ -5,7 +5,6 @@ Resource environment/scaleVariables.txt Resource VnfLcmMntOperationKeywords.robot Resource SubscriptionKeywords.robot Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml Library OperatingSystem Library BuiltIn Library Collections diff --git a/SOL003/VNFLifecycleManagement-API/VNFInstances.robot b/SOL003/VNFLifecycleManagement-API/VNFInstances.robot index f7525872..cb6d825c 100644 --- a/SOL003/VNFLifecycleManagement-API/VNFInstances.robot +++ b/SOL003/VNFLifecycleManagement-API/VNFInstances.robot @@ -23,7 +23,7 @@ Create a new vnfInstance Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} ${body}= Get File jsons/createVnfRequest.json Post ${apiRoot}${apiName}/${apiVersion}/vnf_instances ${body} - Integer response status 200 + Integer response status 201 Log Status code validated ${headers}= Output response headers # Should Contain ${headers} Location diff --git a/SOL003/VNFLifecycleManagement-API/VnfInstancesWithChecks.robot b/SOL003/VNFLifecycleManagement-API/VnfInstancesWithChecks.robot index 4d44695d..9f4a084e 100644 --- a/SOL003/VNFLifecycleManagement-API/VnfInstancesWithChecks.robot +++ b/SOL003/VNFLifecycleManagement-API/VnfInstancesWithChecks.robot @@ -32,7 +32,7 @@ Instantiate VNF Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/createVnfRequest.json + ${body}= Get File jsons/createVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${body} [Return] response diff --git a/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot b/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot index bd01ef91..dc544d35 100644 --- a/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot +++ b/SOL003/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot @@ -2,7 +2,7 @@ Resource environment/configuration.txt Resource environment/variables.txt Resource environment/scaleVariables.txt -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} spec=SOL003-VNFLifecycleManagement-API.yaml +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} Library OperatingSystem Library BuiltIn Library JSONLibrary @@ -90,7 +90,7 @@ Send VNF Scale Out Request Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfOutRequest.json + ${body}= Get File jsons/scaleVnfOutRequest.json ${json}= evaluate json.loads('''${body}''') json ${aspectId}= Set Variable ${json.aspectId} ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} @@ -101,7 +101,7 @@ Send VNF Scale To Level Request Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/scaleVnfToLevelRequest.json + ${body}= Get File jsons/scaleVnfToLevelRequest.json ${json}= evaluate json.loads('''${body}''') json ${aspectId}= Set Variable ${json.aspectId} ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} @@ -111,7 +111,7 @@ Send VNF Instance Resource Create Request Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/createVnfRequest.json + ${body}= Get File jsons/createVnfRequest.json ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${body} Send VNF Instance Resource Delete Request @@ -124,7 +124,7 @@ Send Change VNF Flavour Request Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeVnfFlavourRequest.json + ${body}= Get File jsons/changeVnfFlavourRequest.json ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} Send Change VNF Operational State Request @@ -132,7 +132,7 @@ Send Change VNF Operational State Request Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/operateVnFRequest.json + ${body}= Get File jsons/operateVnFRequest.json ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} Send Heal VNF Request @@ -140,7 +140,7 @@ Send Heal VNF Request Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/healVnFRequest.json + ${body}= Get File jsons/healVnFRequest.json ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} Send Change Ext Connectivity Request @@ -148,7 +148,7 @@ Send Change Ext Connectivity Request Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/changeExtVnfConnectivityRequest.json + ${body}= Get File jsons/changeExtVnfConnectivityRequest.json ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${body} Send Terminate VNF Request @@ -156,7 +156,7 @@ Send Terminate VNF Request Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/terminateVnFRequest.json + ${body}= Get File jsons/terminateVnFRequest.json ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} Send Info Modification Request @@ -164,7 +164,7 @@ Send Info Modification Request Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/patchBodyRequest.json + ${body}= Get File jsons/patchBodyRequest.json ${response}= Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} Send Retry Operation Request @@ -194,7 +194,7 @@ Create a new Grant - Synchronous mode Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/grantRequest.json + ${body}= Get File jsons/grantRequest.json ${json_body}= evaluate json.loads('''${body}''') json Set To Dictionary ${json_body} vnfInstanceId=${vnfInstanceId} vnfLcmOpOccId=${vnfLcmOpOccId} operation=${operation} ${body}= evaluate json.dumps(${json_body}) json @@ -216,7 +216,7 @@ Create a new Grant - Asynchronous mode Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/grantRequest.json + ${body}= Get File jsons/grantRequest.json ${json_body}= evaluate json.loads('''${body}''') json Set To Dictionary ${json_body} vnfInstanceId=${vnfInstanceId} vnfLcmOpOccId=${vnfLcmOpOccId} operation=${operation} ${body}= evaluate json.dumps(${json_body}) json diff --git a/SOL003/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot b/SOL003/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot index 2232d03e..4c8207e5 100644 --- a/SOL003/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot +++ b/SOL003/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot @@ -1,8 +1,7 @@ *** Settings *** Resource environment/configuration.txt Resource environment/variables.txt -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -... spec=SOL003-VNFLifecycleManagement-API.yaml +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} Library JSONLibrary Library JSONSchemaLibrary schemas/ Documentation This resource represents VNF lifecycle management operation occurrences. The client can use this resource to query diff --git a/SOL003/VNFLifecycleOperationGranting-API/Grants.robot b/SOL003/VNFLifecycleOperationGranting-API/Grants.robot index 3abe49aa..10685baf 100644 --- a/SOL003/VNFLifecycleOperationGranting-API/Grants.robot +++ b/SOL003/VNFLifecycleOperationGranting-API/Grants.robot @@ -1,7 +1,6 @@ *** Settings *** Resource environment/variables.txt Library REST ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT} -... spec=SOL003-VNFLifecycleOperationGranting-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -61,7 +60,7 @@ Request a new Grant - Forbidden Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/grantRejectedRequest.json + ${body}= Get File jsons/grantRejectedRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/grants ${body} Integer response status 403 Log Status code validated @@ -108,7 +107,7 @@ Send Request Grant Request Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/grantRequest.json + ${body}= Get File jsons/grantRequest.json ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/grants ${body} Check HTTP Response Status Code Is diff --git a/SOL003/VNFLifecycleOperationGranting-API/IndividualGrant.robot b/SOL003/VNFLifecycleOperationGranting-API/IndividualGrant.robot index 6df60dcc..ed8e573e 100644 --- a/SOL003/VNFLifecycleOperationGranting-API/IndividualGrant.robot +++ b/SOL003/VNFLifecycleOperationGranting-API/IndividualGrant.robot @@ -4,7 +4,6 @@ Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ Library REST ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT} -... spec=SOL003-VNFLifecycleOperationGranting-API.yaml 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. diff --git a/SOL003/VNFPackageManagement-API/IndividualSubscription.robot b/SOL003/VNFPackageManagement-API/IndividualSubscription.robot index 658c840f..449081a1 100644 --- a/SOL003/VNFPackageManagement-API/IndividualSubscription.robot +++ b/SOL003/VNFPackageManagement-API/IndividualSubscription.robot @@ -41,13 +41,13 @@ DELETE Subscription DELETE ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} Integer response status 204 Log Received 204 No Content as expected - Comment Log Trying to get the deleted element - Comment Create HTTP Context ${NFVO_HOST}:${NFVO_PORT} ${NFVO_SCHEMA} - Comment Set Request Header Accept ${ACCEPT_JSON} - Comment Run Keyword If ${AUTH_USAGE} == 1 Set Request Header Authorization ${AUTHORIZATION} - Comment GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} - Comment Response Status Code Should Equal 404 - Comment Log The subscriptionId is not present in database + #Log Trying to get the deleted element + #Create HTTP Context ${NFVO_HOST}:${NFVO_PORT} ${NFVO_SCHEMA} + #Set Request Header Accept ${ACCEPT_JSON} + #Run Keyword If ${AUTH_USAGE} == 1 Set Request Header Authorization ${AUTHORIZATION} + #GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} + #Response Status Code Should Equal 404 + #Log The subscriptionId is not present in database DELETE Subscription - Negative (Not Found) Log Trying to perform a DELETE on a subscriptionId which doesn't exist diff --git a/SOL003/VNFPackageManagement-API/Subscriptions.robot b/SOL003/VNFPackageManagement-API/Subscriptions.robot index 7c64cc75..1d9b758e 100644 --- a/SOL003/VNFPackageManagement-API/Subscriptions.robot +++ b/SOL003/VNFPackageManagement-API/Subscriptions.robot @@ -65,7 +65,7 @@ POST Subscription Log Trying to create a new subscription Set Headers {"Accept": "${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} - ${body}= Get File json/subscriptions.json + ${body}= Get File jsons/subscriptions.json Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 @@ -82,7 +82,7 @@ POST Subscription - DUPLICATION Pass Execution If ${NFVO_DUPLICATION} == 0 NFVO is not permitting duplication. Skipping the test Set Headers {"Accept": "${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} - ${body}= Get File json/subscriptions.json + ${body}= Get File jsons/subscriptions.json Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 @@ -99,7 +99,7 @@ POST Subscription - NO DUPLICATION Pass Execution If ${NFVO_DUPLICATION} == 1 NFVO is permitting duplication. Skipping the test Set Headers {"Accept": "${ACCEPT_JSON}"} Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"} - ${body}= Get File json/subscriptions.json + ${body}= Get File jsons/subscriptions.json Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} POST ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 303 diff --git a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/IndividualSubscription.robot b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/IndividualSubscription.robot index 321ee3b9..63a19e9b 100644 --- a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/IndividualSubscription.robot +++ b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/IndividualSubscription.robot @@ -4,7 +4,6 @@ Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ Library REST ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT} -... spec=SOL003-VirtualisedResourcesQuotaAvailableNotification-API.yaml Documentation This resource represents an individual subscription. The client can use this resource to read and to terminate a ... subscription to notifications related to the availability of the virtualised resources quotas. Suite Setup Check resource existance diff --git a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/NotificationEndpoint.robot b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/NotificationEndpoint.robot index df45001b..87d69971 100644 --- a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/NotificationEndpoint.robot +++ b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/NotificationEndpoint.robot @@ -1,5 +1,7 @@ *** Settings *** Resource environment/variables.txt +Suite Setup Create Sessions +Suite Teardown Terminate All Processes kill=true Library MockServerLibrary Library Process Library OperatingSystem @@ -32,35 +34,49 @@ Deliver a notification - Vr Quota Availibility Test a notification end point log The GET method allows the server to test the notification endpoint - Get ${callback_endpoint} - Log Validate Status code - Output response - Integer response status 204 + &{req}= Create Mock Request Matcher GET ${callback_endpoint} + &{rsp}= Create Mock Response headers="Content-Type: application/json" status_code=204 + Create Mock Expectation ${req} ${rsp} + Sleep ${sleep_interval} + Verify Mock Expectation ${req} + Clear Requests ${callback_endpoint} PUT notification - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Put ${callback_endpoint} - Log Validate Status code - Output response - Integer response status 405 + Log PUT Method not implemented + &{req}= Create Mock Request Matcher PUT ${callback_endpoint} + &{rsp}= Create Mock Response status_code=405 + Create Mock Expectation ${req} ${rsp} + Sleep ${sleep_interval} + Log Verifying results + Verify Mock Expectation ${req} + Log Cleaning the endpoint + Clear Requests ${callback_endpoint} PATCH subscriptions - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Patch ${callback_endpoint} - Log Validate Status code - Output response - Integer response status 405 + Log PATCH Method not implemented + &{req}= Create Mock Request Matcher PATCH ${callback_endpoint} + &{rsp}= Create Mock Response status_code=405 + Create Mock Expectation ${req} ${rsp} + Sleep ${sleep_interval} + Log Verifying results + Verify Mock Expectation ${req} + Log Cleaning the endpoint + Clear Requests ${callback_endpoint} DELETE subscriptions - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Delete ${callback_endpoint} - Log Validate Status code - Output response - Integer response status 405 + Log DELETE Method not implemented + &{req}= Create Mock Request Matcher DELETE ${callback_endpoint} + &{rsp}= Create Mock Response status_code=405 + Create Mock Expectation ${req} ${rsp} + Sleep ${sleep_interval} + Log Verifying results + Verify Mock Expectation ${req} + Log Cleaning the endpoint + Clear Requests ${callback_endpoint} *** Keywords *** Create Sessions Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance Wait For Process handle=mockInstance timeout=5s on_timeout=continue - Create Mock Session ${callback_uri}:${callback_port} #The API producer is set to NFVO according to SOL003-5.3.9 + Create Mock Session ${callback_uri}:${callback_port} diff --git a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Subscriptions.robot b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Subscriptions.robot index ce729464..606de937 100644 --- a/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Subscriptions.robot +++ b/SOL003/VirtualisedResourcesQuotaAvailableNotification-API/Subscriptions.robot @@ -1,7 +1,6 @@ *** Settings *** Resource environment/variables.txt Library REST ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT} -... spec=SOL003-VirtualisedResourcesQuotaAvailableNotification-API.yaml Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -21,7 +20,7 @@ Create a new subscription Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File json/vrQuotaAvailSubscriptionRequest.json + ${body}= Get File jsons/vrQuotaAvailSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 Log Status code validated @@ -47,7 +46,7 @@ Create a new Subscription - DUPLICATION Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/vrQuotaAvailSubscriptionRequest.json + ${body}= Get File jsons/vrQuotaAvailSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 201 Log Status code validated @@ -71,7 +70,7 @@ Create a new Subscription - NO-DUPLICATION Set Headers {"Accept": "${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File json/vrQuotaAvailSubscriptionRequest.json + ${body}= Get File jsons/vrQuotaAvailSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} Integer response status 303 Log Status code validated -- GitLab