Coverage for api/serializers/user.py: 100.00%

20 statements  

« prev     ^ index     » next       coverage.py v7.8.0, created at 2025-04-15 02:38 +0000

1from rest_framework import serializers 

2 

3from django.contrib.auth.models import User as DjangoUser 

4 

5from core.models import user as core_user_models 

6from .core import DeletedModelDataSerializer 

7 

8 

9class DjangoUserSerializer(serializers.HyperlinkedModelSerializer): 

10 class Meta: 

11 model = DjangoUser 

12 fields = [ 

13 'username', 

14 'password', 

15 ] 

16 extra_kwargs = {'password': {'write_only': True}} 

17 

18 

19class CoreUserDataSerializer(serializers.HyperlinkedModelSerializer): 

20 class Meta: 

21 model = core_user_models.CoreUserData 

22 fields = [ 

23 'id', 

24 'created_by', 

25 'created_on', 

26 'deleted', 

27 'first_name', 

28 'last_name', 

29 'email', 

30 'secondary_email', 

31 'home_phone', 

32 'mobile_phone', 

33 'work_phone', 

34 'address_line_1', 

35 'address_line_2', 

36 'city', 

37 'state', 

38 'postal_code', 

39 'timezone', 

40 ] 

41 

42 

43class CoreUserSerializer(serializers.HyperlinkedModelSerializer): 

44 class Meta: 

45 model = core_user_models.CoreUser 

46 fields = [ 

47 'id', 

48 'created_by', 

49 'created_on', 

50 'deleted', 

51 'current', 

52 'user', 

53 ] 

54 

55 # TODO: Get created_by to work with the CoreUserSerializer; it's nested so it's nasty 

56 current = CoreUserDataSerializer() 

57 user = DjangoUserSerializer() 

58 deleted = DeletedModelDataSerializer()