Coverage for users\test\test_admin.py: 100%

18 statements  

« prev     ^ index     » next       coverage.py v7.10.7, created at 2025-10-13 15:18 +0200

1from django.test import TestCase 

2from users.models.base_user import User 

3from users.models.admin import AdminProfile 

4from users.serializers.admin import AdminSerializer 

5 

6class AdminModelSerializerTest(TestCase): 

7 def setUp(self): 

8 self.user = User.objects.create_user(email='admin@example.com', password='@dminpAss123456789', role='admin') 

9 

10 def test_admin_model(self): 

11 admin = AdminProfile.objects.create( 

12 user=self.user, 

13 nom='Legrand', 

14 prenom='Sophie', 

15 matricule='ADM999' 

16 ) 

17 self.assertEqual(admin.nom, 'Legrand') 

18 self.assertEqual(admin.user.email, 'admin@example.com') 

19 

20 def test_admin_serializer(self): 

21 admin = AdminProfile.objects.create( 

22 user=self.user, 

23 nom='Legrand', 

24 prenom='Sophie', 

25 matricule='ADM999' 

26 ) 

27 serializer = AdminSerializer(instance=admin) 

28 self.assertEqual(serializer.data['matricule'], 'ADM999') 

29 

30 def test_admin_created_is_an_admin(self): 

31 admin = AdminProfile.objects.create( 

32 user=self.user, 

33 nom='Legrand', 

34 prenom='Sophie', 

35 matricule='ADM999' 

36 ) 

37 self.assertEqual(admin.user.role, 'admin')