blob: e37c9d9c3614040a271eb50ab6492a680cdb4d6c [file] [log] [blame]
Leo Toyodaa5278912013-04-16 15:40:12 +09001# Copyright 2013 NEC Corporation.
2# All Rights Reserved.
3#
4# Licensed under the Apache License, Version 2.0 (the "License"); you may
5# not use this file except in compliance with the License. You may obtain
6# a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13# License for the specific language governing permissions and limitations
14# under the License.
15
16import json
17
Marc Koderer6fbd74f2014-08-04 09:38:19 +020018from tempest.api_schema.response.compute.v2 import availability_zone as schema
Ken'ichi Ohmichi4771cbc2015-01-19 23:45:23 +000019from tempest.common import service_client
Leo Toyodaa5278912013-04-16 15:40:12 +090020
21
Ken'ichi Ohmichi4771cbc2015-01-19 23:45:23 +000022class AvailabilityZoneClientJSON(service_client.ServiceClient):
Leo Toyodaa5278912013-04-16 15:40:12 +090023
24 def get_availability_zone_list(self):
25 resp, body = self.get('os-availability-zone')
26 body = json.loads(body)
Ken'ichi Ohmichi067027c2014-03-13 14:45:21 +090027 self.validate_response(schema.get_availability_zone_list, resp, body)
Leo Toyodaa5278912013-04-16 15:40:12 +090028 return resp, body['availabilityZoneInfo']
29
30 def get_availability_zone_list_detail(self):
31 resp, body = self.get('os-availability-zone/detail')
32 body = json.loads(body)
Ken'ichi Ohmichi067027c2014-03-13 14:45:21 +090033 self.validate_response(schema.get_availability_zone_list_detail, resp,
34 body)
Leo Toyodaa5278912013-04-16 15:40:12 +090035 return resp, body['availabilityZoneInfo']