Fix deleting zones in recordset validation tests
these tests create zones as part of the test but do clean them up
afterward slowly. This leads to these and following tests in the thread
to fail with over quota when default zone quota is sufficiently low.
Change-Id: Iab9a4308bd8e936be735ce85fdf0a419a1b68bee
(cherry picked from commit 2ffcf640bc7f205ff901f55ba0cede27b18e1cc1)
diff --git a/designate_tempest_plugin/tests/api/v2/test_recordset_validation.py b/designate_tempest_plugin/tests/api/v2/test_recordset_validation.py
index e95ab4b..7d0e697 100644
--- a/designate_tempest_plugin/tests/api/v2/test_recordset_validation.py
+++ b/designate_tempest_plugin/tests/api/v2/test_recordset_validation.py
@@ -14,6 +14,8 @@
limitations under the License.
"""
import ddt
+from tempest import config
+from tempest.lib.common.utils import test_utils as utils
from tempest.lib import exceptions
from tempest.lib import decorators
@@ -33,6 +35,8 @@
'TXT',
]
+CONF = config.CONF
+
@ddt.ddt
class RecordsetValidationTest(base.BaseDnsV2Test):
@@ -41,6 +45,15 @@
super(RecordsetValidationTest, self).setUp()
self._zone = None
+ def tearDown(self):
+ if self._zone:
+ self.zones_client.delete_zone(self._zone['id'])
+ utils.call_until_true(self._check_zone_deleted,
+ CONF.dns.build_timeout,
+ CONF.dns.build_interval,
+ self._zone['id'])
+ super(RecordsetValidationTest, self).tearDown()
+
@classmethod
def setup_credentials(cls):
# Do not create network resources for these test.
@@ -68,6 +81,10 @@
return body
+ def _check_zone_deleted(self, zone_id):
+ return utils.call_and_ignore_notfound_exc(self.zones_client.show_zone,
+ zone_id) is None
+
@decorators.idempotent_id('c5ef87e2-cb79-4758-b968-18eef2c251df')
@ddt.data(*RECORDSETS_DATASET)
def test_create_invalid(self, rtype):