Parcourir la source

Base64 decoding tweaks

Jeremy Stretch il y a 8 ans
Parent
commit
6542b8b198
2 fichiers modifiés avec 5 ajouts et 5 suppressions
  1. 1 3
      netbox/secrets/api/views.py
  2. 4 2
      netbox/secrets/tests/test_api.py

+ 1 - 3
netbox/secrets/api/views.py

@@ -184,9 +184,7 @@ class GetSessionKeyViewSet(ViewSet):
             key = sk.key
 
         # Encode the key using base64. (b64decode() returns a bytestring under Python 3.)
-        encoded_key = base64.b64encode(key)
-        if not isinstance(encoded_key, str):
-            encoded_key = encoded_key.decode()
+        encoded_key = base64.b64encode(key).decode()
 
         # Craft the response
         response = Response({

+ 4 - 2
netbox/secrets/tests/test_api.py

@@ -247,6 +247,8 @@ class GetSessionKeyTest(HttpStatusMixin, APITestCase):
 
     def test_get_session_key(self):
 
+        encoded_session_key = base64.b64encode(self.session_key.key).decode()
+
         url = reverse('secrets-api:get-session-key-list')
         data = {
             'private_key': PRIVATE_KEY,
@@ -255,11 +257,11 @@ class GetSessionKeyTest(HttpStatusMixin, APITestCase):
 
         self.assertHttpStatus(response, status.HTTP_200_OK)
         self.assertIsNotNone(response.data.get('session_key'))
-        self.assertNotEqual(response.data.get('session_key'), self.session_key.key)
+        self.assertNotEqual(response.data.get('session_key'), encoded_session_key)
 
     def test_get_session_key_preserved(self):
 
-        encoded_session_key = base64.b64encode(self.session_key.key)
+        encoded_session_key = base64.b64encode(self.session_key.key).decode()
 
         url = reverse('secrets-api:get-session-key-list') + '?preserve_key=True'
         data = {