Coverage for benefits/core/admin/transit.py: 96%
35 statements
« prev ^ index » next coverage.py v7.8.2, created at 2025-06-06 20:07 +0000
« prev ^ index » next coverage.py v7.8.2, created at 2025-06-06 20:07 +0000
1from django.conf import settings
2from django.contrib import admin
4from benefits.core import models
5from .users import is_staff_member_or_superuser
8@admin.register(models.TransitAgency)
9class TransitAgencyAdmin(admin.ModelAdmin):
10 def get_exclude(self, request, obj=None):
11 fields = []
13 if not request.user.is_superuser:
14 fields.extend(
15 [
16 "eligibility_api_private_key",
17 "eligibility_api_public_key",
18 "sso_domain",
19 "littlepay_config",
20 "switchio_config",
21 ]
22 )
24 return fields or super().get_exclude(request, obj)
26 def get_readonly_fields(self, request, obj=None):
27 fields = []
29 if not request.user.is_superuser:
30 fields.extend(
31 [
32 "eligibility_api_id",
33 "transit_processor",
34 ]
35 )
37 return fields or super().get_readonly_fields(request, obj)
39 def has_add_permission(self, request):
40 if settings.RUNTIME_ENVIRONMENT() != settings.RUNTIME_ENVS.PROD:
41 return True
42 elif request.user and is_staff_member_or_superuser(request.user): 42 ↛ 45line 42 didn't jump to line 45 because the condition on line 42 was always true
43 return True
44 else:
45 return False
48@admin.register(models.TransitProcessor)
49class TransitProcessorAdmin(admin.ModelAdmin):
51 def get_exclude(self, request, obj=None):
52 fields = []
54 if not request.user.is_superuser:
55 fields.extend([])
57 return fields or super().get_exclude(request, obj)
59 def has_add_permission(self, request):
60 if settings.RUNTIME_ENVIRONMENT() != settings.RUNTIME_ENVS.PROD:
61 return True
62 elif request.user and request.user.is_superuser:
63 return True
64 else:
65 return False