Coverage report: 89%

Files Functions Classes

coverage.py v7.10.7, created at 2025-10-13 15:18 +0200

File function statements missing excluded coverage
ApiJO_Back\__init__.py (no function) 0 0 0 100%
ApiJO_Back\settings.py parse_duration 2 0 0 100%
ApiJO_Back\settings.py (no function) 29 0 0 100%
ApiJO_Back\urls.py (no function) 3 0 0 100%
api\__init__.py (no function) 0 0 0 100%
api\apps.py (no function) 4 0 0 100%
api\management\__init__.py (no function) 0 0 0 100%
api\management\commands\__init__.py (no function) 0 0 0 100%
api\migrations\0001_initial.py (no function) 6 0 0 100%
api\migrations\0002_rename_evenenement_epreuve_evenement.py (no function) 4 0 0 100%
api\migrations\0003_alter_epreuve_evenement.py (no function) 5 0 0 100%
api\migrations\0004_epreuve_unique_epreuve_per_discipline.py (no function) 4 0 0 100%
api\migrations\0005_alter_epreuve_evenement.py (no function) 5 0 0 100%
api\migrations\0006_remove_epreuve_unique_epreuve_per_discipline_and_more.py (no function) 4 0 0 100%
api\migrations\0007_discipline_icone.py (no function) 4 0 0 100%
api\migrations\0008_remove_epreuve_unique_epreuve_par_discipline_genre_et_evenement_and_more.py (no function) 4 0 0 100%
api\migrations\0009_offre_evenement_nb_place_restante_and_more.py (no function) 4 0 0 100%
api\migrations\0010_alter_discipline_options_alter_epreuve_options_and_more.py (no function) 5 0 0 100%
api\migrations\0011_ticket.py (no function) 5 0 0 100%
api\migrations\0012_remove_ticket_qr_code.py (no function) 4 0 0 100%
api\migrations\__init__.py (no function) 0 0 0 100%
api\models\__init__.py (no function) 6 0 0 100%
api\models\discipline.py Discipline.__str__ 1 0 0 100%
api\models\discipline.py (no function) 9 0 0 100%
api\models\epreuve.py Epreuve.__str__ 1 0 0 100%
api\models\epreuve.py (no function) 15 0 0 100%
api\models\evenement.py Evenement.__str__ 1 0 0 100%
api\models\evenement.py Evenement.save 4 0 0 100%
api\models\evenement.py (no function) 15 0 0 100%
api\models\lieu.py Lieu.__str__ 1 0 0 100%
api\models\lieu.py (no function) 8 0 0 100%
api\models\offre.py Offre.__str__ 1 1 0 0%
api\models\offre.py (no function) 11 0 0 100%
api\models\ticket.py Ticket.save 6 6 0 0%
api\models\ticket.py Ticket.__str__ 1 1 0 0%
api\models\ticket.py (no function) 15 0 0 100%
api\serializers\__init__.py (no function) 6 0 0 100%
api\serializers\discipline.py (no function) 6 0 0 100%
api\serializers\epreuve.py EpreuveSerializer.validate 5 1 0 80%
api\serializers\epreuve.py (no function) 13 0 0 100%
api\serializers\evenement.py EvenementSerializer.validate_epreuve_ids 10 8 0 20%
api\serializers\evenement.py EvenementSerializer.create 6 2 0 67%
api\serializers\evenement.py EvenementSerializer.update 13 3 0 77%
api\serializers\evenement.py (no function) 15 0 0 100%
api\serializers\lieu.py (no function) 6 0 0 100%
api\serializers\nested_serializer.py (no function) 15 0 0 100%
api\serializers\offre.py (no function) 6 0 0 100%
api\serializers\ticket.py (no function) 16 0 0 100%
api\tests\__init__.py (no function) 0 0 0 100%
api\tests\test_discipline.py DisciplineModelTest.test_str_representation 2 0 0 100%
api\tests\test_discipline.py DisciplineSerializerTest.test_serializer_content 3 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.setUp 5 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_get_list_lieux 3 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_get_detail_lieu 3 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_create_lieu_unauthenticated_fail 2 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_create_lieu_user_fail 4 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_create_lieu_admin_succed 4 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_update_lieu_unauthenticated_fail 5 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_update_lieu_user_fail 7 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_update_lieu_admin_succed 6 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_delete_lieu_unauthenticated_fail 4 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_delete_lieu_user_fail 6 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_delete_lieu_admin_succed 5 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_create_discipline_invalid_data 4 0 0 100%
api\tests\test_discipline.py DisciplineAPITest.test_serializer_invalid 3 0 0 100%
api\tests\test_discipline.py (no function) 26 0 0 100%
api\tests\test_epreuve.py EpreuveModelTest.test_str_representation 5 0 0 100%
api\tests\test_epreuve.py EpreuveSerializerTest.test_serializer_content 8 0 0 100%
api\tests\test_epreuve.py EpreuveAPITest.setUp 8 0 0 100%
api\tests\test_epreuve.py EpreuveAPITest.test_get_list_epreuves 3 0 0 100%
api\tests\test_epreuve.py EpreuveAPITest.test_get_detail_epreuve 3 0 0 100%
api\tests\test_epreuve.py EpreuveAPITest.test_create_epreuve_unauthenticated_fail 2 0 0 100%
api\tests\test_epreuve.py EpreuveAPITest.test_create_epreuve_user_fail 3 0 0 100%
api\tests\test_epreuve.py EpreuveAPITest.test_create_epreuve_admin_succeed 4 0 0 100%
api\tests\test_epreuve.py EpreuveAPITest.test_update_epreuve_admin_succeed 6 0 0 100%
api\tests\test_epreuve.py EpreuveAPITest.test_update_epreuve_user_fail 6 0 0 100%
api\tests\test_epreuve.py EpreuveAPITest.test_delete_epreuve_admin_succeed 5 0 0 100%
api\tests\test_epreuve.py EpreuveAPITest.test_delete_epreuve_user_fail 5 0 0 100%
api\tests\test_epreuve.py (no function) 23 0 0 100%
api\tests\test_evenement.py EvenementModelTest.test_str_representation 3 0 0 100%
api\tests\test_evenement.py EvenementSerializerTest.test_serializer_content 7 0 0 100%
api\tests\test_evenement.py EvenementAPITest.setUp 6 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_get_list_evenements 3 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_get_detail_evenement 3 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_create_evenement_unauthenticated_fail 2 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_create_evenement_user_fail 3 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_create_evenement_admin_succeed 4 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_update_evenement_unauthenticated_fail 3 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_update_evenement_user_fail 4 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_update_evenement_admin_succeed 6 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_delete_evenement_unauthenticated_fail 4 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_delete_evenement_user_fail 5 0 0 100%
api\tests\test_evenement.py EvenementAPITest.test_delete_evenement_admin_succeed 5 0 0 100%
api\tests\test_evenement.py (no function) 25 0 0 100%
api\tests\test_lieu.py LieuModelTest.test_str_representation 2 0 0 100%
api\tests\test_lieu.py LieuSerializerTest.test_serializer_content 3 0 0 100%
api\tests\test_lieu.py LieuAPITest.setUp 5 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_get_list_lieux 3 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_get_detail_lieu 3 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_create_lieu_unauthenticated_fail 2 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_create_lieu_user_fail 4 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_create_lieu_admin_succed 4 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_update_lieu_unauthenticated_fail 5 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_update_lieu_user_fail 7 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_update_lieu_admin_succed 6 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_delete_lieu_unauthenticated_fail 5 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_delete_lieu_user_fail 6 0 0 100%
api\tests\test_lieu.py LieuAPITest.test_delete_lieu_admin_succed 5 0 0 100%
api\tests\test_lieu.py (no function) 24 0 0 100%
api\tests\tests.py BasicMathTest.test_primaire 1 0 0 100%
api\tests\tests.py (no function) 3 0 0 100%
api\urls.py (no function) 8 0 0 100%
api\views\__init__.py (no function) 5 0 0 100%
api\views\discipline.py DisciplineListView.get_queryset 5 1 0 80%
api\views\discipline.py (no function) 26 0 0 100%
api\views\epreuve.py (no function) 25 0 0 100%
api\views\evenement.py EvenementByEpreuveView.get_object 4 4 0 0%
api\views\evenement.py (no function) 32 0 0 100%
api\views\lieu.py (no function) 25 0 0 100%
api\views\offre.py (no function) 25 0 0 100%
api\views\ticket.py TicketClientListView.get_queryset 1 1 0 0%
api\views\ticket.py TicketListView.get_queryset 1 1 0 0%
api\views\ticket.py TicketClientDetailView.get_queryset 1 1 0 0%
api\views\ticket.py TicketDetailView.get_queryset 1 1 0 0%
api\views\ticket.py TicketBatchCreateView.post 24 24 0 0%
api\views\ticket.py (no function) 27 0 0 100%
authentication\__init__.py (no function) 0 0 0 100%
authentication\apps.py (no function) 4 0 0 100%
authentication\migrations\__init__.py (no function) 0 0 0 100%
authentication\permissions.py IsAdmin.has_permission 1 0 0 100%
authentication\permissions.py IsAdminOrAuthenticatedReadOnly.has_permission 5 5 0 0%
authentication\permissions.py IsAdminOrEmploye.has_permission 1 1 0 0%
authentication\permissions.py (no function) 7 0 0 100%
authentication\serializers\__init__.py (no function) 0 0 0 100%
authentication\serializers\client.py ClientRegisterSerializer.validate_email 3 1 0 67%
authentication\serializers\client.py ClientRegisterSerializer.validate_password 5 0 0 100%
authentication\serializers\client.py ClientRegisterSerializer.validate_nom 3 1 0 67%
authentication\serializers\client.py ClientRegisterSerializer.validate_prenom 3 1 0 67%
authentication\serializers\client.py ClientRegisterSerializer.validate_telephone 3 1 0 67%
authentication\serializers\client.py ClientRegisterSerializer.create 8 0 0 100%
authentication\serializers\client.py (no function) 21 0 0 100%
authentication\serializers\employee.py EmployeeRegisterSerializer.validate_email 3 0 0 100%
authentication\serializers\employee.py EmployeeRegisterSerializer.create 13 0 0 100%
authentication\serializers\employee.py (no function) 17 0 0 100%
authentication\serializers\token.py CustomTokenObtainPairSerializer.validate 12 1 0 92%
authentication\serializers\token.py (no function) 6 0 0 100%
authentication\test\__init__.py (no function) 0 0 0 100%
authentication\test\test_Clientregistration.py ClientRegistrationTests.setUp 2 0 0 100%
authentication\test\test_Clientregistration.py ClientRegistrationTests.test_register_client_success 3 0 0 100%
authentication\test\test_Clientregistration.py ClientRegistrationTests.test_register_client_missing_fields 5 0 0 100%
authentication\test\test_Clientregistration.py ClientRegistrationTests.test_register_client_missing_email 5 0 0 100%
authentication\test\test_Clientregistration.py ClientRegistrationTests.test_register_client_duplicate_email 4 0 0 100%
authentication\test\test_Clientregistration.py (no function) 12 0 0 100%
authentication\test\test_EmployeRegistration.py EmployeeRegistrationTests.setUp 5 0 0 100%
authentication\test\test_EmployeRegistration.py EmployeeRegistrationTests.test_register_employee_success 7 0 0 100%
authentication\test\test_EmployeRegistration.py EmployeeRegistrationTests.test_register_employee_missing_fields 5 0 0 100%
authentication\test\test_EmployeRegistration.py EmployeeRegistrationTests.test_register_employee_duplicate_email 4 0 0 100%
authentication\test\test_EmployeRegistration.py EmployeeRegistrationTests.test_register_employee_invalid_email 5 0 0 100%
authentication\test\test_EmployeRegistration.py EmployeeRegistrationTests.test_register_employee_short_password 5 0 0 100%
authentication\test\test_EmployeRegistration.py (no function) 14 0 0 100%
authentication\test\test_login.py LoginTests.setUp 4 0 0 100%
authentication\test\test_login.py LoginTests.test_admin_login_success 6 0 0 100%
authentication\test\test_login.py LoginTests.test_employe_login_success 6 0 0 100%
authentication\test\test_login.py LoginTests.test_client_login_success 6 0 0 100%
authentication\test\test_login.py LoginTests.test_login_failure_wrong_password 3 0 0 100%
authentication\test\test_login.py LoginTests.test_login_failure_nonexistent_user 3 0 0 100%
authentication\test\test_login.py (no function) 13 0 0 100%
authentication\test\test_passwordRegistration.py ClientPasswordValidationTests.setUp 2 0 0 100%
authentication\test\test_passwordRegistration.py ClientPasswordValidationTests._post_with_password 3 0 0 100%
authentication\test\test_passwordRegistration.py ClientPasswordValidationTests.test_password_too_short 4 0 0 100%
authentication\test\test_passwordRegistration.py ClientPasswordValidationTests.test_password_numeric_only 4 0 0 100%
authentication\test\test_passwordRegistration.py ClientPasswordValidationTests.test_password_valid 2 0 0 100%
authentication\test\test_passwordRegistration.py (no function) 11 0 0 100%
authentication\test\test_permission.py get_token_for_user 2 0 0 100%
authentication\test\test_permission.py EmployeePermissionTests.setUp 5 0 0 100%
authentication\test\test_permission.py EmployeePermissionTests.test_admin_can_access_employee_register 5 0 0 100%
authentication\test\test_permission.py EmployeePermissionTests.test_client_cannot_access_employee_register 4 0 0 100%
authentication\test\test_permission.py EmployeePermissionTests.test_employee_cannot_access_employee_register 4 0 0 100%
authentication\test\test_permission.py EmployeePermissionTests.test_unauthenticated_user_cannot_access_employee_register 2 0 0 100%
authentication\test\test_permission.py (no function) 13 0 0 100%
authentication\urls.py (no function) 6 0 0 100%
authentication\validators\__init__.py (no function) 0 0 0 100%
authentication\validators\emailValidator.py EmailValidator.__init__ 1 0 0 100%
authentication\validators\emailValidator.py EmailValidator.__call__ 7 2 0 71%
authentication\validators\emailValidator.py EmailValidator.get_help_text 1 1 0 0%
authentication\validators\emailValidator.py (no function) 8 0 0 100%
authentication\validators\passwordValidator.py StrongPasswordValidator.validate 10 3 0 70%
authentication\validators\passwordValidator.py StrongPasswordValidator.get_help_text 1 1 0 0%
authentication\validators\passwordValidator.py (no function) 6 0 0 100%
authentication\views\__init__.py (no function) 0 0 0 100%
authentication\views\client.py (no function) 9 0 0 100%
authentication\views\employe.py (no function) 8 0 0 100%
authentication\views\token.py (no function) 4 0 0 100%
manage.py main 6 2 0 67%
manage.py (no function) 5 0 0 100%
payment\__init__.py (no function) 0 0 0 100%
payment\apps.py (no function) 4 0 0 100%
payment\infrastructure\payement_gateway.py PaymentGatewayMock.create_payment_intent 3 3 0 0%
payment\infrastructure\payement_gateway.py (no function) 3 0 0 100%
payment\migrations\__init__.py (no function) 0 0 0 100%
payment\serializers.py (no function) 11 0 0 100%
payment\services\payment_service.py PaymentService.create_payment_intent 3 3 0 0%
payment\services\payment_service.py PaymentService.confirm_payment 1 1 0 0%
payment\services\payment_service.py PaymentService.refund 1 1 0 0%
payment\services\payment_service.py (no function) 5 0 0 100%
payment\services\ticket_service.py TicketService.create_tickets_from_items 15 15 0 0%
payment\services\ticket_service.py (no function) 4 0 0 100%
payment\tests.py (no function) 1 0 0 100%
payment\urls.py (no function) 3 0 0 100%
payment\views.py MockPaymentView.post 24 24 0 0%
payment\views.py (no function) 14 0 0 100%
qr_code_service\__init__.py (no function) 0 0 0 100%
qr_code_service\apps.py (no function) 4 0 0 100%
qr_code_service\migrations\0001_initial.py (no function) 6 0 0 100%
qr_code_service\migrations\0002_alter_qrcode_data.py (no function) 4 0 0 100%
qr_code_service\migrations\0003_qrcode_create_at_alter_qrcode_data.py (no function) 5 0 0 100%
qr_code_service\migrations\0004_alter_qrcode_ticket.py (no function) 5 0 0 100%
qr_code_service\migrations\__init__.py (no function) 0 0 0 100%
qr_code_service\models.py QrCode.__str__ 1 1 0 0%
qr_code_service\models.py (no function) 7 0 0 100%
qr_code_service\serializers.py (no function) 12 0 0 100%
qr_code_service\tests.py (no function) 1 0 0 100%
qr_code_service\urls.py (no function) 3 0 0 100%
qr_code_service\views.py QRCodeCreateByTicket.post 20 20 0 0%
qr_code_service\views.py TicketByKeyView.get 6 6 0 0%
qr_code_service\views.py (no function) 23 0 0 100%
users\__init__.py (no function) 0 0 0 100%
users\apps.py (no function) 4 0 0 100%
users\management\__init__.py (no function) 0 0 0 100%
users\management\commands\__init__.py (no function) 0 0 0 100%
users\managers.py UserManager.create_user 7 1 0 86%
users\managers.py UserManager.create_admin 6 1 0 83%
users\managers.py UserManager.create_superuser 4 0 0 100%
users\managers.py (no function) 5 0 0 100%
users\migrations\0001_initial.py (no function) 7 0 0 100%
users\migrations\0002_alter_adminprofile_options_and_more.py (no function) 7 0 0 100%
users\migrations\__init__.py (no function) 0 0 0 100%
users\models\__init__.py (no function) 5 0 0 100%
users\models\admin.py AdminProfile.__str__ 1 1 0 0%
users\models\admin.py (no function) 11 0 0 100%
users\models\base_user.py User.has_admin_access 1 1 0 0%
users\models\base_user.py User.get_full_name 1 1 0 0%
users\models\base_user.py User.get_short_name 1 1 0 0%
users\models\base_user.py User.__str__ 1 1 0 0%
users\models\base_user.py (no function) 22 0 0 100%
users\models\client.py ClientProfile.save 4 0 0 100%
users\models\client.py ClientProfile.__str__ 1 1 0 0%
users\models\client.py (no function) 15 0 0 100%
users\models\employe.py EmployeProfile.__str__ 1 1 0 0%
users\models\employe.py (no function) 13 0 0 100%
users\serializers\__init__.py (no function) 4 0 0 100%
users\serializers\admin.py (no function) 7 0 0 100%
users\serializers\base_user.py UserSerializer.create 5 5 0 0%
users\serializers\base_user.py UserSerializer.update 7 7 0 0%
users\serializers\base_user.py (no function) 10 0 0 100%
users\serializers\client.py ClientSerializer.create 1 1 0 0%
users\serializers\client.py (no function) 15 0 0 100%
users\serializers\employe.py EmployeSerializer.create 1 1 0 0%
users\serializers\employe.py (no function) 10 0 0 100%
users\test\__init__.py (no function) 0 0 0 100%
users\test\test_admin.py AdminModelSerializerTest.setUp 1 0 0 100%
users\test\test_admin.py AdminModelSerializerTest.test_admin_model 3 0 0 100%
users\test\test_admin.py AdminModelSerializerTest.test_admin_serializer 3 0 0 100%
users\test\test_admin.py AdminModelSerializerTest.test_admin_created_is_an_admin 2 0 0 100%
users\test\test_admin.py (no function) 9 0 0 100%
users\test\test_client.py ClientModelSerializerTest.setUp 1 0 0 100%
users\test\test_client.py ClientModelSerializerTest.test_client_model_generates_encrypted_key 3 0 0 100%
users\test\test_client.py ClientModelSerializerTest.test_client_serializer_output 5 0 0 100%
users\test\test_client.py ClientModelSerializerTest.test_client_create_is_a_client 2 0 0 100%
users\test\test_client.py (no function) 9 0 0 100%
users\test\test_employe.py EmployeModelSerializerTest.setUp 1 0 0 100%
users\test\test_employe.py EmployeModelSerializerTest.test_employe_model_creation 3 0 0 100%
users\test\test_employe.py EmployeModelSerializerTest.test_employe_serializer_output 3 0 0 100%
users\test\test_employe.py EmployeModelSerializerTest.test_employe_create_is_an_employe 2 0 0 100%
users\test\test_employe.py (no function) 9 0 0 100%
users\test\test_user.py UserModelTest.test_create_user_with_valid_data 4 0 0 100%
users\test\test_user.py (no function) 4 0 0 100%
users\urls.py (no function) 6 0 0 100%
users\views\__init__.py (no function) 1 0 0 100%
users\views\client.py ClientListView.get_queryset 1 1 0 0%
users\views\client.py ClientSetInactiveView.perform_update 5 5 0 0%
users\views\client.py (no function) 13 0 0 100%
users\views\employe.py EmployeListView.get_queryset 1 1 0 0%
users\views\employe.py EmployeSetInactiveView.perform_update 5 5 0 0%
users\views\employe.py (no function) 13 0 0 100%
Total   1698 184 0 89%

No items found using the specified filter.