From bcff352f9c03aff776e847c4dc6111ee1e3734c6 Mon Sep 17 00:00:00 2001 From: Felipe Reyes Date: Tue, 13 Jul 2021 17:11:22 -0400 Subject: [PATCH] designate: test new configuration options New configuration options: - default-ttl - default-soa-minimum - default-soa-refresh-min - default-soa-refresh-max - default-soa-retry Related-Bug: #1902922 --- zaza/openstack/charm_tests/designate/tests.py | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/zaza/openstack/charm_tests/designate/tests.py b/zaza/openstack/charm_tests/designate/tests.py index 78a5f31..4fffede 100644 --- a/zaza/openstack/charm_tests/designate/tests.py +++ b/zaza/openstack/charm_tests/designate/tests.py @@ -33,6 +33,8 @@ import zaza.charm_lifecycle.utils as lifecycle_utils class BaseDesignateTest(test_utils.OpenStackBaseTest): """Base for Designate charm tests.""" + DESIGNATE_CONF = '/etc/designate/designate.conf' + @classmethod def setUpClass(cls, application_name=None, model_alias=None): """Run class setup for running Designate charm operation tests.""" @@ -119,6 +121,41 @@ class DesignateAPITests(BaseDesignateTest): self.server_delete(server_id) return wait() + def test_300_default_soa_config_options(self): + """Configure default SOA options.""" + test_domain = "test_300_example.com." + DEFAULT_TTL = 60 + alternate_config = {'default-soa-minimum': 600, + 'default-ttl': DEFAULT_TTL, + 'default-soa-refresh-min': 300, + 'default-soa-refresh-max': 400, + 'default-soa-retry': 30} + with self.config_change({}, alternate_config, "designate", + reset_to_charm_default=True): + for key, value in alternate_config.items(): + expected = "\n%s = %s\n" % (key.replace('-', '_'), value) + zaza.model.block_until_file_has_contents(self.application_name, + self.DESIGNATE_CONF, + expected) + logging.debug('Creating domain %s' % test_domain) + domain = domains.Domain(name=test_domain, + email="fred@amuletexample.com") + + if self.post_xenial_queens: + new_domain = self.domain_create( + name=domain.name, email=domain.email) + domain_id = new_domain['id'] + else: + new_domain = self.domain_create(domain) + domain_id = new_domain.id + + self.assertIsNotNone(new_domain) + self.assertEqual(new_domain['ttl'], DEFAULT_TTL) + + logging.debug('Tidy up delete test record %s' % domain_id) + self._wait_on_domain_gone(domain_id) + logging.debug('Done with deletion of domain %s' % domain_id) + def test_400_server_creation(self): """Simple api calls to create a server.""" # Designate does not allow the last server to be deleted so ensure