Przeglądaj źródła

feat(tests): simplify token access

Peter Thomassen 5 lat temu
rodzic
commit
567c2fd100

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

@@ -689,7 +689,7 @@ class DesecTestCase(MockPDNSTestCase):
     def create_token(cls, user):
         token = Token.objects.create(user=user)
         token.save()
-        return token
+        return token.key
 
     @classmethod
     def create_user(cls, **kwargs):
@@ -903,7 +903,7 @@ class DomainOwnerTestCase(DesecTestCase, PublicSuffixMockMixin):
 
     def setUp(self):
         super().setUp()
-        self.client.credentials(HTTP_AUTHORIZATION='Token ' + self.token.key)
+        self.client.credentials(HTTP_AUTHORIZATION='Token ' + self.token)
         self.setUpMockPatch()
 
 
@@ -939,8 +939,8 @@ class DynDomainOwnerTestCase(DomainOwnerTestCase):
     def setUp(self):
         super().setUp()
         self.client_token_authorized = self.client_class()
-        self.client.set_credentials_basic_auth(self.my_domain.name.lower(), self.token.key)
-        self.client_token_authorized.set_credentials_token_auth(self.token.key)
+        self.client.set_credentials_basic_auth(self.my_domain.name.lower(), self.token)
+        self.client_token_authorized.set_credentials_token_auth(self.token)
 
 
 class AuthenticatedRRSetBaseTestCase(DomainOwnerTestCase):

+ 8 - 8
api/desecapi/tests/test_authentication.py

@@ -21,11 +21,11 @@ class DynUpdateAuthenticationTestCase(DynDomainOwnerTestCase):
             self.client.set_credentials_basic_auth(username, token)
             self.assertDynDNS12Status(code)
 
-        assertDynDNS12AuthenticationStatus('', self.token.key, HTTP_200_OK)
-        assertDynDNS12AuthenticationStatus(self.owner.get_username(), self.token.key, HTTP_200_OK)
-        assertDynDNS12AuthenticationStatus(self.my_domain.name, self.token.key, HTTP_200_OK)
-        assertDynDNS12AuthenticationStatus(' ' + self.my_domain.name, self.token.key, HTTP_401_UNAUTHORIZED)
-        assertDynDNS12AuthenticationStatus('wrong', self.token.key, HTTP_401_UNAUTHORIZED)
+        assertDynDNS12AuthenticationStatus('', self.token, HTTP_200_OK)
+        assertDynDNS12AuthenticationStatus(self.owner.get_username(), self.token, HTTP_200_OK)
+        assertDynDNS12AuthenticationStatus(self.my_domain.name, self.token, HTTP_200_OK)
+        assertDynDNS12AuthenticationStatus(' ' + self.my_domain.name, self.token, HTTP_401_UNAUTHORIZED)
+        assertDynDNS12AuthenticationStatus('wrong', self.token, HTTP_401_UNAUTHORIZED)
         assertDynDNS12AuthenticationStatus('', 'wrong', HTTP_401_UNAUTHORIZED)
         assertDynDNS12AuthenticationStatus(self.user.get_username(), 'wrong', HTTP_401_UNAUTHORIZED)
 
@@ -52,6 +52,6 @@ class TokenAuthenticationTestCase(DynDomainOwnerTestCase):
         self.assertStatus(self._get_domains(), code)
 
     def test_token_case_sensitive(self):
-        self.assertAuthenticationStatus(HTTP_200_OK, self.token.key)
-        self.assertAuthenticationStatus(HTTP_401_UNAUTHORIZED, self.token.key.upper())
-        self.assertAuthenticationStatus(HTTP_401_UNAUTHORIZED, self.token.key.lower())
+        self.assertAuthenticationStatus(HTTP_200_OK, self.token)
+        self.assertAuthenticationStatus(HTTP_401_UNAUTHORIZED, self.token.upper())
+        self.assertAuthenticationStatus(HTTP_401_UNAUTHORIZED, self.token.lower())

+ 5 - 5
api/desecapi/tests/test_dyndns12update.py

@@ -19,14 +19,14 @@ class DynDNS12UpdateTest(DynDomainOwnerTestCase):
                 self.assertStatus(response, status.HTTP_404_NOT_FOUND)
 
     def test_identification_by_domain_name(self):
-        self.client.set_credentials_basic_auth(self.my_domain.name + '.invalid', self.token.key)
+        self.client.set_credentials_basic_auth(self.my_domain.name + '.invalid', self.token)
         response = self.assertDynDNS12NoUpdate(mock_remote_addr='10.5.5.6')
         self.assertStatus(response, status.HTTP_401_UNAUTHORIZED)
 
     def test_identification_by_query_params(self):
         # /update?username=foobar.dedyn.io&password=secret
         self.client.set_credentials_basic_auth(None, None)
-        response = self.assertDynDNS12Update(username=self.my_domain.name, password=self.token.key)
+        response = self.assertDynDNS12Update(username=self.my_domain.name, password=self.token)
         self.assertStatus(response, status.HTTP_200_OK)
         self.assertEqual(response.data, 'good')
         self.assertIP(ipv4='127.0.0.1')
@@ -158,14 +158,14 @@ class SingleDomainDynDNS12UpdateTest(DynDNS12UpdateTest):
     NUM_OWNED_DOMAINS = 1
 
     def test_identification_by_token(self):
-        self.client.set_credentials_basic_auth('', self.token.key)
+        self.client.set_credentials_basic_auth('', self.token)
         response = self.assertDynDNS12Update(self.my_domain.name, mock_remote_addr='10.5.5.6')
         self.assertStatus(response, status.HTTP_200_OK)
         self.assertEqual(response.data, 'good')
         self.assertIP(ipv4='10.5.5.6')
 
     def test_identification_by_email(self):
-        self.client.set_credentials_basic_auth(self.owner.email, self.token.key)
+        self.client.set_credentials_basic_auth(self.owner.email, self.token)
         response = self.assertDynDNS12Update(self.my_domain.name, mock_remote_addr='10.5.5.6')
         self.assertStatus(response, status.HTTP_200_OK)
         self.assertEqual(response.data, 'good')
@@ -179,7 +179,7 @@ class MultipleDomainDynDNS12UpdateTest(DynDNS12UpdateTest):
         """
         Test if the conflict of having multiple domains, but not specifying which to update is correctly recognized.
         """
-        self.client.set_credentials_basic_auth('', self.token.key)
+        self.client.set_credentials_basic_auth('', self.token)
         response = self.client.get(self.reverse('v1:dyndns12update'), REMOTE_ADDR='10.5.5.7')
         self.assertStatus(response, status.HTTP_409_CONFLICT)