authentik.core.tests.test_api_utils
Test API Utils
1"""Test API Utils""" 2 3from rest_framework.exceptions import ValidationError 4from rest_framework.serializers import ( 5 HyperlinkedModelSerializer, 6) 7from rest_framework.serializers import ( 8 ModelSerializer as BaseModelSerializer, 9) 10from rest_framework.test import APITestCase 11 12from authentik.core.api.utils import ModelSerializer as CustomModelSerializer 13from authentik.core.api.utils import is_dict 14from authentik.lib.utils.reflection import all_subclasses 15 16 17class TestAPIUtils(APITestCase): 18 """Test API Utils""" 19 20 def test_is_dict(self): 21 """Test is_dict""" 22 self.assertIsNone(is_dict({})) 23 with self.assertRaises(ValidationError): 24 is_dict("foo") 25 26 def test_all_serializers_descend_from_custom(self): 27 """Test that every serializer we define descends from our own ModelSerializer""" 28 # Weirdly, there's only one serializer in `rest_framework` which descends from 29 # ModelSerializer: HyperlinkedModelSerializer 30 expected = {CustomModelSerializer, HyperlinkedModelSerializer} 31 actual = set(all_subclasses(BaseModelSerializer)) - set( 32 all_subclasses(CustomModelSerializer) 33 ) 34 35 self.assertEqual(expected, actual)
class
TestAPIUtils(rest_framework.test.APITestCase):
18class TestAPIUtils(APITestCase): 19 """Test API Utils""" 20 21 def test_is_dict(self): 22 """Test is_dict""" 23 self.assertIsNone(is_dict({})) 24 with self.assertRaises(ValidationError): 25 is_dict("foo") 26 27 def test_all_serializers_descend_from_custom(self): 28 """Test that every serializer we define descends from our own ModelSerializer""" 29 # Weirdly, there's only one serializer in `rest_framework` which descends from 30 # ModelSerializer: HyperlinkedModelSerializer 31 expected = {CustomModelSerializer, HyperlinkedModelSerializer} 32 actual = set(all_subclasses(BaseModelSerializer)) - set( 33 all_subclasses(CustomModelSerializer) 34 ) 35 36 self.assertEqual(expected, actual)
Test API Utils
def
test_is_dict(self):
21 def test_is_dict(self): 22 """Test is_dict""" 23 self.assertIsNone(is_dict({})) 24 with self.assertRaises(ValidationError): 25 is_dict("foo")
Test is_dict
def
test_all_serializers_descend_from_custom(self):
27 def test_all_serializers_descend_from_custom(self): 28 """Test that every serializer we define descends from our own ModelSerializer""" 29 # Weirdly, there's only one serializer in `rest_framework` which descends from 30 # ModelSerializer: HyperlinkedModelSerializer 31 expected = {CustomModelSerializer, HyperlinkedModelSerializer} 32 actual = set(all_subclasses(BaseModelSerializer)) - set( 33 all_subclasses(CustomModelSerializer) 34 ) 35 36 self.assertEqual(expected, actual)
Test that every serializer we define descends from our own ModelSerializer