Verify the response attributes of 'aggregate-add-remove-host' API
This patch verifies the response attributes of 'aggregate-add-remove-host'.
The response attributes of v2 and v3 are the same:
{
"aggregate": {
"availability_zone": "nova",
"created_at": "2012-12-04T12:04:24.399784",
"deleted": false,
"deleted_at": null,
"hosts": [],
"id": 1,
"metadata": {
"availability_zone": "nova"
},
"name": "name",
"updated_at": null
}
}
The status_code is different:
v2 -> 200, v3 -> 202
Partially implements blueprint nova-api-attribute-test
Change-Id: I6f6bdc458f15f8af812fee6926e5133df09f9fa1
This commit is contained in:
@@ -82,3 +82,5 @@ del common_create_aggregate['response_body']['properties']['aggregate'][
|
||||
common_create_aggregate['response_body']['properties']['aggregate'][
|
||||
'required'] = ['availability_zone', 'created_at', 'deleted', 'deleted_at',
|
||||
'id', 'name', 'updated_at']
|
||||
|
||||
aggregate_add_remove_host = get_aggregate
|
||||
|
||||
@@ -23,3 +23,7 @@ delete_aggregate = {
|
||||
create_aggregate = copy.deepcopy(aggregates.common_create_aggregate)
|
||||
# V3 API's response status_code is 201
|
||||
create_aggregate['status_code'] = [201]
|
||||
|
||||
aggregate_add_remove_host = copy.deepcopy(aggregates.aggregate_add_remove_host)
|
||||
# V3 API's response status_code is 202
|
||||
aggregate_add_remove_host['status_code'] = [202]
|
||||
|
||||
@@ -88,6 +88,7 @@ class AggregatesClientJSON(rest_client.RestClient):
|
||||
resp, body = self.post('os-aggregates/%s/action' % aggregate_id,
|
||||
post_body)
|
||||
body = json.loads(body)
|
||||
self.validate_response(schema.aggregate_add_remove_host, resp, body)
|
||||
return resp, body['aggregate']
|
||||
|
||||
def remove_host(self, aggregate_id, host):
|
||||
@@ -99,6 +100,7 @@ class AggregatesClientJSON(rest_client.RestClient):
|
||||
resp, body = self.post('os-aggregates/%s/action' % aggregate_id,
|
||||
post_body)
|
||||
body = json.loads(body)
|
||||
self.validate_response(schema.aggregate_add_remove_host, resp, body)
|
||||
return resp, body['aggregate']
|
||||
|
||||
def set_metadata(self, aggregate_id, meta):
|
||||
|
||||
@@ -88,6 +88,7 @@ class AggregatesV3ClientJSON(rest_client.RestClient):
|
||||
resp, body = self.post('os-aggregates/%s/action' % aggregate_id,
|
||||
post_body)
|
||||
body = json.loads(body)
|
||||
self.validate_response(v3_schema.aggregate_add_remove_host, resp, body)
|
||||
return resp, body['aggregate']
|
||||
|
||||
def remove_host(self, aggregate_id, host):
|
||||
@@ -99,6 +100,7 @@ class AggregatesV3ClientJSON(rest_client.RestClient):
|
||||
resp, body = self.post('os-aggregates/%s/action' % aggregate_id,
|
||||
post_body)
|
||||
body = json.loads(body)
|
||||
self.validate_response(v3_schema.aggregate_add_remove_host, resp, body)
|
||||
return resp, body['aggregate']
|
||||
|
||||
def set_metadata(self, aggregate_id, meta):
|
||||
|
||||
Reference in New Issue
Block a user