diff --git a/neutron_tempest_plugin/scenario/test_dns_integration.py b/neutron_tempest_plugin/scenario/test_dns_integration.py index 8163b516..d520aa22 100644 --- a/neutron_tempest_plugin/scenario/test_dns_integration.py +++ b/neutron_tempest_plugin/scenario/test_dns_integration.py @@ -39,8 +39,6 @@ LOG = log.getLogger(__name__) # when designate_tempest_plugin is not available dns_base = testtools.try_import('designate_tempest_plugin.tests.base') dns_waiters = testtools.try_import('designate_tempest_plugin.common.waiters') -dns_data_utils = testtools.try_import('designate_tempest_plugin.data_utils') - if dns_base: DNSMixin = dns_base.BaseDnsV2Test else: @@ -54,9 +52,8 @@ class BaseDNSIntegrationTests(base.BaseTempestTestCase, DNSMixin): def setup_clients(cls): super(BaseDNSIntegrationTests, cls).setup_clients() cls.zone_client = cls.os_tempest.dns_v2.ZonesClient() - cls.admin_zone_client = cls.os_admin.dns_v2.ZonesClient() cls.recordset_client = cls.os_tempest.dns_v2.RecordsetClient() - cls.query_client.build_timeout = 60 + cls.query_client.build_timeout = 30 @classmethod def skip_checks(cls): @@ -71,13 +68,12 @@ class BaseDNSIntegrationTests(base.BaseTempestTestCase, DNSMixin): @utils.requires_ext(extension="dns-integration", service="network") def resource_setup(cls): super(BaseDNSIntegrationTests, cls).resource_setup() - cls.zone_name = dns_data_utils.rand_zone_name( - name="basednsintegrationtests") - cls.zone = cls.zone_client.create_zone( - name=cls.zone_name, wait_until='ACTIVE')[1] - cls.addClassResourceCleanup( - cls.zone_client.delete_zone, cls.zone['id'], - ignore_errors=lib_exc.NotFound) + cls.zone = cls.zone_client.create_zone()[1] + cls.addClassResourceCleanup(cls.zone_client.delete_zone, + cls.zone['id'], ignore_errors=lib_exc.NotFound) + dns_waiters.wait_for_zone_status( + cls.zone_client, cls.zone['id'], 'ACTIVE') + cls.network = cls.create_network(dns_domain=cls.zone['name']) cls.subnet = cls.create_subnet(cls.network) cls.subnet_v6 = cls.create_subnet(cls.network, ip_version=6) @@ -85,20 +81,6 @@ class BaseDNSIntegrationTests(base.BaseTempestTestCase, DNSMixin): cls.create_router_interface(cls.router['id'], cls.subnet['id']) cls.keypair = cls.create_keypair() - @classmethod - def resource_cleanup(cls): - super(BaseDNSIntegrationTests, cls).resource_cleanup() - admin_listed_zones = cls.admin_zone_client.list_zones( - headers=dns_base.BaseDnsV2Test.all_projects_header)[1]['zones'] - neutron_zone_ids = [ - zn['id'] for zn in admin_listed_zones if - 'zone for reverse lookups set up by Neutron.' in - str(zn['description']) and cls.zone_name.strip('.') in zn['email']] - for id in neutron_zone_ids: - cls.admin_zone_client.delete_zone( - id, headers=dns_base.BaseDnsV2Test.all_projects_header, - ignore_errors=lib_exc.NotFound) - def _create_floatingip_with_dns(self, dns_name): return self.create_floatingip(client=self.os_primary.network_client, dns_name=dns_name, @@ -268,8 +250,7 @@ class DNSIntegrationExtraTests(BaseDNSIntegrationTests): @classmethod def resource_setup(cls): super(DNSIntegrationExtraTests, cls).resource_setup() - cls.network2 = cls.create_network( - name=data_utils.rand_name('dns_integration_net')) + cls.network2 = cls.create_network() cls.subnet2 = cls.create_subnet(cls.network2) cls.subnet2_v6 = cls.create_subnet(cls.network2, ip_version=6, @@ -293,16 +274,6 @@ class DNSIntegrationExtraTests(BaseDNSIntegrationTests): self.client.delete_port(port['id']) self._verify_dns_records(addr_v6, name, record_type='AAAA', found=False) - self.client.update_subnet( - self.subnet2['id'], dns_publish_fixed_ip=True) - port = self.create_port(self.network2, - dns_domain=self.zone['name'], - dns_name=name) - addr_v4 = port['fixed_ips'][1 - v6_index]['ip_address'] - self._verify_dns_records(addr_v4, name, record_type='A') - self.client.delete_port(port['id']) - self._verify_dns_records(addr_v4, name, record_type='A', - found=False) class DNSIntegrationDomainPerProjectTests(BaseDNSIntegrationTests): @@ -315,15 +286,19 @@ class DNSIntegrationDomainPerProjectTests(BaseDNSIntegrationTests): @classmethod def resource_setup(cls): super(BaseDNSIntegrationTests, cls).resource_setup() - cls.name = data_utils.rand_name('test-domain') - cls.zone_name = "%s.%s.%s.zone." % (cls.client.user_id, + + name = data_utils.rand_name('test-domain') + zone_name = "%s.%s.%s.zone." % (cls.client.user_id, cls.client.project_id, - cls.name) - dns_domain_template = "..%s.zone." % cls.name - cls.zone = cls.zone_client.create_zone( - name=cls.zone_name, wait_until='ACTIVE')[1] + name) + dns_domain_template = "..%s.zone." % name + + cls.zone = cls.zone_client.create_zone(name=zone_name)[1] cls.addClassResourceCleanup(cls.zone_client.delete_zone, cls.zone['id'], ignore_errors=lib_exc.NotFound) + dns_waiters.wait_for_zone_status( + cls.zone_client, cls.zone['id'], 'ACTIVE') + cls.network = cls.create_network(dns_domain=dns_domain_template) cls.subnet = cls.create_subnet(cls.network, dns_publish_fixed_ip=True) @@ -334,20 +309,6 @@ class DNSIntegrationDomainPerProjectTests(BaseDNSIntegrationTests): cls.create_router_interface(cls.router['id'], cls.subnet['id']) cls.keypair = cls.create_keypair() - @classmethod - def resource_cleanup(cls): - super(BaseDNSIntegrationTests, cls).resource_cleanup() - admin_listed_zones = cls.admin_zone_client.list_zones( - headers=dns_base.BaseDnsV2Test.all_projects_header)[1]['zones'] - neutron_zone_ids = [ - zn['id'] for zn in admin_listed_zones if - 'zone for reverse lookups set up by Neutron.' in - str(zn['description']) and cls.zone_name.strip('.') in zn['email']] - for id in neutron_zone_ids: - cls.admin_zone_client.delete_zone( - id, headers=dns_base.BaseDnsV2Test.all_projects_header, - ignore_errors=lib_exc.NotFound) - @decorators.idempotent_id('43a67509-3161-4125-8f2c-0d4a67599721') def test_port_with_dns_name(self): name = data_utils.rand_name('port-test')