Bladeren bron

refactor(tests): generalize requests_desec_domain_deletion()

Peter Thomassen 4 jaren geleden
bovenliggende
commit
ef1daa9763

+ 13 - 15
api/desecapi/tests/base.py

@@ -751,13 +751,22 @@ class DesecTestCase(MockPDNSTestCase):
         ]
         ]
 
 
     @classmethod
     @classmethod
-    def requests_desec_domain_deletion(cls, name=None):
-        return [
-            cls.request_pdns_zone_delete(name=name, ns='LORD'),
-            cls.request_pdns_zone_delete(name=name, ns='MASTER'),
+    def requests_desec_domain_deletion(cls, domain):
+        requests = [
+            cls.request_pdns_zone_delete(name=domain.name, ns='LORD'),
+            cls.request_pdns_zone_delete(name=domain.name, ns='MASTER'),
             cls.request_pdns_update_catalog(),
             cls.request_pdns_update_catalog(),
         ]
         ]
 
 
+        if domain.is_locally_registrable:
+            delegate_at = cls._find_auto_delegation_zone(domain.name)
+            requests += [
+                cls.request_pdns_zone_update(name=delegate_at),
+                cls.request_pdns_zone_axfr(name=delegate_at),
+            ]
+
+        return requests
+
     @classmethod
     @classmethod
     def requests_desec_domain_creation_auto_delegation(cls, name=None):
     def requests_desec_domain_creation_auto_delegation(cls, name=None):
         delegate_at = cls._find_auto_delegation_zone(name)
         delegate_at = cls._find_auto_delegation_zone(name)
@@ -766,17 +775,6 @@ class DesecTestCase(MockPDNSTestCase):
             cls.request_pdns_zone_axfr(name=delegate_at),
             cls.request_pdns_zone_axfr(name=delegate_at),
         ]
         ]
 
 
-    @classmethod
-    def requests_desec_domain_deletion_auto_delegation(cls, name=None):
-        delegate_at = cls._find_auto_delegation_zone(name)
-        return [
-            cls.request_pdns_zone_delete(name=name, ns='LORD'),
-            cls.request_pdns_zone_delete(name=name, ns='MASTER'),
-            cls.request_pdns_update_catalog(),
-            cls.request_pdns_zone_update(name=delegate_at),
-            cls.request_pdns_zone_axfr(name=delegate_at),
-        ]
-
     @classmethod
     @classmethod
     def requests_desec_rr_sets_update(cls, name=None):
     def requests_desec_rr_sets_update(cls, name=None):
         return [
         return [

+ 2 - 2
api/desecapi/tests/test_domains.py

@@ -211,7 +211,7 @@ class DomainOwnerTestCase1(DomainOwnerTestCase):
     def test_delete_my_domain(self):
     def test_delete_my_domain(self):
         url = self.reverse('v1:domain-detail', name=self.my_domain.name)
         url = self.reverse('v1:domain-detail', name=self.my_domain.name)
 
 
-        with self.assertPdnsRequests(self.requests_desec_domain_deletion()):
+        with self.assertPdnsRequests(self.requests_desec_domain_deletion(self.my_domain)):
             response = self.client.delete(url)
             response = self.client.delete(url)
             self.assertStatus(response, status.HTTP_204_NO_CONTENT)
             self.assertStatus(response, status.HTTP_204_NO_CONTENT)
             self.assertFalse(Domain.objects.filter(pk=self.my_domain.pk).exists())
             self.assertFalse(Domain.objects.filter(pk=self.my_domain.pk).exists())
@@ -401,7 +401,7 @@ class AutoDelegationDomainOwnerTests(DomainOwnerTestCase):
     def test_delete_my_domain(self):
     def test_delete_my_domain(self):
         url = self.reverse('v1:domain-detail', name=self.my_domain.name)
         url = self.reverse('v1:domain-detail', name=self.my_domain.name)
         with self.assertPdnsRequests(
         with self.assertPdnsRequests(
-            self.requests_desec_domain_deletion_auto_delegation(name=self.my_domain.name)
+            self.requests_desec_domain_deletion(domain=self.my_domain)
         ):
         ):
             response = self.client.delete(url)
             response = self.client.delete(url)
             self.assertStatus(response, status.HTTP_204_NO_CONTENT)
             self.assertStatus(response, status.HTTP_204_NO_CONTENT)

+ 2 - 2
api/desecapi/tests/test_pdns_change_tracker.py

@@ -498,12 +498,12 @@ class DomainTestCase(PdnsChangeTrackerTestCase):
 
 
     def test_delete_single(self):
     def test_delete_single(self):
         for domain in self.domains:
         for domain in self.domains:
-            with self.assertPdnsRequests(self.requests_desec_domain_deletion(domain.name)), PDNSChangeTracker():
+            with self.assertPdnsRequests(self.requests_desec_domain_deletion(domain)), PDNSChangeTracker():
                 domain.delete()
                 domain.delete()
 
 
     def test_delete_multiple(self):
     def test_delete_multiple(self):
         with self.assertPdnsRequests([
         with self.assertPdnsRequests([
-            self.requests_desec_domain_deletion(domain.name) for domain in reversed(self.domains)
+            self.requests_desec_domain_deletion(domain) for domain in reversed(self.domains)
         ], expect_order=False), PDNSChangeTracker():
         ], expect_order=False), PDNSChangeTracker():
             for domain in self.domains:
             for domain in self.domains:
                 domain.delete()
                 domain.delete()

+ 1 - 1
api/desecapi/tests/test_user_management.py

@@ -996,7 +996,7 @@ class RenewTestCase(UserManagementTestCase, DomainOwnerTestCase):
             domain.renewal_changed = timezone.now() - timedelta(days=7)
             domain.renewal_changed = timezone.now() - timedelta(days=7)
             domain.save()
             domain.save()
 
 
-            with self.assertPdnsRequests(self.requests_desec_domain_deletion_auto_delegation(name=domain.name)):
+            with self.assertPdnsRequests(self.requests_desec_domain_deletion(domain=domain)):
                  call_command('scavenge-unused')
                  call_command('scavenge-unused')
             self.assertFalse(Domain.objects.filter(pk=domain.pk).exists())
             self.assertFalse(Domain.objects.filter(pk=domain.pk).exists())