Update service client access in tempest tests
All the Designate service clients are registered via the plugin interface[1], that way Tempest register and create the lazy initialization of registered clients so that they can be access from there in consistent way. But designate-tempest-client create a separate instance of those and access instead of accessing the registered service client in Tempest. This commit makes all the service clients access from Tempest registry and remove the separate objects. [1] https://github.com/openstack/designate-tempest-plugin/blob/master/designate_tempest_plugin/plugin.py#L78 Change-Id: I4b65ca16cd53ff4c6bece642764a4abe2a469c01
This commit is contained in:
parent
dcfa7c0372
commit
df9fda1c88
|
@ -15,41 +15,28 @@ from tempest import clients
|
|||
from tempest import config
|
||||
from tempest.lib import auth
|
||||
|
||||
from designate_tempest_plugin.services.dns.v2.json.zones_client import \
|
||||
ZonesClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.zone_imports_client import \
|
||||
ZoneImportsClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.blacklists_client import \
|
||||
BlacklistsClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.quotas_client import \
|
||||
QuotasClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.zone_exports_client import \
|
||||
ZoneExportsClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.recordset_client import \
|
||||
RecordsetClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.pool_client import \
|
||||
PoolClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.recordset_client import \
|
||||
RecordsetClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.tld_client import \
|
||||
TldClient
|
||||
from designate_tempest_plugin.services.dns.admin.json.quotas_client import \
|
||||
QuotasClient as AdminQuotaClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.zones_client import \
|
||||
ZonesClient
|
||||
# TODO(johnsom) remove once neutron-tempest-plugin test_dns_integration
|
||||
# has been updated
|
||||
# https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/800291
|
||||
from designate_tempest_plugin.services.dns.query.query_client import \
|
||||
QueryClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.transfer_request_client \
|
||||
import TransferRequestClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.transfer_accepts_client \
|
||||
import TransferAcceptClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.tsigkey_client \
|
||||
import TsigkeyClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.service_client \
|
||||
import SevriceClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.designate_limit_client \
|
||||
import DesignateLimitClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.ptr_client import PtrClient
|
||||
|
||||
CONF = config.CONF
|
||||
|
||||
|
||||
# TODO(johnsom) remove once neutron-tempest-plugin test_dns_integration
|
||||
# has been updated
|
||||
# https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/800291
|
||||
class ManagerV2(clients.Manager):
|
||||
|
||||
def __init__(self, credentials=None):
|
||||
|
@ -58,19 +45,6 @@ class ManagerV2(clients.Manager):
|
|||
|
||||
def _init_clients(self, params):
|
||||
self.zones_client = ZonesClient(**params)
|
||||
self.zone_imports_client = ZoneImportsClient(**params)
|
||||
self.blacklists_client = BlacklistsClient(**params)
|
||||
self.quotas_client = QuotasClient(**params)
|
||||
self.zone_exports_client = ZoneExportsClient(**params)
|
||||
self.recordset_client = RecordsetClient(**params)
|
||||
self.pool_client = PoolClient(**params)
|
||||
self.tld_client = TldClient(**params)
|
||||
self.transfer_request_client = TransferRequestClient(**params)
|
||||
self.transfer_accept_client = TransferAcceptClient(**params)
|
||||
self.tsigkey_client = TsigkeyClient(**params)
|
||||
self.service_client = SevriceClient(**params)
|
||||
self.designate_limit_client = DesignateLimitClient(**params)
|
||||
self.ptr_client = PtrClient(**params)
|
||||
|
||||
self.query_client = QueryClient(
|
||||
nameservers=CONF.dns.nameservers,
|
||||
|
@ -92,29 +66,7 @@ class ManagerV2(clients.Manager):
|
|||
return params
|
||||
|
||||
|
||||
class ManagerAdmin(clients.Manager):
|
||||
|
||||
def __init__(self, credentials=None):
|
||||
super(ManagerAdmin, self).__init__(credentials)
|
||||
self._init_clients(self._get_params())
|
||||
|
||||
def _init_clients(self, params):
|
||||
self.quotas_client = AdminQuotaClient(**params)
|
||||
|
||||
def _get_params(self):
|
||||
params = dict(self.default_params)
|
||||
params.update({
|
||||
'auth_provider': self.auth_provider,
|
||||
'service': CONF.dns.catalog_type,
|
||||
'region': CONF.identity.region,
|
||||
'endpoint_type': CONF.dns.endpoint_type,
|
||||
'build_interval': CONF.dns.build_interval,
|
||||
'build_timeout': CONF.dns.build_timeout
|
||||
})
|
||||
return params
|
||||
|
||||
|
||||
class ManagerV2Unauthed(ManagerV2):
|
||||
class ManagerV2Unauthed(clients.Manager):
|
||||
|
||||
def __init__(self, credentials=None):
|
||||
super(ManagerV2Unauthed, self).__init__(credentials)
|
||||
|
@ -127,12 +79,31 @@ class ManagerV2Unauthed(ManagerV2):
|
|||
)
|
||||
self._init_clients(self._get_params())
|
||||
|
||||
def _init_clients(self, params):
|
||||
self.zones_client = ZonesClient(**params)
|
||||
self.blacklists_client = BlacklistsClient(**params)
|
||||
self.recordset_client = RecordsetClient(**params)
|
||||
self.pool_client = PoolClient(**params)
|
||||
self.tld_client = TldClient(**params)
|
||||
|
||||
def _auth_provider_class(self):
|
||||
if CONF.identity.auth_version == 'v3':
|
||||
return KeystoneV3UnauthedProvider
|
||||
else:
|
||||
return KeystoneV2UnauthedProvider
|
||||
|
||||
def _get_params(self):
|
||||
params = dict(self.default_params)
|
||||
params.update({
|
||||
'auth_provider': self.auth_provider,
|
||||
'service': CONF.dns.catalog_type,
|
||||
'region': CONF.identity.region,
|
||||
'endpoint_type': CONF.dns.endpoint_type,
|
||||
'build_interval': CONF.dns.build_interval,
|
||||
'build_timeout': CONF.dns.build_timeout
|
||||
})
|
||||
return params
|
||||
|
||||
|
||||
class BaseUnauthedProvider(auth.KeystoneAuthProvider):
|
||||
|
||||
|
|
|
@ -18,6 +18,7 @@ from tempest import config
|
|||
from tempest.test_discover import plugins
|
||||
|
||||
from designate_tempest_plugin import config as project_config
|
||||
from designate_tempest_plugin.services.dns import v2 as dns_v2_services
|
||||
|
||||
|
||||
class DesignateTempestPlugin(plugins.TempestPlugin):
|
||||
|
@ -87,11 +88,7 @@ class DesignateTempestPlugin(plugins.TempestPlugin):
|
|||
'name': 'dns_v2',
|
||||
'service_version': 'dns.v2',
|
||||
'module_path': 'designate_tempest_plugin.services.dns.v2',
|
||||
'client_names': ['BlacklistsClient', 'PoolClient', 'QuotasClient',
|
||||
'RecordsetClient', 'TldClient',
|
||||
'TransferAcceptClient', 'TransferRequestClient',
|
||||
'TsigkeyClient', 'ZoneExportsClient',
|
||||
'ZoneImportsClient', 'ZonesClient']
|
||||
'client_names': dns_v2_services.__all__
|
||||
}
|
||||
admin_params.update(dns_config)
|
||||
v2_params.update(dns_config)
|
||||
|
|
|
@ -14,12 +14,18 @@
|
|||
|
||||
from designate_tempest_plugin.services.dns.v2.json.blacklists_client import \
|
||||
BlacklistsClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.designate_limit_client \
|
||||
import DesignateLimitClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.pool_client import \
|
||||
PoolClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.ptr_client \
|
||||
import PtrClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.quotas_client import \
|
||||
QuotasClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.recordset_client import \
|
||||
RecordsetClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.service_client import \
|
||||
ServiceClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.tld_client import TldClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.transfer_accepts_client \
|
||||
import TransferAcceptClient
|
||||
|
@ -27,14 +33,15 @@ from designate_tempest_plugin.services.dns.v2.json.transfer_request_client \
|
|||
import TransferRequestClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.tsigkey_client import \
|
||||
TsigkeyClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.zones_client import \
|
||||
ZonesClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.zone_exports_client import \
|
||||
ZoneExportsClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.zone_imports_client import \
|
||||
ZoneImportsClient
|
||||
from designate_tempest_plugin.services.dns.v2.json.zones_client import \
|
||||
ZonesClient
|
||||
|
||||
__all__ = ['BlacklistsClient', 'PoolClient', 'QuotasClient', 'RecordsetClient',
|
||||
__all__ = ['BlacklistsClient', 'DesignateLimitClient', 'PoolClient',
|
||||
'PtrClient', 'QuotasClient', 'RecordsetClient', 'ServiceClient',
|
||||
'TldClient', 'TransferAcceptClient', 'TransferRequestClient',
|
||||
'TsigkeyClient', 'ZoneExportsClient', 'ZoneImportsClient',
|
||||
'ZonesClient']
|
||||
'TsigkeyClient', 'ZonesClient', 'ZoneExportsClient',
|
||||
'ZoneImportsClient']
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
from designate_tempest_plugin.services.dns.v2.json import base
|
||||
|
||||
|
||||
class SevriceClient(base.DnsClientV2Base):
|
||||
class ServiceClient(base.DnsClientV2Base):
|
||||
|
||||
@base.handle_errors
|
||||
def list_statuses(self, headers=None):
|
||||
|
|
|
@ -52,7 +52,7 @@ class QuotasAdminTest(BaseQuotasTest):
|
|||
def setup_clients(cls):
|
||||
super(QuotasAdminTest, cls).setup_clients()
|
||||
|
||||
cls.admin_client = cls.os_admin.quotas_client
|
||||
cls.admin_client = cls.os_admin.dns_admin.QuotasClient()
|
||||
|
||||
@decorators.idempotent_id('ed42f367-e5ba-40d7-a08d-366ad787d21c')
|
||||
def test_show_quotas(self):
|
||||
|
|
|
@ -39,7 +39,7 @@ class BlacklistsAdminTest(BaseBlacklistsTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(BlacklistsAdminTest, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.blacklists_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.BlacklistsClient()
|
||||
|
||||
@decorators.idempotent_id('3a7f7564-6bdd-446e-addc-a3475b4c3f71')
|
||||
def test_create_blacklist(self):
|
||||
|
@ -123,7 +123,7 @@ class TestBlacklistNotFoundAdmin(BaseBlacklistsTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestBlacklistNotFoundAdmin, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.blacklists_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.BlacklistsClient()
|
||||
|
||||
@decorators.idempotent_id('9d65b638-fe98-47a8-853f-fa9244d144cc')
|
||||
def test_show_blacklist_404(self):
|
||||
|
@ -166,7 +166,7 @@ class TestBlacklistInvalidIdAdmin(BaseBlacklistsTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestBlacklistInvalidIdAdmin, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.blacklists_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.BlacklistsClient()
|
||||
|
||||
@decorators.idempotent_id('c7bae53f-2edc-45d8-b254-8a81482728c1')
|
||||
def test_show_blacklist_invalid_uuid(self):
|
||||
|
|
|
@ -31,8 +31,7 @@ class DesignateLimit(base.BaseDnsV2Test):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(DesignateLimit, cls).setup_clients()
|
||||
|
||||
cls.admin_client = cls.os_admin.designate_limit_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.DesignateLimitClient()
|
||||
|
||||
@decorators.idempotent_id('828572be-8662-11eb-8ff2-74e5f9e2a801')
|
||||
def test_list_designate_limits(self):
|
||||
|
|
|
@ -45,8 +45,7 @@ class PoolAdminTest(BasePoolTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(PoolAdminTest, cls).setup_clients()
|
||||
|
||||
cls.admin_client = cls.os_admin.pool_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.PoolClient()
|
||||
|
||||
@decorators.idempotent_id('69257f7c-b3d5-4e1b-998e-0677ad12f125')
|
||||
def test_create_pool(self):
|
||||
|
@ -136,7 +135,7 @@ class TestPoolNotFoundAdmin(BasePoolTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestPoolNotFoundAdmin, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.pool_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.PoolClient()
|
||||
|
||||
@decorators.idempotent_id('56281b2f-dd5a-4376-8c32-aba771062fa5')
|
||||
def test_show_pool_404(self):
|
||||
|
@ -179,7 +178,7 @@ class TestPoolInvalidIdAdmin(BasePoolTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestPoolInvalidIdAdmin, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.pool_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.PoolClient()
|
||||
|
||||
@decorators.idempotent_id('081d0188-42a7-4953-af0e-b022960715e2')
|
||||
def test_show_pool_invalid_uuid(self):
|
||||
|
@ -223,7 +222,7 @@ class TestPoolAdminNegative(BasePoolTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestPoolAdminNegative, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.pool_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.PoolClient()
|
||||
|
||||
@decorators.idempotent_id('0a8cdc1e-ac02-11eb-ae06-74e5f9e2a801')
|
||||
def test_create_pool_invalid_name(self):
|
||||
|
|
|
@ -41,7 +41,7 @@ class DesignatePtrRecord(BasePtrTest, tempest.test.BaseTestCase):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(DesignatePtrRecord, cls).setup_clients()
|
||||
cls.primary_ptr_client = cls.os_primary.ptr_client
|
||||
cls.primary_ptr_client = cls.os_primary.dns_v2.PtrClient()
|
||||
cls.primary_floating_ip_client = cls.os_primary.floating_ips_client
|
||||
|
||||
def _set_ptr(self):
|
||||
|
@ -100,7 +100,7 @@ class DesignatePtrRecordNegative(BasePtrTest, tempest.test.BaseTestCase):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(DesignatePtrRecordNegative, cls).setup_clients()
|
||||
cls.primary_ptr_client = cls.os_primary.ptr_client
|
||||
cls.primary_ptr_client = cls.os_primary.dns_v2.PtrClient()
|
||||
cls.primary_floating_ip_client = cls.os_primary.floating_ips_client
|
||||
|
||||
def _set_ptr(self, ptr_name=None, ttl=None, description=None,
|
||||
|
|
|
@ -48,9 +48,9 @@ class QuotasV2Test(base.BaseDnsV2Test):
|
|||
def setup_clients(cls):
|
||||
super(QuotasV2Test, cls).setup_clients()
|
||||
|
||||
cls.quotas_client = cls.os_primary.quotas_client
|
||||
cls.admin_client = cls.os_admin.quotas_client
|
||||
cls.alt_client = cls.os_alt.quotas_client
|
||||
cls.quotas_client = cls.os_primary.dns_v2.QuotasClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.QuotasClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.QuotasClient()
|
||||
|
||||
def _store_quotas(self, project_id=None, cleanup=True):
|
||||
"""Remember current quotas and reset them after the test"""
|
||||
|
|
|
@ -61,13 +61,12 @@ class RecordsetsTest(BaseRecordsetsTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(RecordsetsTest, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.recordset_client
|
||||
cls.alt_client = cls.os_alt.recordset_client
|
||||
cls.admin_client = cls.os_admin.recordset_client
|
||||
cls.zone_client = cls.os_primary.zones_client
|
||||
cls.alt_zone_client = cls.os_alt.zones_client
|
||||
cls.admin_zone_client = cls.os_admin.zones_client
|
||||
cls.client = cls.os_primary.dns_v2.RecordsetClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.RecordsetClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.RecordsetClient()
|
||||
cls.zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.alt_zone_client = cls.os_alt.dns_v2.ZonesClient()
|
||||
cls.admin_zone_client = cls.os_admin.dns_v2.ZonesClient()
|
||||
|
||||
@decorators.attr(type='smoke')
|
||||
@decorators.idempotent_id('631d74fd-6909-4684-a61b-5c4d2f92c3e7')
|
||||
|
@ -311,10 +310,9 @@ class RecordsetsNegativeTest(BaseRecordsetsTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(RecordsetsNegativeTest, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.recordset_client
|
||||
cls.alt_client = cls.os_alt.recordset_client
|
||||
cls.zone_client = cls.os_primary.zones_client
|
||||
cls.client = cls.os_primary.dns_v2.RecordsetClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.RecordsetClient()
|
||||
cls.zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
|
||||
@decorators.idempotent_id('98c94f8c-217a-4056-b996-b1f856d0753e')
|
||||
@ddt.file_data("recordset_data_invalid.json")
|
||||
|
@ -457,9 +455,8 @@ class RootRecordsetsTests(BaseRecordsetsTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(RootRecordsetsTests, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.recordset_client
|
||||
cls.zone_client = cls.os_primary.zones_client
|
||||
cls.client = cls.os_primary.dns_v2.RecordsetClient()
|
||||
cls.zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
|
||||
@classmethod
|
||||
def skip_checks(cls):
|
||||
|
@ -554,12 +551,11 @@ class RecordsetOwnershipTest(BaseRecordsetsTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(RecordsetOwnershipTest, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.recordset_client
|
||||
cls.zone_client = cls.os_primary.zones_client
|
||||
cls.alt_client = cls.os_alt.recordset_client
|
||||
cls.alt_zone_client = cls.os_alt.zones_client
|
||||
cls.admin_client = cls.os_admin.recordset_client
|
||||
cls.client = cls.os_primary.dns_v2.RecordsetClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.RecordsetClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.RecordsetClient()
|
||||
cls.zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.alt_zone_client = cls.os_alt.dns_v2.ZonesClient()
|
||||
|
||||
def _create_client_recordset(self, clients_list):
|
||||
"""Create a zone and asoociated recordset using given credentials
|
||||
|
|
|
@ -51,8 +51,8 @@ class RecordsetValidationTest(base.BaseDnsV2Test):
|
|||
def setup_clients(cls):
|
||||
super(RecordsetValidationTest, cls).setup_clients()
|
||||
|
||||
cls.recordset_client = cls.os_primary.recordset_client
|
||||
cls.zones_client = cls.os_primary.zones_client
|
||||
cls.recordset_client = cls.os_primary.dns_v2.RecordsetClient()
|
||||
cls.zones_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
|
||||
@property
|
||||
def zone(self):
|
||||
|
|
|
@ -38,8 +38,8 @@ class ServiceStatus(base.BaseDnsV2Test):
|
|||
def setup_clients(cls):
|
||||
super(ServiceStatus, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.service_client
|
||||
cls.admin_client = cls.os_admin.service_client
|
||||
cls.client = cls.os_primary.dns_v2.ServiceClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.ServiceClient()
|
||||
|
||||
@decorators.idempotent_id('bf277a76-8583-11eb-a557-74e5f9e2a801')
|
||||
def test_list_service_statuses(self):
|
||||
|
|
|
@ -38,7 +38,7 @@ class TldAdminTest(BaseTldTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TldAdminTest, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.tld_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.TldClient()
|
||||
|
||||
@classmethod
|
||||
def resource_setup(cls):
|
||||
|
@ -140,7 +140,7 @@ class TestTldNotFoundAdmin(BaseTldTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestTldNotFoundAdmin, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.tld_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.TldClient()
|
||||
|
||||
@decorators.idempotent_id('b237d5ee-0d76-4294-a3b6-c2f8bf4b0e30')
|
||||
def test_show_tld_404(self):
|
||||
|
@ -183,7 +183,7 @@ class TestTldInvalidIdAdmin(BaseTldTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestTldInvalidIdAdmin, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.tld_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.TldClient()
|
||||
|
||||
@decorators.idempotent_id('f9ec0730-57ff-4720-8d06-e11d377c7cfc')
|
||||
def test_show_tld_invalid_uuid(self):
|
||||
|
|
|
@ -40,19 +40,19 @@ class TransferAcceptTest(BaseTransferAcceptTest):
|
|||
super(TransferAcceptTest, cls).setup_clients()
|
||||
|
||||
# Primary clients
|
||||
cls.prm_zone_client = cls.os_primary.zones_client
|
||||
cls.prm_request_client = cls.os_primary.transfer_request_client
|
||||
cls.prm_accept_client = cls.os_primary.transfer_accept_client
|
||||
cls.prm_zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.prm_request_client = cls.os_primary.dns_v2.TransferRequestClient()
|
||||
cls.prm_accept_client = cls.os_primary.dns_v2.TransferAcceptClient()
|
||||
|
||||
# Alt clients
|
||||
cls.alt_zone_client = cls.os_alt.zones_client
|
||||
cls.alt_request_client = cls.os_alt.transfer_request_client
|
||||
cls.alt_accept_client = cls.os_alt.transfer_accept_client
|
||||
cls.alt_zone_client = cls.os_alt.dns_v2.ZonesClient()
|
||||
cls.alt_request_client = cls.os_alt.dns_v2.TransferRequestClient()
|
||||
cls.alt_accept_client = cls.os_alt.dns_v2.TransferAcceptClient()
|
||||
|
||||
# Admin clients
|
||||
cls.admin_zone_client = cls.os_admin.zones_client
|
||||
cls.admin_request_client = cls.os_admin.transfer_request_client
|
||||
cls.admin_accept_client = cls.os_admin.transfer_accept_client
|
||||
cls.admin_zone_client = cls.os_admin.dns_v2.ZonesClient()
|
||||
cls.admin_request_client = cls.os_admin.dns_v2.TransferRequestClient()
|
||||
cls.admin_accept_client = cls.os_admin.dns_v2.TransferAcceptClient()
|
||||
|
||||
@decorators.idempotent_id('1c6baf97-a83e-4d2e-a5d8-9d37fb7808f3')
|
||||
def test_create_transfer_accept(self):
|
||||
|
@ -305,9 +305,9 @@ class TransferAcceptTestNegative(BaseTransferAcceptTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TransferAcceptTestNegative, cls).setup_clients()
|
||||
cls.zone_client = cls.os_primary.zones_client
|
||||
cls.request_client = cls.os_primary.transfer_request_client
|
||||
cls.client = cls.os_primary.transfer_accept_client
|
||||
cls.zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.request_client = cls.os_primary.dns_v2.TransferRequestClient()
|
||||
cls.client = cls.os_primary.dns_v2.TransferAcceptClient()
|
||||
|
||||
@decorators.idempotent_id('324a3e80-a1cc-11eb-b534-74e5f9e2a801')
|
||||
def test_create_transfer_accept_using_invalid_key(self):
|
||||
|
|
|
@ -39,11 +39,11 @@ class TransferRequestTest(BaseTransferRequestTest):
|
|||
def setup_clients(cls):
|
||||
super(TransferRequestTest, cls).setup_clients()
|
||||
|
||||
cls.zone_client = cls.os_primary.zones_client
|
||||
cls.alt_zone_client = cls.os_alt.zones_client
|
||||
cls.client = cls.os_primary.transfer_request_client
|
||||
cls.alt_client = cls.os_alt.transfer_request_client
|
||||
cls.admin_client = cls.os_admin.transfer_request_client
|
||||
cls.zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.alt_zone_client = cls.os_alt.dns_v2.ZonesClient()
|
||||
cls.client = cls.os_primary.dns_v2.TransferRequestClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.TransferRequestClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.TransferRequestClient()
|
||||
|
||||
@decorators.idempotent_id('2381d489-ad84-403d-b0a2-8b77e4e966bf')
|
||||
def test_create_transfer_request(self):
|
||||
|
@ -282,7 +282,7 @@ class TestTransferRequestNotFound(BaseTransferRequestTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestTransferRequestNotFound, cls).setup_clients()
|
||||
cls.client = cls.os_primary.transfer_request_client
|
||||
cls.client = cls.os_primary.dns_v2.TransferRequestClient()
|
||||
|
||||
@decorators.idempotent_id('d255f72f-ba24-43df-9dba-011ed7f4625d')
|
||||
def test_show_transfer_request_404(self):
|
||||
|
@ -324,7 +324,7 @@ class TestTransferRequestInvalidId(BaseTransferRequestTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestTransferRequestInvalidId, cls).setup_clients()
|
||||
cls.client = cls.os_primary.transfer_request_client
|
||||
cls.client = cls.os_primary.dns_v2.TransferRequestClient()
|
||||
|
||||
@decorators.idempotent_id('2205dd19-ecc7-4c68-9e89-63c47d642b07')
|
||||
def test_show_transfer_request_invalid_uuid(self):
|
||||
|
|
|
@ -38,8 +38,8 @@ class TsigkeyAdminTest(BaseTsigkeyTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TsigkeyAdminTest, cls).setup_clients()
|
||||
cls.zone_client = cls.os_primary.zones_client
|
||||
cls.admin_client = cls.os_admin.tsigkey_client
|
||||
cls.zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.TsigkeyClient()
|
||||
|
||||
@decorators.idempotent_id('e7b484e3-7ed5-4840-89d7-1e696986f8e4')
|
||||
def test_create_tsigkey(self):
|
||||
|
@ -151,7 +151,7 @@ class TestTsigkeyNotFoundAdmin(BaseTsigkeyTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestTsigkeyNotFoundAdmin, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.tsigkey_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.TsigkeyClient()
|
||||
|
||||
@decorators.idempotent_id('824c9b49-edc5-4282-929e-467a158d23e4')
|
||||
def test_show_tsigkey_404(self):
|
||||
|
@ -194,7 +194,7 @@ class TestTsigkeyInvalidIdAdmin(BaseTsigkeyTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(TestTsigkeyInvalidIdAdmin, cls).setup_clients()
|
||||
cls.admin_client = cls.os_admin.tsigkey_client
|
||||
cls.admin_client = cls.os_admin.dns_v2.TsigkeyClient()
|
||||
|
||||
@decorators.idempotent_id('2a8dfc75-9884-4b1c-8f1f-ed835d96f2fe')
|
||||
def test_show_tsigkey_invalid_uuid(self):
|
||||
|
|
|
@ -45,11 +45,9 @@ class ZoneTasks(BaseZonesTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(ZoneTasks, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.zones_client
|
||||
cls.alt_client = cls.os_alt.zones_client
|
||||
cls.admin_client = cls.os_admin.zones_client
|
||||
cls.query_client = cls.os_primary.query_client
|
||||
cls.client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.ZonesClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.ZonesClient()
|
||||
|
||||
@decorators.idempotent_id('287e2cd0-a0e7-11eb-b962-74e5f9e2a801')
|
||||
def test_zone_abandon(self):
|
||||
|
@ -117,11 +115,9 @@ class ZoneTasksNegative(BaseZonesTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(ZoneTasksNegative, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.zones_client
|
||||
cls.alt_client = cls.os_alt.zones_client
|
||||
cls.admin_client = cls.os_admin.zones_client
|
||||
cls.query_client = cls.os_primary.query_client
|
||||
cls.client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.ZonesClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.ZonesClient()
|
||||
|
||||
def _query_nameserver(self, nameserver, query_timeout,
|
||||
zone_name, zone_type='SOA'):
|
||||
|
|
|
@ -34,6 +34,7 @@ class BaseZonesTest(base.BaseDnsV2Test):
|
|||
|
||||
class ZonesTest(BaseZonesTest):
|
||||
credentials = ['admin', 'primary']
|
||||
|
||||
@classmethod
|
||||
def setup_credentials(cls):
|
||||
# Do not create network resources for these test.
|
||||
|
@ -43,9 +44,8 @@ class ZonesTest(BaseZonesTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(ZonesTest, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.zones_client
|
||||
cls.pool_client = cls.os_admin.pool_client
|
||||
cls.client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.pool_client = cls.os_admin.dns_v2.PoolClient()
|
||||
|
||||
@decorators.idempotent_id('9d2e20fc-e56f-4a62-9c61-9752a9ec615c')
|
||||
def test_create_zones(self):
|
||||
|
@ -203,10 +203,9 @@ class ZonesAdminTest(BaseZonesTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(ZonesAdminTest, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.zones_client
|
||||
cls.admin_client = cls.os_admin.zones_client
|
||||
cls.alt_client = cls.os_alt.zones_client
|
||||
cls.client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.ZonesClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.ZonesClient()
|
||||
|
||||
@decorators.idempotent_id('f6fe8cce-8b04-11eb-a861-74e5f9e2a801')
|
||||
def test_show_zone_impersonate_another_project(self):
|
||||
|
@ -300,9 +299,8 @@ class ZoneOwnershipTest(BaseZonesTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(ZoneOwnershipTest, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.zones_client
|
||||
cls.alt_client = cls.os_alt.zones_client
|
||||
cls.client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.ZonesClient()
|
||||
|
||||
@decorators.idempotent_id('5d28580a-a012-4b57-b211-e077b1a01340')
|
||||
def test_no_create_duplicate_domain(self):
|
||||
|
@ -353,7 +351,7 @@ class ZonesNegativeTest(BaseZonesTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(ZonesNegativeTest, cls).setup_clients()
|
||||
cls.client = cls.os_primary.zones_client
|
||||
cls.client = cls.os_primary.dns_v2.ZonesClient()
|
||||
|
||||
@decorators.idempotent_id('551853c0-8593-11eb-8c8a-74e5f9e2a801')
|
||||
def test_no_valid_zone_name(self):
|
||||
|
|
|
@ -38,12 +38,11 @@ class ZonesExportTest(BaseZoneExportsTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(ZonesExportTest, cls).setup_clients()
|
||||
|
||||
cls.zone_client = cls.os_primary.zones_client
|
||||
cls.alt_zone_client = cls.os_alt.zones_client
|
||||
cls.client = cls.os_primary.zone_exports_client
|
||||
cls.alt_client = cls.os_alt.zone_exports_client
|
||||
cls.admin_client = cls.os_admin.zone_exports_client
|
||||
cls.zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.alt_zone_client = cls.os_alt.dns_v2.ZonesClient()
|
||||
cls.client = cls.os_primary.dns_v2.ZoneExportsClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.ZoneExportsClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.ZoneExportsClient()
|
||||
|
||||
@decorators.idempotent_id('2dd8a9a0-98a2-4bf6-bb51-286583b30f40')
|
||||
def test_create_zone_export(self):
|
||||
|
@ -228,10 +227,9 @@ class ZonesExportTestNegative(BaseZoneExportsTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(ZonesExportTestNegative, cls).setup_clients()
|
||||
|
||||
cls.zone_client = cls.os_primary.zones_client
|
||||
cls.client = cls.os_primary.zone_exports_client
|
||||
cls.alt_client = cls.os_alt.zone_exports_client
|
||||
cls.zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.client = cls.os_primary.dns_v2.ZoneExportsClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.ZoneExportsClient()
|
||||
|
||||
@decorators.idempotent_id('76ab8ec4-95fd-11eb-b1cd-74e5f9e2a801')
|
||||
def test_create_zone_export_using_invalid_zone_id(self):
|
||||
|
|
|
@ -41,11 +41,10 @@ class ZonesImportTest(BaseZonesImportTest):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(ZonesImportTest, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.zone_imports_client
|
||||
cls.alt_client = cls.os_alt.zone_imports_client
|
||||
cls.admin_client = cls.os_admin.zone_imports_client
|
||||
cls.zone_client = cls.os_primary.zones_client
|
||||
cls.zone_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.client = cls.os_primary.dns_v2.ZoneImportsClient()
|
||||
cls.alt_client = cls.os_alt.dns_v2.ZoneImportsClient()
|
||||
cls.admin_client = cls.os_admin.dns_v2.ZoneImportsClient()
|
||||
|
||||
def clean_up_resources(self, zone_import_id):
|
||||
zone_import = self.client.show_zone_import(zone_import_id)[1]
|
||||
|
|
|
@ -16,8 +16,14 @@ from tempest import test
|
|||
from tempest import config
|
||||
from tempest.lib.common.utils import test_utils as utils
|
||||
|
||||
# TODO(johnsom) remove once neutron-tempest-plugin test_dns_integration
|
||||
# has been updated
|
||||
# https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/800291
|
||||
from designate_tempest_plugin import clients
|
||||
|
||||
from designate_tempest_plugin.services.dns.query.query_client import \
|
||||
QueryClient
|
||||
|
||||
|
||||
CONF = config.CONF
|
||||
|
||||
|
@ -76,6 +82,19 @@ class BaseDnsTest(test.BaseTestCase):
|
|||
% cls.__name__)
|
||||
raise cls.skipException(skip_msg)
|
||||
|
||||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(BaseDnsTest, cls).setup_clients()
|
||||
# The Query Client is not an OpenStack client which means
|
||||
# we should not set it up through the tempest client manager.
|
||||
# Set it up here so all tests have access to it.
|
||||
cls.query_client = QueryClient(
|
||||
nameservers=CONF.dns.nameservers,
|
||||
query_timeout=CONF.dns.query_timeout,
|
||||
build_interval=CONF.dns.build_interval,
|
||||
build_timeout=CONF.dns.build_timeout,
|
||||
)
|
||||
|
||||
def assertExpected(self, expected, actual, excluded_keys):
|
||||
for key, value in six.iteritems(expected):
|
||||
if key not in excluded_keys:
|
||||
|
@ -122,7 +141,9 @@ class BaseDnsTest(test.BaseTestCase):
|
|||
class BaseDnsV2Test(BaseDnsTest):
|
||||
"""Base class for DNS V2 API tests."""
|
||||
|
||||
# Use the Designate V2 Client Manager
|
||||
# TODO(johnsom) remove once neutron-tempest-plugin test_dns_integration
|
||||
# has been updated
|
||||
# https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/800291
|
||||
client_manager = clients.ManagerV2
|
||||
|
||||
@classmethod
|
||||
|
@ -138,9 +159,6 @@ class BaseDnsV2Test(BaseDnsTest):
|
|||
class BaseDnsAdminTest(BaseDnsTest):
|
||||
"""Base class for DNS Admin API tests."""
|
||||
|
||||
# Use the Designate Admin Client Manager
|
||||
client_manager = clients.ManagerAdmin
|
||||
|
||||
@classmethod
|
||||
def skip_checks(cls):
|
||||
super(BaseDnsAdminTest, cls).skip_checks()
|
||||
|
|
|
@ -31,9 +31,8 @@ class RecordsetsTest(base.BaseDnsV2Test):
|
|||
def setup_clients(cls):
|
||||
super(RecordsetsTest, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.zones_client
|
||||
cls.recordset_client = cls.os_primary.recordset_client
|
||||
cls.query_client = cls.os_primary.query_client
|
||||
cls.client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.recordset_client = cls.os_primary.dns_v2.RecordsetClient()
|
||||
|
||||
@classmethod
|
||||
def resource_setup(cls):
|
||||
|
|
|
@ -29,8 +29,7 @@ class ZonesTest(base.BaseDnsV2Test):
|
|||
def setup_clients(cls):
|
||||
super(ZonesTest, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.zones_client
|
||||
cls.query_client = cls.os_primary.query_client
|
||||
cls.client = cls.os_primary.dns_v2.ZonesClient()
|
||||
|
||||
@decorators.attr(type='smoke')
|
||||
@decorators.attr(type='slow')
|
||||
|
|
|
@ -28,8 +28,8 @@ class ZonesExportTest(BaseZoneExportsTest):
|
|||
def setup_clients(cls):
|
||||
super(ZonesExportTest, cls).setup_clients()
|
||||
|
||||
cls.zones_client = cls.os_primary.zones_client
|
||||
cls.client = cls.os_primary.zone_exports_client
|
||||
cls.client = cls.os_primary.dns_v2.ZoneExportsClient()
|
||||
cls.zones_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
|
||||
@decorators.attr(type='slow')
|
||||
@decorators.idempotent_id('0484c3c4-df57-458e-a6e5-6eb63e0475e0')
|
||||
|
|
|
@ -28,8 +28,8 @@ class ZonesImportTest(BaseZonesImportTest):
|
|||
def setup_clients(cls):
|
||||
super(ZonesImportTest, cls).setup_clients()
|
||||
|
||||
cls.client = cls.os_primary.zone_imports_client
|
||||
cls.zones_client = cls.os_primary.zones_client
|
||||
cls.client = cls.os_primary.dns_v2.ZoneImportsClient()
|
||||
cls.zones_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
|
||||
@decorators.attr(type='slow')
|
||||
@decorators.idempotent_id('679f38d0-2f2f-49c5-934e-8fe0c452f56e')
|
||||
|
|
|
@ -27,14 +27,14 @@ class ZonesTransferTest(base.BaseDnsV2Test):
|
|||
@classmethod
|
||||
def setup_clients(cls):
|
||||
super(ZonesTransferTest, cls).setup_clients()
|
||||
cls.zones_client = cls.os_primary.zones_client
|
||||
cls.alt_zones_client = cls.os_alt.zones_client
|
||||
cls.admin_zones_client = cls.os_admin.zones_client
|
||||
cls.request_client = cls.os_primary.transfer_request_client
|
||||
cls.alt_request_client = cls.os_alt.transfer_request_client
|
||||
cls.accept_client = cls.os_primary.transfer_accept_client
|
||||
cls.alt_accept_client = cls.os_alt.transfer_accept_client
|
||||
cls.admin_accept_client = cls.os_admin.transfer_accept_client
|
||||
cls.zones_client = cls.os_primary.dns_v2.ZonesClient()
|
||||
cls.alt_zones_client = cls.os_alt.dns_v2.ZonesClient()
|
||||
cls.admin_zones_client = cls.os_admin.dns_v2.ZonesClient()
|
||||
cls.request_client = cls.os_primary.dns_v2.TransferRequestClient()
|
||||
cls.alt_request_client = cls.os_alt.dns_v2.TransferRequestClient()
|
||||
cls.accept_client = cls.os_primary.dns_v2.TransferAcceptClient()
|
||||
cls.alt_accept_client = cls.os_alt.dns_v2.TransferAcceptClient()
|
||||
cls.admin_accept_client = cls.os_admin.dns_v2.TransferAcceptClient()
|
||||
|
||||
@decorators.idempotent_id('60bd80ac-c979-4686-9a03-f2f775f272ab')
|
||||
def test_zone_transfer(self):
|
||||
|
|
Loading…
Reference in New Issue