Переглянути джерело

feat(api): adds tests for underscore domains

Nils Wisiol 6 роки тому
батько
коміт
8eaf56d7a8

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

@@ -221,9 +221,9 @@ class MockPDNSTestCase(APITestCase):
         if not name:
             return None
 
-        name = name.translate(str.maketrans({'/': '=2F', '_': '=5F'}))
+        name = cls._normalize_name(name)
 
-        return cls._normalize_name(name)
+        return name.translate(str.maketrans({'/': '=2F', '_': '=5F'}))  # make sure =5F is not lower-cased
 
     @classmethod
     def _normalize_name(cls, arg):

+ 4 - 1
api/desecapi/tests/testdomains.py

@@ -84,10 +84,13 @@ class DomainOwnerTestCase1(DomainOwnerTestCase):
         self.assertStatus(response, status.HTTP_404_NOT_FOUND)
 
     def test_create_domains(self):
+        self.owner.limit_domains = 100
+        self.owner.save()
         for name in [
             '0.8.0.0.0.1.c.a.2.4.6.0.c.e.e.d.4.4.0.1.a.0.1.0.8.f.4.0.1.0.a.2.ip6.arpa',
             'very.long.domain.name.' + self.random_domain_name(),
-            self.random_domain_name()
+            self.random_domain_name(),
+            'very.long.domain.name.with_underscore.' + self.random_domain_name(),
         ]:
             with self.assertPdnsRequests(self.requests_desec_domain_creation(name)):
                 response = self.client.post(self.reverse('v1:domain-list'), {'name': name})

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

@@ -37,7 +37,7 @@ class AuthenticatedRRSetTestCase(DomainOwnerTestCase):
                      'NAPTR', 'NS', 'NSEC', 'NSEC3', 'OPENPGPKEY', 'PTR', 'RP', 'SPF', 'SSHFP', 'SRV', 'TKEY', 'TSIG',
                      'TLSA', 'SMIMEA', 'TXT', 'URI']
 
-    SUBNAMES = ['foo', 'bar.baz', 'q.w.e.r.t', '*', '*.foobar']
+    SUBNAMES = ['foo', 'bar.baz', 'q.w.e.r.t', '*', '*.foobar', '_', '-foo.test', '_bar']
 
     @classmethod
     def _test_rr_sets(cls, subname=None, type_=None, records=None, ttl=None):