Return complete response from compute/aggregates_client
Currently compute aggregates_client returns Response by removing
top key from Response.
For example- return service_client.ResponseBody(resp, body['aggregate'])
As service clients are in direction to move to Tempest-lib, all
service clients should return Response without any truncation.
One good example is Resource pagination links which are lost with current
way of return value. Resource pagination links are present in parallel
(not inside) to top key of Response.
This patch makes compute aggregates_client to return complete Response body.
Change-Id: Iac7e2e59b0a5b498fb5be5c7696ebe7bb15be8fe
Implements: blueprint method-return-value-and-move-service-clients-to-lib
diff --git a/tempest/services/compute/json/aggregates_client.py b/tempest/services/compute/json/aggregates_client.py
index 4114b8b..c9895db 100644
--- a/tempest/services/compute/json/aggregates_client.py
+++ b/tempest/services/compute/json/aggregates_client.py
@@ -27,14 +27,14 @@
resp, body = self.get("os-aggregates")
body = json.loads(body)
self.validate_response(schema.list_aggregates, resp, body)
- return service_client.ResponseBodyList(resp, body['aggregates'])
+ return service_client.ResponseBody(resp, body)
def show_aggregate(self, aggregate_id):
"""Get details of the given aggregate."""
resp, body = self.get("os-aggregates/%s" % aggregate_id)
body = json.loads(body)
self.validate_response(schema.get_aggregate, resp, body)
- return service_client.ResponseBody(resp, body['aggregate'])
+ return service_client.ResponseBody(resp, body)
def create_aggregate(self, **kwargs):
"""Creates a new aggregate."""
@@ -43,7 +43,7 @@
body = json.loads(body)
self.validate_response(schema.create_aggregate, resp, body)
- return service_client.ResponseBody(resp, body['aggregate'])
+ return service_client.ResponseBody(resp, body)
def update_aggregate(self, aggregate_id, **kwargs):
"""Update a aggregate."""
@@ -52,7 +52,7 @@
body = json.loads(body)
self.validate_response(schema.update_aggregate, resp, body)
- return service_client.ResponseBody(resp, body['aggregate'])
+ return service_client.ResponseBody(resp, body)
def delete_aggregate(self, aggregate_id):
"""Deletes the given aggregate."""
@@ -79,7 +79,7 @@
post_body)
body = json.loads(body)
self.validate_response(schema.aggregate_add_remove_host, resp, body)
- return service_client.ResponseBody(resp, body['aggregate'])
+ return service_client.ResponseBody(resp, body)
def remove_host(self, aggregate_id, **kwargs):
"""Removes a host from the given aggregate."""
@@ -88,7 +88,7 @@
post_body)
body = json.loads(body)
self.validate_response(schema.aggregate_add_remove_host, resp, body)
- return service_client.ResponseBody(resp, body['aggregate'])
+ return service_client.ResponseBody(resp, body)
def set_metadata(self, aggregate_id, **kwargs):
"""Replaces the aggregate's existing metadata with new metadata."""
@@ -97,4 +97,4 @@
post_body)
body = json.loads(body)
self.validate_response(schema.aggregate_set_metadata, resp, body)
- return service_client.ResponseBody(resp, body['aggregate'])
+ return service_client.ResponseBody(resp, body)