Merge "port test_availability_zone into nova v3 part2"
This commit is contained in:
commit
879cc996d5
@ -233,6 +233,7 @@ class BaseV3ComputeTest(BaseComputeTest):
|
||||
cls.images_client = cls.os.image_client
|
||||
cls.services_client = cls.os.services_v3_client
|
||||
cls.extensions_client = cls.os.extensions_v3_client
|
||||
cls.availability_zone_client = cls.os.availability_zone_v3_client
|
||||
|
||||
@classmethod
|
||||
def create_image_from_server(cls, server_id, **kwargs):
|
||||
@ -293,3 +294,5 @@ class BaseV3ComputeAdminTest(BaseV3ComputeTest):
|
||||
cls.os_adm = os_adm
|
||||
cls.severs_admin_client = cls.os_adm.servers_v3_client
|
||||
cls.services_admin_client = cls.os_adm.services_v3_client
|
||||
cls.availability_zone_admin_client = \
|
||||
cls.os_adm.availability_zone_v3_client
|
||||
|
@ -20,7 +20,7 @@ from tempest import exceptions
|
||||
from tempest.test import attr
|
||||
|
||||
|
||||
class AvailabilityZoneAdminTestJSON(base.BaseV2ComputeAdminTest):
|
||||
class AvailabilityZoneAdminV3TestJSON(base.BaseV3ComputeAdminTest):
|
||||
|
||||
"""
|
||||
Tests Availability Zone API List that require admin privileges
|
||||
@ -30,8 +30,8 @@ class AvailabilityZoneAdminTestJSON(base.BaseV2ComputeAdminTest):
|
||||
|
||||
@classmethod
|
||||
def setUpClass(cls):
|
||||
super(AvailabilityZoneAdminTestJSON, cls).setUpClass()
|
||||
cls.client = cls.os_adm.availability_zone_client
|
||||
super(AvailabilityZoneAdminV3TestJSON, cls).setUpClass()
|
||||
cls.client = cls.availability_zone_admin_client
|
||||
cls.non_adm_client = cls.availability_zone_client
|
||||
|
||||
@attr(type='gate')
|
||||
@ -66,5 +66,5 @@ class AvailabilityZoneAdminTestJSON(base.BaseV2ComputeAdminTest):
|
||||
self.non_adm_client.get_availability_zone_list_detail)
|
||||
|
||||
|
||||
class AvailabilityZoneAdminTestXML(AvailabilityZoneAdminTestJSON):
|
||||
class AvailabilityZoneAdminV3TestXML(AvailabilityZoneAdminV3TestJSON):
|
||||
_interface = 'xml'
|
||||
|
@ -50,12 +50,16 @@ from tempest.services.compute.json.tenant_usages_client import \
|
||||
TenantUsagesClientJSON
|
||||
from tempest.services.compute.json.volumes_extensions_client import \
|
||||
VolumesExtensionsClientJSON
|
||||
from tempest.services.compute.v3.json.availability_zone_client import \
|
||||
AvailabilityZoneV3ClientJSON
|
||||
from tempest.services.compute.v3.json.extensions_client import \
|
||||
ExtensionsV3ClientJSON
|
||||
from tempest.services.compute.v3.json.servers_client import \
|
||||
ServersV3ClientJSON
|
||||
from tempest.services.compute.v3.json.services_client import \
|
||||
ServicesV3ClientJSON
|
||||
from tempest.services.compute.v3.xml.availability_zone_client import \
|
||||
AvailabilityZoneV3ClientXML
|
||||
from tempest.services.compute.v3.xml.extensions_client import \
|
||||
ExtensionsV3ClientXML
|
||||
from tempest.services.compute.v3.xml.servers_client import ServersV3ClientXML
|
||||
@ -209,6 +213,8 @@ class Manager(object):
|
||||
self.interfaces_client = InterfacesClientXML(*client_args)
|
||||
self.endpoints_client = EndPointClientXML(*client_args)
|
||||
self.fixed_ips_client = FixedIPsClientXML(*client_args)
|
||||
self.availability_zone_v3_client = AvailabilityZoneV3ClientXML(
|
||||
*client_args)
|
||||
self.availability_zone_client = AvailabilityZoneClientXML(
|
||||
*client_args)
|
||||
self.services_v3_client = ServicesV3ClientXML(*client_args)
|
||||
@ -253,6 +259,8 @@ class Manager(object):
|
||||
self.interfaces_client = InterfacesClientJSON(*client_args)
|
||||
self.endpoints_client = EndPointClientJSON(*client_args)
|
||||
self.fixed_ips_client = FixedIPsClientJSON(*client_args)
|
||||
self.availability_zone_v3_client = AvailabilityZoneV3ClientJSON(
|
||||
*client_args)
|
||||
self.availability_zone_client = AvailabilityZoneClientJSON(
|
||||
*client_args)
|
||||
self.services_v3_client = ServicesV3ClientJSON(*client_args)
|
||||
|
@ -20,20 +20,20 @@ import json
|
||||
from tempest.common.rest_client import RestClient
|
||||
|
||||
|
||||
class AvailabilityZoneClientJSON(RestClient):
|
||||
class AvailabilityZoneV3ClientJSON(RestClient):
|
||||
|
||||
def __init__(self, config, username, password, auth_url, tenant_name=None):
|
||||
super(AvailabilityZoneClientJSON, self).__init__(config, username,
|
||||
password, auth_url,
|
||||
tenant_name)
|
||||
self.service = self.config.compute.catalog_type
|
||||
super(AvailabilityZoneV3ClientJSON, self).__init__(config, username,
|
||||
password, auth_url,
|
||||
tenant_name)
|
||||
self.service = self.config.compute.catalog_v3_type
|
||||
|
||||
def get_availability_zone_list(self):
|
||||
resp, body = self.get('os-availability-zone')
|
||||
body = json.loads(body)
|
||||
return resp, body['availabilityZoneInfo']
|
||||
return resp, body['availability_zone_info']
|
||||
|
||||
def get_availability_zone_list_detail(self):
|
||||
resp, body = self.get('os-availability-zone/detail')
|
||||
body = json.loads(body)
|
||||
return resp, body['availabilityZoneInfo']
|
||||
return resp, body['availability_zone_info']
|
||||
|
@ -21,13 +21,13 @@ from tempest.common.rest_client import RestClientXML
|
||||
from tempest.services.compute.xml.common import xml_to_json
|
||||
|
||||
|
||||
class AvailabilityZoneClientXML(RestClientXML):
|
||||
class AvailabilityZoneV3ClientXML(RestClientXML):
|
||||
|
||||
def __init__(self, config, username, password, auth_url, tenant_name=None):
|
||||
super(AvailabilityZoneClientXML, self).__init__(config, username,
|
||||
password, auth_url,
|
||||
tenant_name)
|
||||
self.service = self.config.compute.catalog_type
|
||||
super(AvailabilityZoneV3ClientXML, self).__init__(config, username,
|
||||
password, auth_url,
|
||||
tenant_name)
|
||||
self.service = self.config.compute.catalog_v3_type
|
||||
|
||||
def _parse_array(self, node):
|
||||
return [xml_to_json(x) for x in node]
|
||||
|
Loading…
Reference in New Issue
Block a user