Coverage Report: 76.39%

Files Functions Classes

coverage.py v7.6.7, created at 2025-08-14 10:31 +0000

File function statements missing excluded branches partial coverage
website/activemembers/__init__.py (no function) 0 0 0 0 0 100.00%
website/activemembers/admin.py MemberGroupMembershipInlineFormSet.__init__ 5 5 0 2 0 0.00%
website/activemembers/admin.py TypeFilter.lookups 1 1 0 0 0 0.00%
website/activemembers/admin.py TypeFilter.queryset 7 7 0 6 0 0.00%
website/activemembers/admin.py LectureYearFilter.lookups 3 3 0 0 0 0.00%
website/activemembers/admin.py LectureYearFilter.queryset 5 5 0 2 0 0.00%
website/activemembers/admin.py ActiveMembershipsFilter.lookups 1 1 0 0 0 0.00%
website/activemembers/admin.py ActiveMembershipsFilter.queryset 6 6 0 4 0 0.00%
website/activemembers/admin.py MemberGroupMembershipAdmin.changelist_view 2 2 0 0 0 0.00%
website/activemembers/admin.py MemberGroupMembershipAdmin.export 7 7 0 2 0 0.00%
website/activemembers/admin.py (no function) 72 0 0 0 0 100.00%
website/activemembers/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/activemembers/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/activemembers/api/v2/filters.py MemberGroupTypeFilter.filter_queryset 8 8 0 6 0 0.00%
website/activemembers/api/v2/filters.py MemberGroupTypeFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/activemembers/api/v2/filters.py MemberGroupDateFilter.filter_queryset 6 6 0 4 0 0.00%
website/activemembers/api/v2/filters.py MemberGroupDateFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/activemembers/api/v2/filters.py (no function) 10 0 0 0 0 100.00%
website/activemembers/api/v2/serializers/member_group.py MemberGroupSerializer.__init__ 3 0 0 2 0 100.00%
website/activemembers/api/v2/serializers/member_group.py MemberGroupSerializer._members 2 2 0 0 0 0.00%
website/activemembers/api/v2/serializers/member_group.py MemberGroupSerializer._type 7 4 0 6 2 38.46%
website/activemembers/api/v2/serializers/member_group.py (no function) 23 0 0 0 0 100.00%
website/activemembers/api/v2/serializers/member_group_membership.py MemberGroupMembershipSerializer._since 1 1 0 0 0 0.00%
website/activemembers/api/v2/serializers/member_group_membership.py MemberGroupMembershipSerializer._until 3 3 0 2 0 0.00%
website/activemembers/api/v2/serializers/member_group_membership.py (no function) 13 0 0 0 0 100.00%
website/activemembers/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/activemembers/api/v2/views.py MemberGroupDetailView._get_memberships 3 3 0 2 0 0.00%
website/activemembers/api/v2/views.py MemberGroupDetailView.get_serializer_context 3 3 0 0 0 0.00%
website/activemembers/api/v2/views.py BoardDetailView.get_object 4 4 0 0 0 0.00%
website/activemembers/api/v2/views.py (no function) 23 0 0 0 0 100.00%
website/activemembers/apps.py ActiveMembersConfig.ready 1 0 0 0 0 100.00%
website/activemembers/apps.py ActiveMembersConfig.menu_items 1 0 0 0 0 100.00%
website/activemembers/apps.py (no function) 8 0 0 0 0 100.00%
website/activemembers/backends.py MemberGroupBackend.authenticate 1 1 0 0 0 0.00%
website/activemembers/backends.py MemberGroupBackend.get_user 1 1 0 0 0 0.00%
website/activemembers/backends.py MemberGroupBackend._get_permissions 18 1 0 8 1 92.31%
website/activemembers/backends.py MemberGroupBackend.get_all_permissions 1 0 0 0 0 100.00%
website/activemembers/backends.py MemberGroupBackend.get_group_permissions 1 1 0 0 0 0.00%
website/activemembers/backends.py MemberGroupBackend.has_perm 3 1 0 2 1 60.00%
website/activemembers/backends.py MemberGroupBackend.has_module_perms 6 1 0 6 1 83.33%
website/activemembers/backends.py (no function) 13 0 0 0 0 100.00%
website/activemembers/emails.py send_gsuite_welcome_message 1 1 0 0 0 0.00%
website/activemembers/emails.py send_gsuite_suspended_message 1 1 0 0 0 0.00%
website/activemembers/emails.py (no function) 4 0 0 0 0 100.00%
website/activemembers/forms.py MemberGroupForm.__init__ 3 3 0 2 0 0.00%
website/activemembers/forms.py (no function) 12 0 0 0 0 100.00%
website/activemembers/gsuite.py GSuiteUserService.__init__ 1 0 0 0 0 100.00%
website/activemembers/gsuite.py GSuiteUserService.directory_api 3 3 0 2 0 0.00%
website/activemembers/gsuite.py GSuiteUserService._generate_password 2 2 0 0 0 0.00%
website/activemembers/gsuite.py GSuiteUserService.create_user 9 9 0 2 0 0.00%
website/activemembers/gsuite.py GSuiteUserService.update_user 4 4 0 2 0 0.00%
website/activemembers/gsuite.py GSuiteUserService.suspend_user 1 1 0 0 0 0.00%
website/activemembers/gsuite.py GSuiteUserService.delete_user 1 1 0 0 0 0.00%
website/activemembers/gsuite.py GSuiteUserService.get_suspended_users 2 2 0 0 0 0.00%
website/activemembers/gsuite.py (no function) 20 0 0 0 0 100.00%
website/activemembers/models.py ActiveMemberGroupManager.get_queryset 1 0 0 0 0 100.00%
website/activemembers/models.py MemberGroup.contact_address 3 0 0 2 0 100.00%
website/activemembers/models.py MemberGroup.__init__ 4 0 0 2 0 100.00%
website/activemembers/models.py MemberGroup.save 5 2 0 2 1 57.14%
website/activemembers/models.py MemberGroup.delete 3 3 0 2 0 0.00%
website/activemembers/models.py MemberGroup.clean 2 0 0 2 0 100.00%
website/activemembers/models.py MemberGroup.__str__ 1 0 0 0 0 100.00%
website/activemembers/models.py MemberGroup.get_absolute_url 10 5 0 0 0 50.00%
website/activemembers/models.py Committee.get_absolute_url 1 0 0 0 0 100.00%
website/activemembers/models.py Society.get_absolute_url 1 0 0 0 0 100.00%
website/activemembers/models.py Board.save 2 2 0 0 0 0.00%
website/activemembers/models.py Board.clean 4 1 0 4 1 75.00%
website/activemembers/models.py Board.get_absolute_url 1 0 0 0 0 100.00%
website/activemembers/models.py Board.validate_unique 5 0 0 4 0 100.00%
website/activemembers/models.py ActiveMembershipManager.get_queryset 1 0 0 0 0 100.00%
website/activemembers/models.py MemberGroupMembership.initial_connected_membership 4 4 0 2 0 0.00%
website/activemembers/models.py MemberGroupMembership.latest_connected_membership 5 5 0 4 0 0.00%
website/activemembers/models.py MemberGroupMembership.is_active 1 0 0 0 0 100.00%
website/activemembers/models.py MemberGroupMembership.clean 11 4 0 8 3 63.16%
website/activemembers/models.py MemberGroupMembership.validate_unique 12 1 0 8 1 90.00%
website/activemembers/models.py MemberGroupMembership.save 3 0 0 0 0 100.00%
website/activemembers/models.py MemberGroupMembership.__str__ 1 0 0 0 0 100.00%
website/activemembers/models.py Mentorship.__str__ 1 0 0 0 0 100.00%
website/activemembers/models.py (no function) 101 0 0 0 0 100.00%
website/activemembers/services.py generate_statistics 7 7 0 2 0 0.00%
website/activemembers/services.py revoke_staff_permission_for_users_in_no_commitee 8 8 0 4 0 0.00%
website/activemembers/services.py (no function) 6 0 0 0 0 100.00%
website/activemembers/signals.py pre_member_save 16 14 0 10 1 11.54%
website/activemembers/signals.py (no function) 15 0 0 0 0 100.00%
website/activemembers/sitemaps.py StaticViewSitemap.items 1 0 0 0 0 100.00%
website/activemembers/sitemaps.py StaticViewSitemap.location 1 0 0 0 0 100.00%
website/activemembers/sitemaps.py CommitteeSitemap.items 1 0 0 0 0 100.00%
website/activemembers/sitemaps.py CommitteeSitemap.location 1 0 0 0 0 100.00%
website/activemembers/sitemaps.py SocietySitemap.items 1 0 0 0 0 100.00%
website/activemembers/sitemaps.py SocietySitemap.location 1 0 0 0 0 100.00%
website/activemembers/sitemaps.py BoardSitemap.items 1 0 0 0 0 100.00%
website/activemembers/sitemaps.py BoardSitemap.location 1 0 0 0 0 100.00%
website/activemembers/sitemaps.py (no function) 19 0 0 0 0 100.00%
website/activemembers/tasks.py revoke_staff 3 3 0 2 0 0.00%
website/activemembers/tasks.py delete_gsuite_users 3 3 0 2 0 0.00%
website/activemembers/tasks.py (no function) 10 10 0 0 0 0.00%
website/activemembers/templatetags/activemembers_cards.py membergroup_card 4 4 0 2 0 0.00%
website/activemembers/templatetags/activemembers_cards.py membergroup_member_card 15 15 0 10 0 0.00%
website/activemembers/templatetags/activemembers_cards.py (no function) 11 0 0 0 0 100.00%
website/activemembers/urls.py (no function) 4 0 0 0 0 100.00%
website/activemembers/views.py _MemberGroupDetailView._get_memberships 1 1 0 0 0 0.00%
website/activemembers/views.py _MemberGroupDetailView.get_context_data 7 7 0 0 0 0.00%
website/activemembers/views.py CommitteeIndexView.get_queryset 3 3 0 0 0 0.00%
website/activemembers/views.py CommitteeIndexView.get_ordering 1 1 0 0 0 0.00%
website/activemembers/views.py SocietyIndexView.get_queryset 3 3 0 0 0 0.00%
website/activemembers/views.py SocietyIndexView.get_ordering 1 1 0 0 0 0.00%
website/activemembers/views.py BoardIndexView.get_queryset 5 5 0 2 0 0.00%
website/activemembers/views.py BoardIndexView.get_context_data 3 3 0 0 0 0.00%
website/activemembers/views.py BoardIndexView.dispatch 3 3 0 0 0 0.00%
website/activemembers/views.py BoardDetailView._get_memberships 1 1 0 0 0 0.00%
website/activemembers/views.py BoardDetailView.get_object 1 1 0 0 0 0.00%
website/activemembers/views.py (no function) 40 0 0 0 0 100.00%
website/announcements/__init__.py (no function) 0 0 0 0 0 100.00%
website/announcements/admin.py AnnouncementAdmin.content_html 1 1 0 0 0 0.00%
website/announcements/admin.py AnnouncementAdmin.visible 1 1 0 0 0 0.00%
website/announcements/admin.py FrontpageArticleAdmin.visible 1 1 0 0 0 0.00%
website/announcements/admin.py SlideAdmin.visible 1 1 0 0 0 0.00%
website/announcements/admin.py EventAdmin.get_inlines 1 0 0 0 0 100.00%
website/announcements/admin.py (no function) 30 0 0 0 0 100.00%
website/announcements/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/announcements/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/announcements/api/v2/serializers.py (no function) 19 0 0 0 0 100.00%
website/announcements/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/announcements/api/v2/views.py AnnouncementListView.list 4 4 0 0 0 0.00%
website/announcements/api/v2/views.py AnnouncementDetailView.hide 2 2 0 0 0 0.00%
website/announcements/api/v2/views.py (no function) 29 0 0 0 0 100.00%
website/announcements/apps.py (no function) 5 0 0 0 0 100.00%
website/announcements/context_processors.py announcements 6 0 0 2 0 100.00%
website/announcements/context_processors.py (no function) 2 0 0 0 0 100.00%
website/announcements/middleware.py AnnouncementMiddleware.__init__ 1 0 0 0 0 100.00%
website/announcements/middleware.py AnnouncementMiddleware.__call__ 2 0 0 0 0 100.00%
website/announcements/middleware.py (no function) 4 0 0 0 0 100.00%
website/announcements/models.py VisibleObjectManager.get_queryset 1 0 0 0 0 100.00%
website/announcements/models.py Announcement.__str__ 1 0 0 0 0 100.00%
website/announcements/models.py Announcement.is_visible 1 1 0 0 0 0.00%
website/announcements/models.py FrontpageArticle.__str__ 1 0 0 0 0 100.00%
website/announcements/models.py FrontpageArticle.is_visible 1 1 0 0 0 0.00%
website/announcements/models.py validate_image 1 1 0 0 0 0.00%
website/announcements/models.py Slide.__init__ 4 1 0 2 1 66.67%
website/announcements/models.py Slide.delete 3 3 0 2 0 0.00%
website/announcements/models.py Slide.save 5 5 0 2 0 0.00%
website/announcements/models.py Slide.is_visible 1 1 0 0 0 0.00%
website/announcements/models.py Slide.url 5 5 0 4 0 0.00%
website/announcements/models.py Slide.__str__ 1 0 0 0 0 100.00%
website/announcements/models.py (no function) 59 0 0 0 0 100.00%
website/announcements/services.py get_announcements 5 0 0 4 0 100.00%
website/announcements/services.py close_announcement 5 0 0 4 0 100.00%
website/announcements/services.py (no function) 3 0 0 0 0 100.00%
website/announcements/templatetags/frontpage_articles.py render_frontpage_articles 1 0 0 0 0 100.00%
website/announcements/templatetags/frontpage_articles.py (no function) 5 0 0 0 0 100.00%
website/announcements/templatetags/slider.py render_slider 1 0 0 0 0 100.00%
website/announcements/templatetags/slider.py (no function) 5 0 0 0 0 100.00%
website/announcements/urls.py (no function) 4 0 0 0 0 100.00%
website/announcements/views.py close_announcement_view 8 0 0 2 0 100.00%
website/announcements/views.py (no function) 5 0 0 0 0 100.00%
website/documents/__init__.py (no function) 0 0 0 0 0 100.00%
website/documents/admin.py LectureYearFilter.lookups 5 5 0 2 0 0.00%
website/documents/admin.py LectureYearFilter.queryset 4 4 0 2 0 0.00%
website/documents/admin.py (no function) 34 0 0 0 0 100.00%
website/documents/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/documents/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/documents/api/v2/serializers/__init__.py (no function) 0 0 0 0 0 100.00%
website/documents/api/v2/serializers/document.py DocumentSerializer._url 3 3 0 2 0 0.00%
website/documents/api/v2/serializers/document.py (no function) 10 0 0 0 0 100.00%
website/documents/apps.py DocumentsConfig.menu_items 1 0 0 0 0 100.00%
website/documents/apps.py (no function) 7 0 0 0 0 100.00%
website/documents/forms.py DocumentFileInput.get_context 6 6 0 2 0 0.00%
website/documents/forms.py AnnualDocumentForm._current_year 1 1 0 0 0 0.00%
website/documents/forms.py AnnualDocumentForm._year_choices 2 2 0 0 0 0.00%
website/documents/forms.py (no function) 39 0 0 0 0 100.00%
website/documents/models.py Document.get_absolute_url 1 1 0 0 0 0.00%
website/documents/models.py Document.__str__ 1 0 0 0 0 100.00%
website/documents/models.py AnnualDocument.save 11 11 0 8 0 0.00%
website/documents/models.py AssociationDocumentManager.get_queryset 1 1 0 0 0 0.00%
website/documents/models.py AssociationDocument.save 2 2 0 0 0 0.00%
website/documents/models.py MiscellaneousDocumentManager.get_queryset 1 0 0 0 0 100.00%
website/documents/models.py MiscellaneousDocument.save 2 2 0 0 0 0.00%
website/documents/models.py GeneralMeeting.__str__ 1 0 0 0 0 100.00%
website/documents/models.py Minutes.save 3 3 0 0 0 0.00%
website/documents/models.py (no function) 66 0 0 0 0 100.00%
website/documents/sitemaps.py StaticViewSitemap.items 1 0 0 0 0 100.00%
website/documents/sitemaps.py StaticViewSitemap.location 1 0 0 0 0 100.00%
website/documents/sitemaps.py MiscellaneousDocumentsSitemap.items 1 0 0 0 0 100.00%
website/documents/sitemaps.py MiscellaneousDocumentsSitemap.location 1 1 0 0 0 0.00%
website/documents/sitemaps.py (no function) 12 0 0 0 0 100.00%
website/documents/templatetags/__init__.py (no function) 0 0 0 0 0 100.00%
website/documents/templatetags/document_cards.py association_document_card 1 1 0 0 0 0.00%
website/documents/templatetags/document_cards.py event_document_card 1 1 0 0 0 0.00%
website/documents/templatetags/document_cards.py annual_document_card 12 12 0 6 0 0.00%
website/documents/templatetags/document_cards.py (no function) 11 0 0 0 0 100.00%
website/documents/templatetags/filename.py filename 1 1 0 0 0 0.00%
website/documents/templatetags/filename.py (no function) 5 0 0 0 0 100.00%
website/documents/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/documents/tests/test_views.py GetDocumentTest.setUpTestData 5 0 0 0 0 100.00%
website/documents/tests/test_views.py GetDocumentTest.setUp 4 0 0 0 0 100.00%
website/documents/tests/test_views.py GetDocumentTest.tearDown 2 0 0 0 0 100.00%
website/documents/tests/test_views.py GetDocumentTest.test_basic 2 0 0 0 0 100.00%
website/documents/tests/test_views.py GetDocumentTest.test_does_not_exist 2 0 0 0 0 100.00%
website/documents/tests/test_views.py GetDocumentTest.test_members_only 9 0 0 0 0 100.00%
website/documents/tests/test_views.py (no function) 16 0 0 0 0 100.00%
website/documents/urls.py (no function) 4 0 0 0 0 100.00%
website/documents/views.py DocumentsIndexView.get_context_data 12 12 0 6 0 0.00%
website/documents/views.py DocumentDownloadView.get 12 3 0 4 1 75.00%
website/documents/views.py (no function) 19 0 0 0 0 100.00%
website/education/__init__.py (no function) 0 0 0 0 0 100.00%
website/education/admin.py WithDownloadCsv.download_csv 9 9 0 2 0 0.00%
website/education/admin.py ExamAdmin.accept 1 1 0 0 0 0.00%
website/education/admin.py ExamAdmin.reject 1 1 0 0 0 0.00%
website/education/admin.py ExamAdmin.reset_download_count 1 1 0 0 0 0.00%
website/education/admin.py SummaryAdmin.accept 1 1 0 0 0 0.00%
website/education/admin.py SummaryAdmin.reject 1 1 0 0 0 0.00%
website/education/admin.py SummaryAdmin.reset_download_count 1 1 0 0 0 0.00%
website/education/admin.py (no function) 43 0 0 0 0 100.00%
website/education/apps.py EducationConfig.menu_items 1 0 0 0 0 100.00%
website/education/apps.py (no function) 7 0 0 0 0 100.00%
website/education/emails.py send_document_notification 2 2 0 0 0 0.00%
website/education/emails.py (no function) 6 0 0 0 0 100.00%
website/education/forms.py AddExamForm.__init__ 2 2 0 0 0 0.00%
website/education/forms.py SummaryAdminForm.__init__ 7 7 0 2 0 0.00%
website/education/forms.py (no function) 30 0 0 0 0 100.00%
website/education/models.py Category.__str__ 1 0 0 0 0 100.00%
website/education/models.py Category.get_absolute_url 1 1 0 0 0 0.00%
website/education/models.py Course.__str__ 1 0 0 0 0 100.00%
website/education/models.py Course.get_absolute_url 1 1 0 0 0 0.00%
website/education/models.py Exam.__str__ 1 0 0 0 0 100.00%
website/education/models.py Exam.get_absolute_url 1 1 0 0 0 0.00%
website/education/models.py Exam.year 1 1 0 0 0 0.00%
website/education/models.py Summary.__str__ 1 0 0 0 0 100.00%
website/education/models.py Summary.get_absolute_url 1 1 0 0 0 0.00%
website/education/models.py (no function) 68 0 0 0 0 100.00%
website/education/sitemaps.py StaticViewSitemap.items 1 0 0 0 0 100.00%
website/education/sitemaps.py StaticViewSitemap.location 1 0 0 0 0 100.00%
website/education/sitemaps.py CourseSitemap.items 1 0 0 0 0 100.00%
website/education/sitemaps.py CourseSitemap.location 1 1 0 0 0 0.00%
website/education/sitemaps.py (no function) 12 0 0 0 0 100.00%
website/education/templatetags/frontpage_summaries.py render_frontpage_summaries 3 0 0 2 1 80.00%
website/education/templatetags/frontpage_summaries.py (no function) 5 0 0 0 0 100.00%
website/education/urls.py (no function) 6 0 0 0 0 100.00%
website/education/views.py CourseIndexView.get_queryset 4 4 0 0 0 0.00%
website/education/views.py CourseIndexView.get_ordering 1 1 0 0 0 0.00%
website/education/views.py CourseIndexView.get_context_data 3 3 0 0 0 0.00%
website/education/views.py CourseDetailView.get_context_data 16 16 0 10 0 0.00%
website/education/views.py ExamDetailView.get 7 7 0 0 0 0.00%
website/education/views.py SummaryDetailView.get 7 7 0 0 0 0.00%
website/education/views.py ExamCreateView.get_initial 4 4 0 0 0 0.00%
website/education/views.py ExamCreateView.form_valid 6 6 0 0 0 0.00%
website/education/views.py SummaryCreateView.get_initial 4 4 0 0 0 0.00%
website/education/views.py SummaryCreateView.form_valid 6 6 0 0 0 0.00%
website/education/views.py BookInfoView.dispatch 3 3 0 2 0 0.00%
website/education/views.py (no function) 62 0 0 0 0 100.00%
website/events/__init__.py (no function) 0 0 0 0 0 100.00%
website/events/admin/__init__.py (no function) 4 0 0 0 0 100.00%
website/events/admin/documents.py EventDocumentAdmin.has_change_permission 3 1 0 2 1 60.00%
website/events/admin/documents.py EventDocumentAdmin.has_delete_permission 3 1 0 2 1 60.00%
website/events/admin/documents.py (no function) 11 0 0 0 0 100.00%
website/events/admin/event.py EventAdmin.get_queryset 6 0 0 2 0 100.00%
website/events/admin/event.py EventAdmin.get_form 3 0 0 0 0 100.00%
website/events/admin/event.py EventAdmin.overview_link 1 0 0 0 0 100.00%
website/events/admin/event.py EventAdmin.has_delete_permission 3 0 0 2 0 100.00%
website/events/admin/event.py EventAdmin.has_change_permission 3 0 0 2 0 100.00%
website/events/admin/event.py EventAdmin.event_date 2 0 0 0 0 100.00%
website/events/admin/event.py EventAdmin.registration_date 4 0 0 2 0 100.00%
website/events/admin/event.py EventAdmin.edit_link 1 0 0 0 0 100.00%
website/events/admin/event.py EventAdmin.num_participants 4 0 0 2 0 100.00%
website/events/admin/event.py EventAdmin.get_organisers 1 1 0 0 0 0.00%
website/events/admin/event.py EventAdmin.make_published 1 1 0 0 0 0.00%
website/events/admin/event.py EventAdmin.make_unpublished 1 1 0 0 0 0.00%
website/events/admin/event.py EventAdmin._change_published 3 3 0 2 0 0.00%
website/events/admin/event.py EventAdmin.save_formset 4 4 0 0 0 0.00%
website/events/admin/event.py EventAdmin.save_model 21 21 0 12 0 0.00%
website/events/admin/event.py EventAdmin.get_actions 4 4 0 2 0 0.00%
website/events/admin/event.py EventAdmin.get_formsets_with_inlines 3 0 0 4 0 100.00%
website/events/admin/event.py EventAdmin.get_urls 3 0 0 0 0 100.00%
website/events/admin/event.py (no function) 53 0 0 0 0 100.00%
website/events/admin/external_event.py (no function) 10 0 0 0 0 100.00%
website/events/admin/filters.py LectureYearFilter.lookups 7 7 0 2 0 0.00%
website/events/admin/filters.py LectureYearFilter.queryset 6 6 0 2 0 0.00%
website/events/admin/filters.py (no function) 10 0 0 0 0 100.00%
website/events/admin/forms.py RegistrationAdminForm.__init__ 7 7 0 2 0 0.00%
website/events/admin/forms.py RegistrationInformationFieldForm.__init__ 8 3 0 0 0 62.50%
website/events/admin/forms.py EventAdminForm.clean 2 2 0 0 0 0.00%
website/events/admin/forms.py EventAdminForm.clean_organisers 5 5 0 4 0 0.00%
website/events/admin/forms.py (no function) 22 0 0 0 0 100.00%
website/events/admin/inlines.py RegistrationInformationFieldInline.get_formset 5 0 0 2 0 100.00%
website/events/admin/inlines.py PromotionRequestInline.has_add_permission 1 0 0 0 0 100.00%
website/events/admin/inlines.py PromotionRequestInline.has_view_permission 1 0 0 0 0 100.00%
website/events/admin/inlines.py PromotionRequestInline.has_change_permission 1 0 0 0 0 100.00%
website/events/admin/inlines.py PromotionRequestInline.has_delete_permission 1 0 0 0 0 100.00%
website/events/admin/inlines.py (no function) 24 0 0 0 0 100.00%
website/events/admin/registration.py RegistrationAdmin.save_model 3 3 0 2 0 0.00%
website/events/admin/registration.py RegistrationAdmin.has_view_permission 3 1 0 2 1 60.00%
website/events/admin/registration.py RegistrationAdmin.has_change_permission 3 1 0 2 1 60.00%
website/events/admin/registration.py RegistrationAdmin.has_delete_permission 3 1 0 2 1 60.00%
website/events/admin/registration.py RegistrationAdmin.get_form 1 1 0 0 0 0.00%
website/events/admin/registration.py RegistrationAdmin.formfield_for_dbfield 8 8 0 4 0 0.00%
website/events/admin/registration.py RegistrationAdmin.formfield_for_foreignkey 9 9 0 8 0 0.00%
website/events/admin/registration.py RegistrationAdmin.get_urls 3 0 0 0 0 100.00%
website/events/admin/registration.py (no function) 23 0 0 0 0 100.00%
website/events/admin/views.py EventAdminDetails.get_context_data 3 0 0 0 0 100.00%
website/events/admin/views.py RegistrationAdminFields.get_context_data 3 3 0 0 0 0.00%
website/events/admin/views.py RegistrationAdminFields.get_form_kwargs 3 3 0 0 0 0.00%
website/events/admin/views.py RegistrationAdminFields.form_valid 9 9 0 2 0 0.00%
website/events/admin/views.py RegistrationAdminFields.dispatch 7 7 0 2 0 0.00%
website/events/admin/views.py EventRegistrationsExport.get 35 35 0 18 0 0.00%
website/events/admin/views.py EventMarkPresentQR.get 5 0 0 0 0 100.00%
website/events/admin/views.py (no function) 50 0 0 0 0 100.00%
website/events/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/events/api/calendarjs/__init__.py (no function) 0 0 0 0 0 100.00%
website/events/api/calendarjs/permissions.py (no function) 3 0 0 0 0 100.00%
website/events/api/calendarjs/serializers.py EventsCalenderJSSerializer._url 1 0 0 0 0 100.00%
website/events/api/calendarjs/serializers.py EventsCalenderJSSerializer._class_names 5 1 0 2 1 71.43%
website/events/api/calendarjs/serializers.py EventsCalenderJSSerializer._registration_info 5 1 0 2 1 71.43%
website/events/api/calendarjs/serializers.py UnpublishedEventsCalenderJSSerializer._class_names 1 0 0 0 0 100.00%
website/events/api/calendarjs/serializers.py UnpublishedEventsCalenderJSSerializer._url 1 0 0 0 0 100.00%
website/events/api/calendarjs/serializers.py UnpublishedEventsCalenderJSSerializer._registration_info 1 0 0 0 0 100.00%
website/events/api/calendarjs/serializers.py ExternalEventCalendarJSSerializer._title 1 0 0 0 0 100.00%
website/events/api/calendarjs/serializers.py ExternalEventCalendarJSSerializer._class_names 1 0 0 0 0 100.00%
website/events/api/calendarjs/serializers.py ExternalEventCalendarJSSerializer._url 1 0 0 0 0 100.00%
website/events/api/calendarjs/serializers.py ExternalEventCalendarJSSerializer._target_blank 1 0 0 0 0 100.00%
website/events/api/calendarjs/serializers.py (no function) 24 0 0 0 0 100.00%
website/events/api/calendarjs/urls.py (no function) 4 0 0 0 0 100.00%
website/events/api/calendarjs/views.py CalendarJSEventListView.get_serializer_context 3 0 0 0 0 100.00%
website/events/api/calendarjs/views.py CalendarJSEventListView.get_queryset 5 0 0 2 1 85.71%
website/events/api/calendarjs/views.py CalendarJSUnpublishedEventListView.get_queryset 4 1 0 2 1 66.67%
website/events/api/calendarjs/views.py CalendarJSUnpublishedEventListView.get_serializer_context 3 0 0 0 0 100.00%
website/events/api/calendarjs/views.py (no function) 29 0 0 0 0 100.00%
website/events/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/events/api/v2/admin/__init__.py (no function) 0 0 0 0 0 100.00%
website/events/api/v2/admin/filters.py PublishedFilter.filter_queryset 7 7 0 2 0 0.00%
website/events/api/v2/admin/filters.py PublishedFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/events/api/v2/admin/filters.py EventRegistrationCancelledFilter.filter_queryset 9 9 0 4 0 0.00%
website/events/api/v2/admin/filters.py EventRegistrationCancelledFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/events/api/v2/admin/filters.py EventRegistrationQueuedFilter.filter_queryset 9 9 0 4 0 0.00%
website/events/api/v2/admin/filters.py EventRegistrationQueuedFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/events/api/v2/admin/filters.py (no function) 12 0 0 0 0 100.00%
website/events/api/v2/admin/permissions.py IsOrganiser.has_permission 5 5 0 2 0 0.00%
website/events/api/v2/admin/permissions.py IsOrganiser.has_object_permission 7 7 0 6 0 0.00%
website/events/api/v2/admin/permissions.py (no function) 8 0 0 0 0 100.00%
website/events/api/v2/admin/serializers/__init__.py (no function) 0 0 0 0 0 100.00%
website/events/api/v2/admin/serializers/event.py EventAdminSerializer.to_internal_value 3 3 0 0 0 0.00%
website/events/api/v2/admin/serializers/event.py EventAdminSerializer.to_representation 3 3 0 0 0 0.00%
website/events/api/v2/admin/serializers/event.py (no function) 27 0 0 0 0 100.00%
website/events/api/v2/admin/serializers/event_registration.py EventRegistrationAdminSerializer.create 3 3 0 0 0 0.00%
website/events/api/v2/admin/serializers/event_registration.py EventRegistrationAdminSerializer.to_internal_value 2 2 0 0 0 0.00%
website/events/api/v2/admin/serializers/event_registration.py EventRegistrationAdminSerializer.to_representation 2 2 0 0 0 0.00%
website/events/api/v2/admin/serializers/event_registration.py (no function) 16 0 0 0 0 100.00%
website/events/api/v2/admin/urls.py (no function) 4 0 0 0 0 100.00%
website/events/api/v2/admin/views.py EventAdminListCreateAPIView.get_serializer_class 3 3 0 2 0 0.00%
website/events/api/v2/admin/views.py EventRegistrationAdminListView.get_queryset 4 4 0 2 0 0.00%
website/events/api/v2/admin/views.py EventRegistrationAdminListView.get_serializer_context 4 4 0 0 0 0.00%
website/events/api/v2/admin/views.py EventRegistrationAdminDetailView.get_queryset 1 1 0 0 0 0.00%
website/events/api/v2/admin/views.py EventRegistrationAdminFieldsView.get_queryset 1 1 0 0 0 0.00%
website/events/api/v2/admin/views.py EventRegistrationAdminFieldsView.get_object 4 4 0 2 0 0.00%
website/events/api/v2/admin/views.py EventRegistrationAdminFieldsView.get 1 1 0 0 0 0.00%
website/events/api/v2/admin/views.py EventRegistrationAdminFieldsView.put 6 6 0 2 0 0.00%
website/events/api/v2/admin/views.py EventRegistrationAdminFieldsView.patch 2 2 0 0 0 0.00%
website/events/api/v2/admin/views.py (no function) 52 0 0 0 0 100.00%
website/events/api/v2/filters.py EventDateFilter.filter_queryset 6 0 0 4 0 100.00%
website/events/api/v2/filters.py EventDateFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/events/api/v2/filters.py CategoryFilter.filter_queryset 4 1 0 2 1 66.67%
website/events/api/v2/filters.py CategoryFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/events/api/v2/filters.py OrganiserFilter.filter_queryset 4 1 0 2 1 66.67%
website/events/api/v2/filters.py OrganiserFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/events/api/v2/filters.py (no function) 11 0 0 0 0 100.00%
website/events/api/v2/serializers/__init__.py (no function) 0 0 0 0 0 100.00%
website/events/api/v2/serializers/event.py EventSerializer._user_registration 4 2 0 2 1 50.00%
website/events/api/v2/serializers/event.py EventSerializer._registration_status 10 2 0 4 2 71.43%
website/events/api/v2/serializers/event.py EventSerializer._num_participants 3 1 0 2 1 60.00%
website/events/api/v2/serializers/event.py EventSerializer._user_permissions 2 0 0 0 0 100.00%
website/events/api/v2/serializers/event.py EventSerializer._url 3 1 0 2 1 60.00%
website/events/api/v2/serializers/event.py EventSerializer._maps_url 1 0 0 0 0 100.00%
website/events/api/v2/serializers/event.py (no function) 34 0 0 0 0 100.00%
website/events/api/v2/serializers/event_registration.py EventRegistrationSerializer.__init__ 6 6 0 2 0 0.00%
website/events/api/v2/serializers/event_registration.py EventRegistrationSerializer._is_late_cancellation 1 1 0 0 0 0.00%
website/events/api/v2/serializers/event_registration.py EventRegistrationSerializer._queue_position 2 2 0 0 0 0.00%
website/events/api/v2/serializers/event_registration.py EventRegistrationSerializer._is_cancelled 1 1 0 0 0 0.00%
website/events/api/v2/serializers/event_registration.py (no function) 18 0 0 0 0 100.00%
website/events/api/v2/serializers/external_event.py ExternalEventSerializer._description 1 1 0 0 0 0.00%
website/events/api/v2/serializers/external_event.py (no function) 10 0 0 0 0 100.00%
website/events/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/events/api/v2/views.py EventListView.get_queryset 4 0 0 2 1 83.33%
website/events/api/v2/views.py EventDetailView.get_queryset 4 0 0 2 1 83.33%
website/events/api/v2/views.py EventRegistrationsView.__init__ 2 2 0 0 0 0.00%
website/events/api/v2/views.py EventRegistrationsView.get_serializer_class 3 3 0 2 0 0.00%
website/events/api/v2/views.py EventRegistrationsView.get_queryset 4 4 0 2 0 0.00%
website/events/api/v2/views.py EventRegistrationsView.get_serializer 4 4 0 2 0 0.00%
website/events/api/v2/views.py EventRegistrationsView.initial 9 9 0 0 0 0.00%
website/events/api/v2/views.py EventRegistrationsView.post 6 6 0 0 0 0.00%
website/events/api/v2/views.py EventRegistrationDetailView.get_queryset 1 1 0 0 0 0.00%
website/events/api/v2/views.py EventRegistrationDetailView.get_serializer 3 3 0 2 0 0.00%
website/events/api/v2/views.py EventRegistrationDetailView.delete 7 7 0 2 0 0.00%
website/events/api/v2/views.py EventRegistrationFieldsView.get_object 1 1 0 0 0 0.00%
website/events/api/v2/views.py EventRegistrationFieldsView.get 1 1 0 0 0 0.00%
website/events/api/v2/views.py EventRegistrationFieldsView.put 9 9 0 2 0 0.00%
website/events/api/v2/views.py EventRegistrationFieldsView.patch 5 5 0 0 0 0.00%
website/events/api/v2/views.py MarkPresentAPIView.patch 13 0 0 8 0 100.00%
website/events/api/v2/views.py (no function) 78 0 0 0 0 100.00%
website/events/apps.py EventsConfig.ready 3 0 0 0 0 100.00%
website/events/apps.py EventsConfig.menu_items 1 0 0 0 0 100.00%
website/events/apps.py (no function) 8 0 0 0 0 100.00%
website/events/decorators.py organiser_only 1 0 0 0 0 100.00%
website/events/decorators.py OrganiserOnly.__init__ 1 0 0 0 0 100.00%
website/events/decorators.py OrganiserOnly.__call__ 14 7 0 6 1 50.00%
website/events/decorators.py (no function) 7 0 0 0 0 100.00%
website/events/emails.py notify_first_waiting 2 2 0 0 0 0.00%
website/events/emails.py notify_organiser 3 1 0 2 1 60.00%
website/events/emails.py notify_waiting 2 2 0 0 0 0.00%
website/events/emails.py notify_registration 1 1 0 0 0 0.00%
website/events/emails.py (no function) 7 0 0 0 0 100.00%
website/events/exceptions.py (no function) 1 0 0 0 0 100.00%
website/events/feeds.py EventFeed.__init__ 3 0 0 0 0 100.00%
website/events/feeds.py EventFeed.__call__ 4 4 0 2 0 0.00%
website/events/feeds.py EventFeed.product_id 1 1 0 0 0 0.00%
website/events/feeds.py EventFeed.file_name 1 1 0 0 0 0.00%
website/events/feeds.py EventFeed.title 2 2 0 0 0 0.00%
website/events/feeds.py EventFeed.items 4 4 0 2 0 0.00%
website/events/feeds.py EventFeed.item_title 1 1 0 0 0 0.00%
website/events/feeds.py EventFeed.item_description 1 1 0 0 0 0.00%
website/events/feeds.py EventFeed.item_start_datetime 1 1 0 0 0 0.00%
website/events/feeds.py EventFeed.item_end_datetime 1 1 0 0 0 0.00%
website/events/feeds.py EventFeed.item_link 1 1 0 0 0 0.00%
website/events/feeds.py EventFeed.item_location 1 1 0 0 0 0.00%
website/events/feeds.py (no function) 19 0 0 0 0 100.00%
website/events/forms.py FieldsForm.__init__ 13 0 0 8 1 95.24%
website/events/forms.py FieldsForm.field_values 2 0 0 2 0 100.00%
website/events/forms.py (no function) 12 0 0 0 0 100.00%
website/events/models/__init__.py (no function) 6 0 0 0 0 100.00%
website/events/models/categories.py (no function) 8 0 0 0 0 100.00%
website/events/models/documents.py EventDocument.save 2 2 0 0 0 0.00%
website/events/models/documents.py (no function) 10 0 0 0 0 100.00%
website/events/models/event.py Event.mark_present_url 1 0 0 0 0 100.00%
website/events/models/event.py Event.cancel_too_late_message 1 0 0 0 0 100.00%
website/events/models/event.py Event.after_cancel_deadline 1 0 0 0 0 100.00%
website/events/models/event.py Event.registration_started 1 0 0 0 0 100.00%
website/events/models/event.py Event.registration_required 1 0 0 0 0 100.00%
website/events/models/event.py Event.payment_required 1 0 0 0 0 100.00%
website/events/models/event.py Event.has_fields 1 0 0 0 0 100.00%
website/events/models/event.py Event.reached_participants_limit 1 0 0 0 0 100.00%
website/events/models/event.py Event.registrations 1 0 0 0 0 100.00%
website/events/models/event.py Event.participants 3 0 0 2 0 100.00%
website/events/models/event.py Event.queue 3 0 0 2 0 100.00%
website/events/models/event.py Event.cancellations 1 0 0 0 0 100.00%
website/events/models/event.py Event.registration_allowed 2 0 0 0 0 100.00%
website/events/models/event.py Event.cancellation_allowed 2 0 0 0 0 100.00%
website/events/models/event.py Event.optional_registration_allowed 1 0 0 0 0 100.00%
website/events/models/event.py Event.has_food_event 5 0 0 0 0 100.00%
website/events/models/event.py Event.location_link 3 1 0 2 1 60.00%
website/events/models/event.py Event.clean_changes 7 7 0 8 0 0.00%
website/events/models/event.py Event.clean 38 9 0 38 7 73.68%
website/events/models/event.py Event.get_absolute_url 3 1 0 2 1 60.00%
website/events/models/event.py Event.delete 6 6 0 2 0 0.00%
website/events/models/event.py Event.__str__ 1 0 0 0 0 100.00%
website/events/models/event.py (no function) 102 0 0 0 0 100.00%
website/events/models/event_registration.py registration_member_choices_limit 1 1 0 0 0 0.00%
website/events/models/event_registration.py EventRegistration.phone_number 3 3 0 2 0 0.00%
website/events/models/event_registration.py EventRegistration.email 3 1 0 2 1 60.00%
website/events/models/event_registration.py EventRegistration.information_fields 2 0 0 0 0 100.00%
website/events/models/event_registration.py EventRegistration.is_registered 1 0 0 0 0 100.00%
website/events/models/event_registration.py EventRegistration.is_invited 1 0 0 0 0 100.00%
website/events/models/event_registration.py EventRegistration.is_external 1 0 0 0 0 100.00%
website/events/models/event_registration.py EventRegistration.is_late_cancellation 1 0 0 0 0 100.00%
website/events/models/event_registration.py EventRegistration.is_paid 1 1 0 0 0 0.00%
website/events/models/event_registration.py EventRegistration.payment_amount 1 0 0 0 0 100.00%
website/events/models/event_registration.py EventRegistration.payment_amount 1 0 0 0 0 100.00%
website/events/models/event_registration.py EventRegistration.would_cancel_after_deadline 4 0 0 2 0 100.00%
website/events/models/event_registration.py EventRegistration.clean 11 3 0 10 3 71.43%
website/events/models/event_registration.py EventRegistration.save 2 0 0 0 0 100.00%
website/events/models/event_registration.py EventRegistration.__str__ 3 0 0 2 0 100.00%
website/events/models/event_registration.py (no function) 53 0 0 0 0 100.00%
website/events/models/external_event.py ExternalEvent.__str__ 1 0 0 0 0 100.00%
website/events/models/external_event.py (no function) 14 0 0 0 0 100.00%
website/events/models/feed_token.py FeedToken.save 2 2 0 0 0 0.00%
website/events/models/feed_token.py FeedToken.get_member 4 4 0 0 0 0.00%
website/events/models/feed_token.py FeedToken.__str__ 1 0 0 0 0 100.00%
website/events/models/feed_token.py (no function) 9 0 0 0 0 100.00%
website/events/models/registration_information_field.py RegistrationInformationField.get_value_for 10 0 0 6 1 93.75%
website/events/models/registration_information_field.py RegistrationInformationField.set_value_for 19 0 0 6 1 96.00%
website/events/models/registration_information_field.py RegistrationInformationField.__str__ 1 0 0 0 0 100.00%
website/events/models/registration_information_field.py AbstractRegistrationInformation.__str__ 1 0 0 0 0 100.00%
website/events/models/registration_information_field.py (no function) 31 0 0 0 0 100.00%
website/events/models/status.py is_registered 1 1 0 0 0 0.00%
website/events/models/status.py calendarjs_class_name 7 3 0 6 3 53.85%
website/events/models/status.py (no function) 19 0 0 0 0 100.00%
website/events/payables.py EventRegistrationPayable.payment_amount 1 0 0 0 0 100.00%
website/events/payables.py EventRegistrationPayable.payment_topic 1 0 0 0 0 100.00%
website/events/payables.py EventRegistrationPayable.payment_notes 5 1 0 2 1 71.43%
website/events/payables.py EventRegistrationPayable.payment_payer 1 0 0 0 0 100.00%
website/events/payables.py EventRegistrationPayable.can_manage_payment 1 0 0 0 0 100.00%
website/events/payables.py EventRegistrationPayable.tpay_allowed 1 1 0 0 0 0.00%
website/events/payables.py EventRegistrationPayable.immutable_after_payment 1 0 0 0 0 100.00%
website/events/payables.py EventRegistrationPayable.immutable_model_fields_after_payment 1 0 0 0 0 100.00%
website/events/payables.py register 1 0 0 0 0 100.00%
website/events/payables.py (no function) 22 0 0 0 0 100.00%
website/events/services.py is_user_registered 3 0 0 2 0 100.00%
website/events/services.py cancel_status 7 1 0 6 1 84.62%
website/events/services.py cancel_info_string 4 0 0 2 0 100.00%
website/events/services.py registration_status 31 9 0 30 7 70.49%
website/events/services.py show_cancel_status 1 0 0 0 0 100.00%
website/events/services.py registration_status_string 9 1 0 6 2 80.00%
website/events/services.py user_registration_pending 13 13 0 8 0 0.00%
website/events/services.py event_permissions 19 2 0 8 2 85.19%
website/events/services.py is_organiser 6 0 0 6 0 100.00%
website/events/services.py create_registration 18 0 0 10 0 100.00%
website/events/services.py cancel_registration 16 0 0 8 1 95.83%
website/events/services.py update_registration 24 4 0 16 3 82.50%
website/events/services.py registration_fields 19 2 0 6 0 92.00%
website/events/services.py generate_category_statistics 8 8 0 4 0 0.00%
website/events/services.py execute_data_minimisation 5 5 0 2 0 0.00%
website/events/services.py is_eventdocument_owner 6 6 0 6 0 0.00%
website/events/services.py (no function) 26 0 0 0 0 100.00%
website/events/signals.py send_event_registration_confirmation 2 1 0 2 1 50.00%
website/events/signals.py (no function) 9 0 0 0 0 100.00%
website/events/sitemaps.py StaticViewSitemap.items 1 0 0 0 0 100.00%
website/events/sitemaps.py StaticViewSitemap.location 1 0 0 0 0 100.00%
website/events/sitemaps.py EventSitemap.items 1 0 0 0 0 100.00%
website/events/sitemaps.py EventSitemap.location 1 1 0 0 0 0.00%
website/events/sitemaps.py (no function) 11 0 0 0 0 100.00%
website/events/tasks.py send_registration_confirmation_email 6 6 0 2 0 0.00%
website/events/tasks.py (no function) 5 0 0 0 0 100.00%
website/events/templatetags/event_cards.py render_event_cards 1 0 0 0 0 100.00%
website/events/templatetags/event_cards.py (no function) 5 0 0 0 0 100.00%
website/events/templatetags/frontpage_events.py render_frontpage_events 13 8 0 10 2 30.43%
website/events/templatetags/frontpage_events.py (no function) 8 0 0 0 0 100.00%
website/events/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/events/tests/test_admin.py DoNextModelAdminTest.setUp 3 0 0 0 0 100.00%
website/events/tests/test_admin.py DoNextModelAdminTest.test_response_add 14 0 0 0 0 100.00%
website/events/tests/test_admin.py DoNextModelAdminTest.test_response_change 14 0 0 0 0 100.00%
website/events/tests/test_admin.py RegistrationInformationFieldInlineTest.setUpTestData 10 0 0 0 0 100.00%
website/events/tests/test_admin.py RegistrationInformationFieldInlineTest.setUp 3 0 0 0 0 100.00%
website/events/tests/test_admin.py RegistrationInformationFieldInlineTest.test_get_formset 6 0 0 0 0 100.00%
website/events/tests/test_admin.py EventAdminTest.setUpTestData 4 0 0 0 0 100.00%
website/events/tests/test_admin.py EventAdminTest.setUp 3 0 0 0 0 100.00%
website/events/tests/test_admin.py EventAdminTest.test_overview_link 1 0 0 0 0 100.00%
website/events/tests/test_admin.py EventAdminTest.test_has_change_permission 11 0 0 0 0 100.00%
website/events/tests/test_admin.py EventAdminTest.test_event_date 1 0 0 0 0 100.00%
website/events/tests/test_admin.py EventAdminTest.test_registration_date 3 0 0 0 0 100.00%
website/events/tests/test_admin.py EventAdminTest.test_edit_link 1 0 0 0 0 100.00%
website/events/tests/test_admin.py EventAdminTest.test_num_participants 17 0 0 0 0 100.00%
website/events/tests/test_admin.py (no function) 46 0 0 0 0 100.00%
website/events/tests/test_api.py RegistrationApiTest.setUpTestData 4 0 0 0 0 100.00%
website/events/tests/test_api.py RegistrationApiTest.setUp 2 0 0 0 0 100.00%
website/events/tests/test_api.py RegistrationApiTest.test_mark_present_url_registered 5 0 0 0 0 100.00%
website/events/tests/test_api.py RegistrationApiTest.test_mark_present_url_already_present 5 0 0 0 0 100.00%
website/events/tests/test_api.py RegistrationApiTest.test_mark_present_url_not_registered 2 0 0 0 0 100.00%
website/events/tests/test_api.py RegistrationApiTest.test_mark_present_url_wrong_token 4 0 0 0 0 100.00%
website/events/tests/test_api.py RegistrationApiTest.test_mark_present_url_past_event 7 0 0 0 0 100.00%
website/events/tests/test_api.py CalendarjsTest.setUpTestData 5 0 0 0 0 100.00%
website/events/tests/test_api.py CalendarjsTest.setUp 2 0 0 0 0 100.00%
website/events/tests/test_api.py CalendarjsTest.test_event_list 4 0 0 0 0 100.00%
website/events/tests/test_api.py CalendarjsTest.test_unpub_event_list 4 0 0 0 0 100.00%
website/events/tests/test_api.py CalendarjsTest.test_external_event_list 4 0 0 0 0 100.00%
website/events/tests/test_api.py EventApiV2Test.setUpTestData 4 0 0 0 0 100.00%
website/events/tests/test_api.py EventApiV2Test.setUp 2 0 0 0 0 100.00%
website/events/tests/test_api.py EventApiV2Test.test_event_list 3 0 0 0 0 100.00%
website/events/tests/test_api.py EventApiV2Test.test_event_detail 2 0 0 0 0 100.00%
website/events/tests/test_api.py EventApiV2Test.test_event_detail_not_found 2 0 0 0 0 100.00%
website/events/tests/test_api.py EventApiV2Test.test_event_detail_unpublished 4 0 0 0 0 100.00%
website/events/tests/test_api.py (no function) 39 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.setUpTestData 5 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.setUp 4 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_clean_works 1 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_end_after_start 3 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_missing_registration_start 6 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_missing_registration_end 6 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_missing_cancel_deadline 6 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_unnecessary_no_registration_message 8 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_registration_end_after_registration_start 7 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_cancel_deadline_before_registration_start 7 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_reached_participants_limit 2 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_not_reached_participants_limit 3 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_registration_fine_required 7 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_registration_allowed 24 0 0 0 0 100.00%
website/events/tests/test_models.py EventTest.test_cancellation_allowed 37 0 0 0 0 100.00%
website/events/tests/test_models.py RegistrationTest.setUpTestData 8 0 0 0 0 100.00%
website/events/tests/test_models.py RegistrationTest.setUp 1 0 0 0 0 100.00%
website/events/tests/test_models.py RegistrationTest.test_is_late_registration 7 0 0 0 0 100.00%
website/events/tests/test_models.py RegistrationTest.test_queue_position 12 0 0 0 0 100.00%
website/events/tests/test_models.py RegistrationTest.test_queue_cancel 7 0 0 0 0 100.00%
website/events/tests/test_models.py RegistrationTest.test_registration_either_name_or_member 7 1 0 0 0 85.71%
website/events/tests/test_models.py RegistrationTest.test_would_cancel_after_deadline 8 0 0 0 0 100.00%
website/events/tests/test_models.py (no function) 38 0 0 0 0 100.00%
website/events/tests/test_services.py ServicesTest.setUpTestData 8 0 0 0 0 100.00%
website/events/tests/test_services.py ServicesTest.setUp 3 0 0 0 0 100.00%
website/events/tests/test_services.py ServicesTest._toggle_event_change_perm 4 0 0 2 0 100.00%
website/events/tests/test_services.py ServicesTest._toggle_override_organiser_perm 4 0 0 2 0 100.00%
website/events/tests/test_services.py ServicesTest.test_is_user_registered 7 0 0 0 0 100.00%
website/events/tests/test_services.py ServicesTest.test_event_permissions 14 0 0 0 0 100.00%
website/events/tests/test_services.py ServicesTest.test_is_organiser 15 0 0 0 0 100.00%
website/events/tests/test_services.py ServicesTest.test_create_registration 29 0 0 0 0 100.00%
website/events/tests/test_services.py ServicesTest.test_cancel_registration 31 0 0 0 0 100.00%
website/events/tests/test_services.py ServicesTest.test_update_registration_user 24 0 0 0 0 100.00%
website/events/tests/test_services.py ServicesTest.test_update_registration_guest 24 0 0 0 0 100.00%
website/events/tests/test_services.py ServicesTest.test_registration_fields 23 0 0 2 0 100.00%
website/events/tests/test_services.py (no function) 36 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.setUpTestData 11 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.setUp 1 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest._remove_event_permission 2 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest._add_override_organiser_permission 1 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_admin_details_need_change_event_access 3 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_admin_details_organiser_denied 2 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_admin_details_organiser_allowed 3 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_admin_details_override_organiser_allowed 3 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_modeladmin_change_organiser_allowed 3 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_modeladmin_change_override_organiser_allowed 3 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_modeladmin_change_organiser_no_permissions_denied 4 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_modeladmin_change_superuser_allowed 5 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_modeladmin_change_organiser_denied 3 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_modeladmin_delete_organiser_denied 2 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_mark_present_qr_organiser_denied 2 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_mark_present_qr_organiser_allowed 3 0 0 0 0 100.00%
website/events/tests/test_views.py AdminTest.test_mark_present_qr_override_organiser_allowed 3 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.setUpTestData 6 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.setUp 2 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_register_not_required 3 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_register 8 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_register_twice 9 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_register_closed 7 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_cancel 8 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_register_no_fields 14 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_missing_fields 12 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_register_fields_required 10 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_update_form_load_not_changes_fields 17 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_update_form_post_changes_fields 16 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_cancel_after_deadline_notification 11 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_cancel_after_deadline_warning 7 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_registration_cancel_after_deadline_waitinglist_no_warning 10 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_mark_present_url_registered 5 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_mark_present_url_already_present 5 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_mark_present_url_not_registered 2 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_mark_present_url_wrong_token 4 0 0 0 0 100.00%
website/events/tests/test_views.py RegistrationTest.test_mark_present_url_past_event 7 0 0 0 0 100.00%
website/events/tests/test_views.py EventPageTest.setUpTestData 6 0 0 0 0 100.00%
website/events/tests/test_views.py EventPageTest.setUp 2 0 0 0 0 100.00%
website/events/tests/test_views.py EventPageTest.test_list_page 2 0 0 0 0 100.00%
website/events/tests/test_views.py EventPageTest.test_event_page 3 0 0 0 0 100.00%
website/events/tests/test_views.py (no function) 64 0 0 0 0 100.00%
website/events/urls.py (no function) 5 0 0 0 0 100.00%
website/events/views.py EventIndex.get_context_data 4 0 0 0 0 100.00%
website/events/views.py EventDetail.get_context_data 23 0 0 4 0 100.00%
website/events/views.py AlumniEventsView.get_context_data 4 4 0 0 0 0.00%
website/events/views.py EventRegisterView.get 1 1 0 0 0 0.00%
website/events/views.py EventRegisterView.post 9 0 0 2 0 100.00%
website/events/views.py EventCancelView.get 1 1 0 0 0 0.00%
website/events/views.py EventCancelView.post 7 2 0 0 0 71.43%
website/events/views.py RegistrationView.get_context_data 3 0 0 0 0 100.00%
website/events/views.py RegistrationView.get_form_kwargs 3 0 0 0 0 100.00%
website/events/views.py RegistrationView.form_valid 8 3 0 0 0 62.50%
website/events/views.py RegistrationView.dispatch 7 3 0 2 1 55.56%
website/events/views.py MarkPresentView.get 14 0 0 8 0 100.00%
website/events/views.py NextEventView.get 4 4 0 2 0 0.00%
website/events/views.py ICalHelpView.get_context_data 6 6 0 2 0 0.00%
website/events/views.py (no function) 57 0 0 0 0 100.00%
website/events/widgets.py (no function) 3 0 0 0 0 100.00%
website/facedetection/__init__.py (no function) 0 0 0 0 0 100.00%
website/facedetection/admin.py ReferenceFaceEncodingInline.has_add_permission 1 1 0 0 0 0.00%
website/facedetection/admin.py ReferenceFaceEncodingInline.get_queryset 1 1 0 0 0 0.00%
website/facedetection/admin.py ReferenceFaceAdmin.get_readonly_fields 3 3 0 2 0 0.00%
website/facedetection/admin.py ReferenceFaceAdmin.resubmit_reference_faces 5 5 0 2 0 0.00%
website/facedetection/admin.py PhotoFaceEncodingInline.view_matches 5 5 0 2 0 0.00%
website/facedetection/admin.py PhotoFaceEncodingInline.has_add_permission 1 1 0 0 0 0.00%
website/facedetection/admin.py PhotoFaceEncodingInline.get_queryset 1 1 0 0 0 0.00%
website/facedetection/admin.py FaceDetectionPhotoAdmin.get_queryset 1 1 0 0 0 0.00%
website/facedetection/admin.py FaceDetectionPhotoAdmin.has_add_permission 1 0 0 0 0 100.00%
website/facedetection/admin.py FaceDetectionPhotoAdmin.resubmit_face_detection_photos 5 5 0 2 0 0.00%
website/facedetection/admin.py (no function) 47 0 0 0 0 100.00%
website/facedetection/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/facedetection/api/facedetection/__init__.py (no function) 0 0 0 0 0 100.00%
website/facedetection/api/facedetection/urls.py (no function) 4 0 0 0 0 100.00%
website/facedetection/api/facedetection/views.py FaceEncodingPostView.post 38 38 0 22 0 0.00%
website/facedetection/api/facedetection/views.py (no function) 9 0 0 0 0 100.00%
website/facedetection/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/facedetection/api/v2/serializers.py (no function) 9 0 0 0 0 100.00%
website/facedetection/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/facedetection/api/v2/views.py YourPhotosView.get 3 3 0 2 0 0.00%
website/facedetection/api/v2/views.py YourPhotosView.get_serializer 4 4 0 2 0 0.00%
website/facedetection/api/v2/views.py YourPhotosView.get_queryset 1 1 0 0 0 0.00%
website/facedetection/api/v2/views.py ReferenceFaceListView.get_serializer 4 4 0 2 0 0.00%
website/facedetection/api/v2/views.py ReferenceFaceListView.create 5 5 0 4 0 0.00%
website/facedetection/api/v2/views.py ReferenceFaceListView.perform_create 1 1 0 0 0 0.00%
website/facedetection/api/v2/views.py ReferenceFaceListView.get_queryset 1 1 0 0 0 0.00%
website/facedetection/api/v2/views.py ReferenceFaceDeleteView.get_queryset 1 1 0 0 0 0.00%
website/facedetection/api/v2/views.py ReferenceFaceDeleteView.perform_destroy 2 2 0 0 0 0.00%
website/facedetection/api/v2/views.py (no function) 33 0 0 0 0 100.00%
website/facedetection/apps.py FaceDetectionConfig.user_menu_items 1 0 0 0 0 100.00%
website/facedetection/apps.py FaceDetectionConfig.ready 1 0 0 0 0 100.00%
website/facedetection/apps.py (no function) 9 0 0 0 0 100.00%
website/facedetection/forms.py ReferenceFaceUploadForm.save 9 9 0 6 0 0.00%
website/facedetection/forms.py (no function) 8 0 0 0 0 100.00%
website/facedetection/models.py secure_token 1 0 0 0 0 100.00%
website/facedetection/models.py reference_face_uploadto 3 3 0 0 0 0.00%
website/facedetection/models.py FaceDetectionPhoto.__str__ 1 0 0 0 0 100.00%
website/facedetection/models.py ReferenceFace.delete 3 3 0 2 0 0.00%
website/facedetection/models.py ReferenceFace.__str__ 1 0 0 0 0 100.00%
website/facedetection/models.py BaseFaceEncoding.encoding 4 4 0 2 0 0.00%
website/facedetection/models.py BaseFaceEncoding.encoding 3 3 0 2 0 0.00%
website/facedetection/models.py BaseFaceEncoding.encoding_match_function 3 3 0 0 0 0.00%
website/facedetection/models.py PhotoFaceEncoding.__str__ 1 0 0 0 0 100.00%
website/facedetection/models.py PhotoFaceEncoding.save 4 4 0 2 0 0.00%
website/facedetection/models.py PhotoFaceEncoding._set_matches 2 2 0 0 0 0.00%
website/facedetection/models.py ReferenceFaceEncoding.__str__ 1 0 0 0 0 100.00%
website/facedetection/models.py ReferenceFaceEncoding.save 4 4 0 2 0 0.00%
website/facedetection/models.py ReferenceFaceEncoding._set_matches 2 2 0 0 0 0.00%
website/facedetection/models.py (no function) 186 0 0 0 0 100.00%
website/facedetection/services.py execute_data_minimisation 7 7 0 4 0 0.00%
website/facedetection/services.py _serialize_lambda_source 5 5 0 4 0 0.00%
website/facedetection/services.py _trigger_facedetection_lambda_batch 12 12 0 4 0 0.00%
website/facedetection/services.py trigger_facedetection_lambda 10 10 0 8 0 0.00%
website/facedetection/services.py resubmit_reference_faces 5 5 0 2 0 0.00%
website/facedetection/services.py resubmit_photos 5 5 0 2 0 0.00%
website/facedetection/services.py submit_new_photos 8 8 0 4 0 0.00%
website/facedetection/services.py get_user_photos 7 7 0 2 0 0.00%
website/facedetection/services.py (no function) 20 0 0 0 0 100.00%
website/facedetection/signals.py trigger_reference_face_analysis 2 2 0 2 0 0.00%
website/facedetection/signals.py trigger_album_analysis 3 3 0 2 0 0.00%
website/facedetection/signals.py (no function) 9 0 0 0 0 100.00%
website/facedetection/tasks.py trigger_facedetect_lambda 6 6 0 0 0 0.00%
website/facedetection/tasks.py (no function) 6 6 0 0 0 0.00%
website/facedetection/urls.py (no function) 4 0 0 0 0 100.00%
website/facedetection/views.py YourPhotosView.get 4 4 0 2 0 0.00%
website/facedetection/views.py YourPhotosView.get_queryset 1 1 0 0 0 0.00%
website/facedetection/views.py YourPhotosView.get_context_data 5 5 0 0 0 0.00%
website/facedetection/views.py ReferenceFaceView.get_context_data 6 6 0 0 0 0.00%
website/facedetection/views.py ReferenceFaceView.get_queryset 1 1 0 0 0 0.00%
website/facedetection/views.py ReferenceFaceUploadView.dispatch 4 4 0 2 0 0.00%
website/facedetection/views.py ReferenceFaceUploadView.form_valid 8 8 0 2 0 0.00%
website/facedetection/views.py ReferenceFaceDeleteView.get_context_data 3 3 0 0 0 0.00%
website/facedetection/views.py ReferenceFaceDeleteView.get_queryset 1 1 0 0 0 0.00%
website/facedetection/views.py ReferenceFaceDeleteView.form_valid 6 6 0 0 0 0.00%
website/facedetection/views.py (no function) 39 0 0 0 0 100.00%
website/mailinglists/__init__.py (no function) 0 0 0 0 0 100.00%
website/mailinglists/admin.py MailingListAdmin.alias_names 1 1 0 0 0 0.00%
website/mailinglists/admin.py (no function) 17 0 0 0 0 100.00%
website/mailinglists/apps.py MailinglistsConfig.ready 1 0 0 0 0 100.00%
website/mailinglists/apps.py (no function) 6 0 0 0 0 100.00%
website/mailinglists/gsuite.py GSuiteSyncService.GroupData.__init__ 7 0 0 0 0 100.00%
website/mailinglists/gsuite.py GSuiteSyncService.GroupData.__eq__ 3 1 0 2 1 60.00%
website/mailinglists/gsuite.py GSuiteSyncService.__init__ 2 0 0 0 0 100.00%
website/mailinglists/gsuite.py GSuiteSyncService._group_settings 1 0 0 0 0 100.00%
website/mailinglists/gsuite.py GSuiteSyncService.create_group 18 4 0 2 0 70.00%
website/mailinglists/gsuite.py GSuiteSyncService.update_group 10 0 0 0 0 100.00%
website/mailinglists/gsuite.py GSuiteSyncService._update_group_aliases 24 4 0 4 0 85.71%
website/mailinglists/gsuite.py GSuiteSyncService.archive_group 9 0 0 0 0 100.00%
website/mailinglists/gsuite.py GSuiteSyncService.delete_group 7 7 0 0 0 0.00%
website/mailinglists/gsuite.py GSuiteSyncService._update_group_members 32 4 0 8 0 90.00%
website/mailinglists/gsuite.py GSuiteSyncService.mailing_list_to_group 1 0 0 0 0 100.00%
website/mailinglists/gsuite.py GSuiteSyncService._automatic_to_group 1 0 0 0 0 100.00%
website/mailinglists/gsuite.py GSuiteSyncService._get_default_lists 1 0 0 0 0 100.00%
website/mailinglists/gsuite.py GSuiteSyncService.sync_mailing_lists 29 0 0 16 2 95.56%
website/mailinglists/gsuite.py (no function) 29 0 0 0 0 100.00%
website/mailinglists/models.py get_automatic_mailinglists 9 5 0 6 1 33.33%
website/mailinglists/models.py MailingList.all_addresses 12 7 0 18 3 33.33%
website/mailinglists/models.py MailingList.save 3 0 0 2 1 80.00%
website/mailinglists/models.py MailingList.clean 3 0 0 2 0 100.00%
website/mailinglists/models.py MailingList.__str__ 1 0 0 0 0 100.00%
website/mailinglists/models.py VerbatimAddress.__str__ 1 0 0 0 0 100.00%
website/mailinglists/models.py ListAlias.clean 3 0 0 2 0 100.00%
website/mailinglists/models.py ListAlias.__str__ 1 0 0 0 0 100.00%
website/mailinglists/models.py (no function) 37 0 0 0 0 100.00%
website/mailinglists/services.py get_automatic_lists 21 4 0 4 2 76.00%
website/mailinglists/services.py _get_members_email_addresses 6 3 0 6 1 33.33%
website/mailinglists/services.py get_member_email_addresses 5 5 0 4 0 0.00%
website/mailinglists/services.py (no function) 8 0 0 0 0 100.00%
website/mailinglists/signals.py pre_mailinglist_save 12 9 0 4 1 25.00%
website/mailinglists/signals.py (no function) 10 0 0 0 0 100.00%
website/mailinglists/tasks.py sync_mail 2 2 0 0 0 0.00%
website/mailinglists/tasks.py (no function) 4 4 0 0 0 0.00%
website/mailinglists/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py assert_not_called_with 5 1 0 0 0 80.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.setUpTestData 6 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.setUp 3 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.test_automatic_to_group 2 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.test_mailing_list_to_group 2 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.test_group_settings 2 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.test_create_group 14 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.test_update_group 14 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.test_archive_group 13 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.test_update_group_aliases 14 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.test_update_group_members 15 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py GSuiteSyncTestCase.test_sync_mailing_lists 24 0 0 0 0 100.00%
website/mailinglists/tests/test_gsuite.py (no function) 30 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py MailingListTest.setUpTestData 1 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py MailingListTest.setUp 1 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py MailingListTest.test_clean_works 1 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py MailingListTest.test_no_alias_duplicates 5 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py MailingListTest.test_no_automatic_list 5 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py ListAliasTest.setUpTestData 2 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py ListAliasTest.setUp 2 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py ListAliasTest.test_clean_works 1 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py ListAliasTest.test_no_automatic_list 3 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py ListAliasTest.test_no_mailinglist_duplicates 5 0 0 0 0 100.00%
website/mailinglists/tests/test_models.py (no function) 19 0 0 0 0 100.00%
website/members/__init__.py (no function) 0 0 0 0 0 100.00%
website/members/admin.py ActiveMemberInline.has_change_permission 1 1 0 0 0 0.00%
website/members/admin.py ActiveMemberInline.has_add_permission 1 1 0 0 0 0.00%
website/members/admin.py ActiveMemberInline.has_delete_permission 1 1 0 0 0 0.00%
website/members/admin.py ProfileInline.get_fields 4 4 0 2 0 0.00%
website/members/admin.py MembershipTypeListFilter.lookups 1 1 0 0 0 0.00%
website/members/admin.py MembershipTypeListFilter.queryset 5 5 0 4 0 0.00%
website/members/admin.py AgeListFilter.lookups 1 1 0 0 0 0.00%
website/members/admin.py AgeListFilter.queryset 11 11 0 8 0 0.00%
website/members/admin.py HasPermissionsFilter.lookups 1 1 0 0 0 0.00%
website/members/admin.py HasPermissionsFilter.queryset 6 6 0 4 0 0.00%
website/members/admin.py UserAdmin.email_csv_export 7 7 0 2 0 0.00%
website/members/admin.py UserAdmin.address_csv_export 7 7 0 2 0 0.00%
website/members/admin.py UserAdmin.student_number_csv_export 7 7 0 2 0 0.00%
website/members/admin.py UserAdmin.minimise_data 4 4 0 2 0 0.00%
website/members/admin.py MemberAdmin.has_module_permission 1 0 0 0 0 100.00%
website/members/admin.py (no function) 68 0 0 0 0 100.00%
website/members/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/members/api/calendarjs/__init__.py (no function) 0 0 0 0 0 100.00%
website/members/api/calendarjs/serializers.py MemberBirthdaySerializer._start 1 1 0 0 0 0.00%
website/members/api/calendarjs/serializers.py MemberBirthdaySerializer._end 1 1 0 0 0 0.00%
website/members/api/calendarjs/serializers.py MemberBirthdaySerializer._all_day 1 1 0 0 0 0.00%
website/members/api/calendarjs/serializers.py MemberBirthdaySerializer._is_birthday 1 1 0 0 0 0.00%
website/members/api/calendarjs/serializers.py MemberBirthdaySerializer._url 1 1 0 0 0 0.00%
website/members/api/calendarjs/serializers.py MemberBirthdaySerializer._title 1 1 0 0 0 0.00%
website/members/api/calendarjs/serializers.py MemberBirthdaySerializer._description 4 4 0 2 0 0.00%
website/members/api/calendarjs/serializers.py MemberBirthdaySerializer._class_names 5 5 0 2 0 0.00%
website/members/api/calendarjs/serializers.py (no function) 14 0 0 0 0 100.00%
website/members/api/calendarjs/urls.py (no function) 4 0 0 0 0 100.00%
website/members/api/calendarjs/views.py CalendarJSBirthdayListView._get_birthdays 13 13 0 6 0 0.00%
website/members/api/calendarjs/views.py CalendarJSBirthdayListView.get_queryset 7 7 0 0 0 0.00%
website/members/api/calendarjs/views.py (no function) 14 0 0 0 0 100.00%
website/members/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/members/api/v2/filters.py StartingYearFilter.filter_queryset 4 4 0 2 0 0.00%
website/members/api/v2/filters.py StartingYearFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/members/api/v2/filters.py FormerMemberFilter.filter_queryset 17 17 0 6 0 0.00%
website/members/api/v2/filters.py FormerMemberFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/members/api/v2/filters.py MembershipTypeFilter.filter_queryset 5 5 0 2 0 0.00%
website/members/api/v2/filters.py MembershipTypeFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/members/api/v2/filters.py (no function) 14 0 0 0 0 100.00%
website/members/api/v2/permissions.py HasActiveMembership.has_permission 1 1 0 0 0 0.00%
website/members/api/v2/permissions.py (no function) 3 0 0 0 0 100.00%
website/members/api/v2/serializers/__init__.py (no function) 0 0 0 0 0 100.00%
website/members/api/v2/serializers/member.py MemberSerializer.__init__ 11 0 0 6 1 94.12%
website/members/api/v2/serializers/member.py MemberSerializer._achievements 1 1 0 0 0 0.00%
website/members/api/v2/serializers/member.py MemberSerializer._societies 1 1 0 0 0 0.00%
website/members/api/v2/serializers/member.py MemberSerializer._membership_type 4 1 0 2 1 66.67%
website/members/api/v2/serializers/member.py MemberSerializer.update 5 5 0 2 0 0.00%
website/members/api/v2/serializers/member.py (no function) 28 0 0 0 0 100.00%
website/members/api/v2/serializers/profile.py ProfileSerializer.__init__ 8 0 0 4 1 91.67%
website/members/api/v2/serializers/profile.py ProfileSerializer._short_display_name 1 0 0 0 0 100.00%
website/members/api/v2/serializers/profile.py ProfileSerializer._display_name 1 0 0 0 0 100.00%
website/members/api/v2/serializers/profile.py ProfileSerializer._birthday 3 1 0 2 1 60.00%
website/members/api/v2/serializers/profile.py (no function) 17 0 0 0 0 100.00%
website/members/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/members/api/v2/views.py MemberListView.get_queryset 2 2 0 0 0 0.00%
website/members/api/v2/views.py MemberListView.get_serializer 4 4 0 2 0 0.00%
website/members/api/v2/views.py MemberCurrentView.get_object 1 1 0 0 0 0.00%
website/members/api/v2/views.py (no function) 33 0 0 0 0 100.00%
website/members/apps.py MembersConfig.menu_items 1 0 0 0 0 100.00%
website/members/apps.py MembersConfig.user_menu_items 1 0 0 0 0 100.00%
website/members/apps.py MembersConfig.announcements 10 1 0 8 1 88.89%
website/members/apps.py (no function) 10 0 0 0 0 100.00%
website/members/decorators.py membership_required 1 0 0 0 0 100.00%
website/members/decorators.py ActiveMembershipRequired.__init__ 1 0 0 0 0 100.00%
website/members/decorators.py ActiveMembershipRequired.__call__ 3 0 0 2 0 100.00%
website/members/decorators.py (no function) 5 0 0 0 0 100.00%
website/members/emails.py send_information_request 8 0 0 6 2 85.71%
website/members/emails.py send_expiration_announcement 10 0 0 6 2 87.50%
website/members/emails.py send_expiration_study_long 8 0 0 4 1 91.67%
website/members/emails.py send_expiration_study_long_reminder 8 0 0 4 1 91.67%
website/members/emails.py send_welcome_message 1 0 0 0 0 100.00%
website/members/emails.py send_email_change_confirmation_messages 5 5 0 0 0 0.00%
website/members/emails.py send_email_change_completion_message 1 1 0 0 0 0.00%
website/members/emails.py (no function) 17 0 0 0 0 100.00%
website/members/forms.py ProfileForm.__init__ 15 15 0 10 0 0.00%
website/members/forms.py ProfileForm.render_app_specific_profile_form_fields 4 4 0 4 0 0.00%
website/members/forms.py ProfileForm.save 10 10 0 8 0 0.00%
website/members/forms.py ProfileForm.clean 5 5 0 4 0 0.00%
website/members/forms.py UserCreationForm.clean 3 3 0 2 0 0.00%
website/members/forms.py UserChangeForm.clean 3 3 0 2 0 0.00%
website/members/forms.py (no function) 28 0 0 0 0 100.00%
website/members/middleware.py get_member 6 1 0 0 0 83.33%
website/members/middleware.py MemberMiddleware.__init__ 1 0 0 0 0 100.00%
website/members/middleware.py MemberMiddleware.__call__ 2 0 0 0 0 100.00%
website/members/middleware.py (no function) 6 0 0 0 0 100.00%
website/members/models/__init__.py (no function) 5 0 0 0 0 100.00%
website/members/models/email_change.py EmailChange.__str__ 1 0 0 0 0 100.00%
website/members/models/email_change.py EmailChange.completed 1 0 0 0 0 100.00%
website/members/models/email_change.py EmailChange.clean 5 5 0 4 0 0.00%
website/members/models/email_change.py (no function) 18 0 0 0 0 100.00%
website/members/models/member.py MemberManager.get_queryset 1 0 0 0 0 100.00%
website/members/models/member.py ActiveMemberManager.get_queryset 2 2 0 0 0 0.00%
website/members/models/member.py CurrentMemberManager.get_queryset 1 0 0 0 0 100.00%
website/members/models/member.py CurrentMemberManager.with_birthdays_in_range 8 0 0 2 0 100.00%
website/members/models/member.py Member.__str__ 1 0 0 0 0 100.00%
website/members/models/member.py Member.refresh_from_db 7 1 0 6 3 69.23%
website/members/models/member.py Member.current_membership 9 3 0 4 1 53.85%
website/members/models/member.py Member.latest_membership 3 0 0 2 0 100.00%
website/members/models/member.py Member.earliest_membership 3 3 0 2 0 0.00%
website/members/models/member.py Member.has_been_member 1 0 0 0 0 100.00%
website/members/models/member.py Member.has_been_honorary_member 1 0 0 0 0 100.00%
website/members/models/member.py Member.has_active_membership 1 0 0 0 0 100.00%
website/members/models/member.py Member.all_with_membership 1 0 0 0 0 100.00%
website/members/models/member.py Member.can_attend_events 3 1 0 2 1 60.00%
website/members/models/member.py Member.can_attend_events_without_membership 3 3 0 2 0 0.00%
website/members/models/member.py Member.get_member_groups 2 0 0 0 0 100.00%
website/members/models/member.py Member.get_absolute_url 1 0 0 0 0 100.00%
website/members/models/member.py (no function) 48 0 0 0 0 100.00%
website/members/models/membership.py Membership.__str__ 4 3 0 2 0 16.67%
website/members/models/membership.py Membership.clean 13 13 0 10 0 0.00%
website/members/models/membership.py Membership.is_active 2 0 0 0 0 100.00%
website/members/models/membership.py (no function) 21 0 0 0 0 100.00%
website/members/models/profile.py Profile.display_name 14 0 0 12 0 100.00%
website/members/models/profile.py Profile.short_display_name 8 0 0 6 0 100.00%
website/members/models/profile.py Profile.__init__ 4 1 0 2 1 66.67%
website/members/models/profile.py Profile.clean 11 11 0 10 0 0.00%
website/members/models/profile.py Profile.save 13 7 0 8 2 47.62%
website/members/models/profile.py Profile.__str__ 1 0 0 0 0 100.00%
website/members/models/profile.py (no function) 49 0 0 0 0 100.00%
website/members/services.py _member_group_memberships 20 20 0 14 0 0.00%
website/members/services.py member_achievements 11 11 0 6 0 0.00%
website/members/services.py member_societies 2 2 0 0 0 0.00%
website/members/services.py gen_stats_member_type 5 5 0 2 0 0.00%
website/members/services.py gen_stats_year 6 0 0 4 0 100.00%
website/members/services.py gen_stats_active_members 1 1 0 0 0 0.00%
website/members/services.py verify_email_change 3 0 0 0 0 100.00%
website/members/services.py confirm_email_change 3 0 0 0 0 100.00%
website/members/services.py process_email_change 6 0 0 2 0 100.00%
website/members/services.py execute_data_minimisation 23 1 0 8 1 93.55%
website/members/services.py (no function) 20 0 0 0 0 100.00%
website/members/sitemaps.py StaticViewSitemap.items 1 0 0 0 0 100.00%
website/members/sitemaps.py StaticViewSitemap.location 1 0 0 0 0 100.00%
website/members/sitemaps.py (no function) 8 0 0 0 0 100.00%
website/members/tasks.py info_request 1 1 0 0 0 0.00%
website/members/tasks.py expiration_announcement 1 1 0 0 0 0.00%
website/members/tasks.py expiration_warning 1 1 0 0 0 0.00%
website/members/tasks.py expiration_reminder 1 1 0 0 0 0.00%
website/members/tasks.py (no function) 10 10 0 0 0 0.00%
website/members/templatetags/member_card.py member_card 6 2 0 4 2 60.00%
website/members/templatetags/member_card.py (no function) 8 0 0 0 0 100.00%
website/members/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/members/tests/test_emails.py EmailsTest.setUpTestData 42 0 0 0 0 100.00%
website/members/tests/test_emails.py EmailsTest.test_send_information_request 17 0 0 0 0 100.00%
website/members/tests/test_emails.py EmailsTest.test_send_expiration_announcement 9 0 0 0 0 100.00%
website/members/tests/test_emails.py EmailsTest.test_send_welcome_message 4 0 0 0 0 100.00%
website/members/tests/test_emails.py EmailsTest.test_send_expiration_study_long 4 0 0 0 0 100.00%
website/members/tests/test_emails.py EmailsTest.test_send_expiration_study_long_reminder 4 0 0 0 0 100.00%
website/members/tests/test_emails.py (no function) 20 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest._make_date 1 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest._get_members 3 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest._assert_none 2 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest._assert_thom 3 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest.test_one_year_contains_birthday 1 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest.test_one_year_not_contains_birthday 1 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest.test_span_year_contains_birthday 1 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest.test_span_year_not_contains_birthday 1 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest.test_span_multiple_years_contains_birthday 1 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest.test_range_before_person_born 1 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest.test_person_born_in_range_in_one_year 1 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest.test_person_born_in_range_spanning_one_year 1 0 0 0 0 100.00%
website/members/tests/test_models.py MemberBirthdayTest.test_person_born_in_range_spanning_multiple_years 1 0 0 0 0 100.00%
website/members/tests/test_models.py MemberTest.test_has_been_member 6 0 0 0 0 100.00%
website/members/tests/test_models.py MemberTest.test_has_been_honorary_member 6 0 0 0 0 100.00%
website/members/tests/test_models.py MemberTest.test_membership_properties 30 0 0 0 0 100.00%
website/members/tests/test_models.py MemberDisplayNameTest.setUpTestData 2 0 0 0 0 100.00%
website/members/tests/test_models.py MemberDisplayNameTest.setUp 5 0 0 0 0 100.00%
website/members/tests/test_models.py MemberDisplayNameTest.test_check_display_name_full 2 0 0 0 0 100.00%
website/members/tests/test_models.py MemberDisplayNameTest.test_check_display_name_nickname 6 0 0 0 0 100.00%
website/members/tests/test_models.py MemberDisplayNameTest.test_check_display_name_firstname 3 0 0 0 0 100.00%
website/members/tests/test_models.py MemberDisplayNameTest.test_check_display_name_initials 6 0 0 0 0 100.00%
website/members/tests/test_models.py MemberDisplayNameTest.test_check_display_name_fullnick 6 0 0 0 0 100.00%
website/members/tests/test_models.py MemberDisplayNameTest.test_check_display_name_nicklast 6 0 0 0 0 100.00%
website/members/tests/test_models.py (no function) 38 0 0 0 0 100.00%
website/members/tests/test_services.py StatisticsTest.setUpTestData 3 0 0 2 0 100.00%
website/members/tests/test_services.py StatisticsTest.test_gen_stats_year 2 0 0 0 0 100.00%
website/members/tests/test_services.py EmailChangeTest.setUpTestData 1 0 0 0 0 100.00%
website/members/tests/test_services.py EmailChangeTest.setUp 1 0 0 0 0 100.00%
website/members/tests/test_services.py EmailChangeTest.test_verify_email_change 5 0 0 0 0 100.00%
website/members/tests/test_services.py EmailChangeTest.test_confirm_email_change 5 0 0 0 0 100.00%
website/members/tests/test_services.py EmailChangeTest.test_process_email_change 12 0 0 0 0 100.00%
website/members/tests/test_services.py DataMinimisationTest.setUpTestData 6 0 0 0 0 100.00%
website/members/tests/test_services.py DataMinimisationTest.test_removes_after_31_days_or_no_membership 13 0 0 0 0 100.00%
website/members/tests/test_services.py DataMinimisationTest.test_provided_queryset 3 0 0 0 0 100.00%
website/members/tests/test_services.py DataMinimisationTest.test_does_not_affect_current_members 22 0 0 0 0 100.00%
website/members/tests/test_services.py (no function) 31 0 0 0 0 100.00%
website/members/tests/test_views.py MembersIndexText.setUpTestData 12 0 0 0 0 100.00%
website/members/tests/test_views.py MembersIndexText.test_honorary_query_filter 6 0 0 0 0 100.00%
website/members/tests/test_views.py MembersIndexText.test_former_query_filter 7 0 0 2 0 100.00%
website/members/tests/test_views.py (no function) 9 0 0 0 0 100.00%
website/members/urls.py (no function) 5 0 0 0 0 100.00%
website/members/views.py MembersIndex.setup 5 5 0 0 0 0.00%
website/members/views.py MembersIndex.get_queryset 29 7 0 16 5 68.89%
website/members/views.py MembersIndex.get_context_data 4 4 0 0 0 0.00%
website/members/views.py ProfileDetailView.setup 5 5 0 4 0 0.00%
website/members/views.py ProfileDetailView.get_context_data 16 16 0 8 0 0.00%
website/members/views.py UserProfileUpdateView.get_object 1 1 0 0 0 0.00%
website/members/views.py UserProfileUpdateView.get_form_kwargs 3 3 0 0 0 0.00%
website/members/views.py StatisticsView.get_context_data 3 3 0 0 0 0.00%
website/members/views.py EmailChangeFormView.get_initial 3 3 0 0 0 0.00%
website/members/views.py EmailChangeFormView.post 3 3 0 0 0 0.00%
website/members/views.py EmailChangeFormView.form_valid 3 3 0 0 0 0.00%
website/members/views.py EmailChangeConfirmView.get 5 5 0 2 0 0.00%
website/members/views.py EmailChangeVerifyView.get 5 5 0 2 0 0.00%
website/members/views.py (no function) 77 0 0 0 0 100.00%
website/merchandise/__init__.py (no function) 0 0 0 0 0 100.00%
website/merchandise/admin.py (no function) 6 0 0 0 0 100.00%
website/merchandise/apps.py MerchandiseConfig.menu_items 1 0 0 0 0 100.00%
website/merchandise/apps.py (no function) 7 0 0 0 0 100.00%
website/merchandise/models.py MerchandiseItem.__init__ 4 1 0 2 1 66.67%
website/merchandise/models.py MerchandiseItem.delete 3 3 0 2 0 0.00%
website/merchandise/models.py MerchandiseItem.save 5 5 0 2 0 0.00%
website/merchandise/models.py MerchandiseItem.__str__ 1 0 0 0 0 100.00%
website/merchandise/models.py (no function) 14 0 0 0 0 100.00%
website/merchandise/sitemaps.py StaticViewSitemap.items 1 0 0 0 0 100.00%
website/merchandise/sitemaps.py StaticViewSitemap.location 1 0 0 0 0 100.00%
website/merchandise/sitemaps.py (no function) 7 0 0 0 0 100.00%
website/merchandise/urls.py (no function) 4 0 0 0 0 100.00%
website/merchandise/views.py index 2 2 0 0 0 0.00%
website/merchandise/views.py product_page 5 5 0 0 0 0.00%
website/merchandise/views.py (no function) 5 0 0 0 0 100.00%
website/moneybirdsynchronization/__init__.py (no function) 0 0 0 0 0 100.00%
website/moneybirdsynchronization/admin.py MoneybirdContactAdmin.get_readonly_fields 3 3 0 2 0 0.00%
website/moneybirdsynchronization/admin.py MoneybirdExternalInvoiceAdmin.payable_object 4 4 0 2 0 0.00%
website/moneybirdsynchronization/admin.py MoneybirdPaymentAdmin.get_readonly_fields 3 3 0 2 0 0.00%
website/moneybirdsynchronization/admin.py MoneybirdPaymentAdmin.payment_type 1 1 0 0 0 0.00%
website/moneybirdsynchronization/admin.py MoneybirdPaymentAdmin.payment_topic 1 1 0 0 0 0.00%
website/moneybirdsynchronization/admin.py MoneybirdPaymentAdmin.paid_by 1 1 0 0 0 0.00%
website/moneybirdsynchronization/admin.py MoneybirdPaymentAdmin.amount 1 1 0 0 0 0.00%
website/moneybirdsynchronization/admin.py MoneybirdReceiptAdmin.reimbursement_link 1 1 0 0 0 0.00%
website/moneybirdsynchronization/admin.py MoneybirdReceiptAdmin.get_readonly_fields 3 3 0 2 0 0.00%
website/moneybirdsynchronization/admin.py MoneybirdReceiptAdmin.get_queryset 2 2 0 0 0 0.00%
website/moneybirdsynchronization/admin.py (no function) 45 0 0 0 0 100.00%
website/moneybirdsynchronization/administration.py Administration.__init__ 1 1 0 0 0 0.00%
website/moneybirdsynchronization/administration.py Administration.get 0 0 0 0 0 100.00%
website/moneybirdsynchronization/administration.py Administration.post 0 0 0 0 0 100.00%
website/moneybirdsynchronization/administration.py Administration.patch 0 0 0 0 0 100.00%
website/moneybirdsynchronization/administration.py Administration.delete 0 0 0 0 0 100.00%
website/moneybirdsynchronization/administration.py Administration.Error.__init__ 6 1 0 2 1 75.00%
website/moneybirdsynchronization/administration.py Administration._create_session 0 0 0 0 0 100.00%
website/moneybirdsynchronization/administration.py Administration._build_url 5 5 0 2 0 0.00%
website/moneybirdsynchronization/administration.py Administration._process_response 31 31 0 12 0 0.00%
website/moneybirdsynchronization/administration.py _retry_if_throttled 4 0 0 0 0 100.00%
website/moneybirdsynchronization/administration.py _retry_if_throttled.decorator_retry 2 0 0 0 0 100.00%
website/moneybirdsynchronization/administration.py _retry_if_throttled.decorator_retry.wrapper 14 14 0 4 0 0.00%
website/moneybirdsynchronization/administration.py HttpsAdministration.__init__ 3 3 0 0 0 0.00%
website/moneybirdsynchronization/administration.py HttpsAdministration._create_session 3 3 0 0 0 0.00%
website/moneybirdsynchronization/administration.py HttpsAdministration.get 4 4 0 0 0 0.00%
website/moneybirdsynchronization/administration.py HttpsAdministration.post 4 4 0 0 0 0.00%
website/moneybirdsynchronization/administration.py HttpsAdministration.post_files 4 4 0 0 0 0.00%
website/moneybirdsynchronization/administration.py HttpsAdministration.patch 4 4 0 0 0 0.00%
website/moneybirdsynchronization/administration.py HttpsAdministration.delete 4 4 0 0 0 0.00%
website/moneybirdsynchronization/administration.py get_moneybird_administration 3 3 0 2 0 0.00%
website/moneybirdsynchronization/administration.py (no function) 51 0 0 0 0 100.00%
website/moneybirdsynchronization/apps.py MoneybirdsynchronizationConfig.ready 1 0 0 0 0 100.00%
website/moneybirdsynchronization/apps.py (no function) 6 0 0 0 0 100.00%
website/moneybirdsynchronization/emails.py send_sync_error 1 0 0 0 0 100.00%
website/moneybirdsynchronization/emails.py (no function) 7 0 0 0 0 100.00%
website/moneybirdsynchronization/models.py financial_account_id_for_payment_type 7 2 0 6 2 69.23%
website/moneybirdsynchronization/models.py project_name_for_payable_model 12 12 0 8 0 0.00%
website/moneybirdsynchronization/models.py date_for_payable_model 9 9 0 8 0 0.00%
website/moneybirdsynchronization/models.py period_for_payable_model 5 5 0 4 0 0.00%
website/moneybirdsynchronization/models.py tax_rate_for_payable_model 3 3 0 2 0 0.00%
website/moneybirdsynchronization/models.py ledger_id_for_payable_model 3 3 0 2 0 0.00%
website/moneybirdsynchronization/models.py MoneybirdProject.__str__ 1 0 0 0 0 100.00%
website/moneybirdsynchronization/models.py MoneybirdProject.to_moneybird 1 1 0 0 0 0.00%
website/moneybirdsynchronization/models.py MoneybirdContact.to_moneybird 24 7 0 10 3 70.59%
website/moneybirdsynchronization/models.py MoneybirdContact.get_moneybird_info 1 1 0 0 0 0.00%
website/moneybirdsynchronization/models.py MoneybirdContact.__str__ 1 0 0 0 0 100.00%
website/moneybirdsynchronization/models.py MoneybirdExternalInvoice.payable 4 4 0 2 0 0.00%
website/moneybirdsynchronization/models.py MoneybirdExternalInvoice.create_for_object 2 2 0 0 0 0.00%
website/moneybirdsynchronization/models.py MoneybirdExternalInvoice.get_for_object 5 0 0 0 0 100.00%
website/moneybirdsynchronization/models.py MoneybirdExternalInvoice.to_moneybird 36 36 0 18 0 0.00%
website/moneybirdsynchronization/models.py MoneybirdExternalInvoice.__str__ 1 0 0 0 0 100.00%
website/moneybirdsynchronization/models.py MoneybirdReceipt.to_moneybird 11 11 0 2 0 0.00%
website/moneybirdsynchronization/models.py MoneybirdReceipt.__str__ 1 0 0 0 0 100.00%
website/moneybirdsynchronization/models.py MoneybirdPayment.__str__ 1 0 0 0 0 100.00%
website/moneybirdsynchronization/models.py MoneybirdPayment.to_moneybird 5 2 0 2 1 57.14%
website/moneybirdsynchronization/models.py (no function) 80 0 0 0 0 100.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.__init__ 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.create_contact 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.update_contact 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.delete_contact 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.create_project 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.create_external_sales_invoice 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.update_external_sales_invoice 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.delete_external_sales_invoice 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.register_external_invoice_payment 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.delete_external_invoice_payment 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.create_financial_statement 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.update_financial_statement 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.delete_financial_statement 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.create_receipt 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.add_receipt_attachment 2 2 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.link_mutation_to_booking 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.get_financial_mutation_info 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py MoneybirdAPIService.unlink_mutation_from_booking 1 1 0 0 0 0.00%
website/moneybirdsynchronization/moneybird.py get_moneybird_api_service 3 1 0 2 1 60.00%
website/moneybirdsynchronization/moneybird.py (no function) 24 0 0 0 0 100.00%
website/moneybirdsynchronization/services.py create_or_update_contact 24 11 0 4 1 57.14%
website/moneybirdsynchronization/services.py delete_contact 14 14 0 6 0 0.00%
website/moneybirdsynchronization/services.py create_or_update_external_invoice 24 24 0 12 0 0.00%
website/moneybirdsynchronization/services.py delete_external_invoice 14 14 0 6 0 0.00%
website/moneybirdsynchronization/services.py create_receipt 15 15 0 8 0 0.00%
website/moneybirdsynchronization/services.py synchronize_moneybird 14 14 0 2 0 0.00%
website/moneybirdsynchronization/services.py _delete_invoices 11 0 0 4 0 100.00%
website/moneybirdsynchronization/services.py _sync_outdated_invoices 14 3 0 4 1 77.78%
website/moneybirdsynchronization/services.py _sync_contacts 20 9 0 6 0 65.38%
website/moneybirdsynchronization/services.py _sync_contacts_with_outdated_mandates 8 3 0 2 0 70.00%
website/moneybirdsynchronization/services.py _try_create_or_update_external_invoices 7 3 0 2 0 66.67%
website/moneybirdsynchronization/services.py _sync_food_orders 3 0 0 0 0 100.00%
website/moneybirdsynchronization/services.py _sync_sales_orders 3 0 0 0 0 100.00%
website/moneybirdsynchronization/services.py _sync_registrations 3 3 0 0 0 0.00%
website/moneybirdsynchronization/services.py _sync_renewals 3 0 0 0 0 100.00%
website/moneybirdsynchronization/services.py _sync_event_registrations 11 3 0 2 0 76.92%
website/moneybirdsynchronization/services.py _sync_receipts 8 8 0 2 0 0.00%
website/moneybirdsynchronization/services.py _sync_moneybird_payments 15 4 0 6 1 76.19%
website/moneybirdsynchronization/services.py _create_payments_statement 8 0 0 2 0 100.00%
website/moneybirdsynchronization/services.py delete_moneybird_payment 11 11 0 6 0 0.00%
website/moneybirdsynchronization/services.py process_thalia_pay_batch 4 4 0 2 0 0.00%
website/moneybirdsynchronization/services.py (no function) 41 0 0 0 0 100.00%
website/moneybirdsynchronization/signals.py post_profile_save 8 1 0 6 1 85.71%
website/moneybirdsynchronization/signals.py post_profile_delete 3 3 0 2 0 0.00%
website/moneybirdsynchronization/signals.py post_user_save 10 6 0 4 0 28.57%
website/moneybirdsynchronization/signals.py post_user_delete 3 3 0 2 0 0.00%
website/moneybirdsynchronization/signals.py post_bank_account_save 7 3 0 4 2 54.55%
website/moneybirdsynchronization/signals.py post_bank_account_delete 4 4 0 2 0 0.00%
website/moneybirdsynchronization/signals.py mark_invoice_outdated 4 2 0 2 1 50.00%
website/moneybirdsynchronization/signals.py post_renewal_delete 6 0 0 4 0 100.00%
website/moneybirdsynchronization/signals.py post_payment_delete 5 5 0 0 0 0.00%
website/moneybirdsynchronization/signals.py post_processed_batch 5 5 0 0 0 0.00%
website/moneybirdsynchronization/signals.py (no function) 41 0 0 0 0 100.00%
website/moneybirdsynchronization/tasks.py synchronize_moneybird 3 3 0 2 0 0.00%
website/moneybirdsynchronization/tasks.py synchronize_moneybird_reimbursement 7 7 0 4 0 0.00%
website/moneybirdsynchronization/tasks.py (no function) 8 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.setUpTestData 6 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_create_or_update_contact_with_mandate 51 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_sync_contacts_with_outdated_mandates 13 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_delete_invoices 27 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_sync_outdated_invoices 21 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_sync_moneybird_payments 23 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_sync_moneybird_payments.side_effect 1 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_sync_food_orders 7 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_sync_sales_orders 10 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_sync_renewals 5 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_sync_event_registrations 20 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py ServicesTest.test_sync_contacts 42 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_services.py (no function) 46 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_signals.py SignalsTest.setUpTestData 4 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_signals.py SignalsTest.test_dataminimisation_does_not_trigger_invoice_deletion 22 0 0 0 0 100.00%
website/moneybirdsynchronization/tests/test_signals.py (no function) 16 0 0 0 0 100.00%
website/newsletters/__init__.py (no function) 0 0 0 0 0 100.00%
website/newsletters/admin.py NewsletterAdmin.change_view 4 0 0 2 0 100.00%
website/newsletters/admin.py NewsletterAdmin.has_delete_permission 3 1 0 2 1 60.00%
website/newsletters/admin.py NewsletterAdmin.get_actions 3 0 0 0 0 100.00%
website/newsletters/admin.py NewsletterAdmin.get_urls 3 0 0 0 0 100.00%
website/newsletters/admin.py (no function) 26 0 0 0 0 100.00%
website/newsletters/apps.py (no function) 5 0 0 0 0 100.00%
website/newsletters/emails.py send_newsletter 12 4 0 2 1 64.29%
website/newsletters/emails.py (no function) 10 0 0 0 0 100.00%
website/newsletters/forms.py NewsletterEventForm.__init__ 3 0 0 0 0 100.00%
website/newsletters/forms.py NewsletterImportEventForm.import_events 19 19 0 14 0 0.00%
website/newsletters/forms.py NewsletterImportEventForm.clean 18 18 0 14 0 0.00%
website/newsletters/forms.py (no function) 25 0 0 0 0 100.00%
website/newsletters/models.py newsletter_filename 1 0 0 0 0 100.00%
website/newsletters/models.py Newsletter.get_absolute_url 1 0 0 0 0 100.00%
website/newsletters/models.py Newsletter.clean 9 9 0 6 0 0.00%
website/newsletters/models.py Newsletter.__str__ 1 0 0 0 0 100.00%
website/newsletters/models.py NewsletterContent.clean 7 2 0 4 2 63.64%
website/newsletters/models.py NewsletterContent.__str__ 1 0 0 0 0 100.00%
website/newsletters/models.py NewsletterEvent.clean 3 0 0 2 0 100.00%
website/newsletters/models.py (no function) 38 0 0 0 0 100.00%
website/newsletters/services.py save_to_disk 8 0 0 0 0 100.00%
website/newsletters/services.py embed_linked_html_images 18 10 0 4 1 50.00%
website/newsletters/services.py get_agenda 7 7 0 2 0 0.00%
website/newsletters/services.py send_newsletter 5 0 0 0 0 100.00%
website/newsletters/services.py split_local_partners 8 2 0 4 2 66.67%
website/newsletters/services.py (no function) 19 0 0 0 0 100.00%
website/newsletters/signals.py (no function) 2 0 0 0 0 100.00%
website/newsletters/tasks.py send_planned_newsletters 3 3 0 2 0 0.00%
website/newsletters/tasks.py (no function) 6 6 0 0 0 0.00%
website/newsletters/templatetags/listutil.py rows 10 2 0 2 0 83.33%
website/newsletters/templatetags/listutil.py rows_distributed 19 2 0 6 0 92.00%
website/newsletters/templatetags/listutil.py columns 10 2 0 2 0 83.33%
website/newsletters/templatetags/listutil.py _test 2 2 0 0 0 0.00%
website/newsletters/templatetags/listutil.py (no function) 11 1 0 2 1 84.62%
website/newsletters/urls.py (no function) 4 0 0 0 0 100.00%
website/newsletters/views.py preview 6 1 0 2 1 75.00%
website/newsletters/views.py admin_send 7 0 0 4 0 100.00%
website/newsletters/views.py ImportEventView.success_url 1 1 0 0 0 0.00%
website/newsletters/views.py ImportEventView.get_context_data 4 4 0 0 0 0.00%
website/newsletters/views.py ImportEventView.form_valid 2 2 0 0 0 0.00%
website/newsletters/views.py ImportEventView.dispatch 2 2 0 0 0 0.00%
website/newsletters/views.py (no function) 28 0 0 0 0 100.00%
website/partners/__init__.py (no function) 0 0 0 0 0 100.00%
website/partners/admin.py (no function) 23 0 0 0 0 100.00%
website/partners/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/partners/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/partners/api/v2/filters.py VacancyPartnerFilter.filter_queryset 4 4 0 2 0 0.00%
website/partners/api/v2/filters.py VacancyPartnerFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/partners/api/v2/filters.py VacancyCategoryFilter.filter_queryset 4 4 0 2 0 0.00%
website/partners/api/v2/filters.py VacancyCategoryFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/partners/api/v2/filters.py (no function) 7 0 0 0 0 100.00%
website/partners/api/v2/serializers/__init__.py (no function) 4 0 0 0 0 100.00%
website/partners/api/v2/serializers/partner.py (no function) 9 0 0 0 0 100.00%
website/partners/api/v2/serializers/vacancy.py VacancySerializer._company_logo 1 1 0 0 0 0.00%
website/partners/api/v2/serializers/vacancy.py (no function) 13 0 0 0 0 100.00%
website/partners/api/v2/serializers/vacancy_category.py (no function) 6 0 0 0 0 100.00%
website/partners/api/v2/urls.py (no function) 5 0 0 0 0 100.00%
website/partners/api/v2/views.py PartnerListView.get_serializer 4 4 0 2 0 0.00%
website/partners/api/v2/views.py (no function) 44 0 0 0 0 100.00%
website/partners/apps.py PartnersConfig.menu_items 1 0 0 0 0 100.00%
website/partners/apps.py (no function) 7 0 0 0 0 100.00%
website/partners/models.py Partner.__init__ 3 0 0 0 0 100.00%
website/partners/models.py Partner.delete 5 5 0 4 0 0.00%
website/partners/models.py Partner.save 10 10 0 6 0 0.00%
website/partners/models.py Partner._reset_main_partner 7 7 0 2 0 0.00%
website/partners/models.py Partner.__str__ 1 0 0 0 0 100.00%
website/partners/models.py Partner.get_absolute_url 1 1 0 0 0 0.00%
website/partners/models.py PartnerImage.__init__ 2 0 0 0 0 100.00%
website/partners/models.py PartnerImage.delete 3 3 0 2 0 0.00%
website/partners/models.py PartnerImage.save 4 4 0 2 0 0.00%
website/partners/models.py PartnerImage.__str__ 1 0 0 0 0 100.00%
website/partners/models.py VacancyCategory.__str__ 1 0 0 0 0 100.00%
website/partners/models.py Vacancy.get_company_name 3 1 0 2 1 60.00%
website/partners/models.py Vacancy.get_company_logo 3 3 0 2 0 0.00%
website/partners/models.py Vacancy.__str__ 1 0 0 0 0 100.00%
website/partners/models.py Vacancy.get_absolute_url 4 4 0 2 0 0.00%
website/partners/models.py Vacancy.__init__ 2 0 0 0 0 100.00%
website/partners/models.py Vacancy.delete 3 3 0 2 0 0.00%
website/partners/models.py Vacancy.save 4 4 0 2 0 0.00%
website/partners/models.py Vacancy.clean 18 18 0 14 0 0.00%
website/partners/models.py (no function) 69 0 0 0 0 100.00%
website/partners/sitemaps.py StaticViewSitemap.items 1 0 0 0 0 100.00%
website/partners/sitemaps.py StaticViewSitemap.location 1 0 0 0 0 100.00%
website/partners/sitemaps.py PartnerSitemap.items 1 0 0 0 0 100.00%
website/partners/sitemaps.py PartnerSitemap.location 1 1 0 0 0 0.00%
website/partners/sitemaps.py VacancySitemap.items 1 0 0 0 0 100.00%
website/partners/sitemaps.py VacancySitemap.location 1 1 0 0 0 0.00%
website/partners/sitemaps.py (no function) 14 0 0 0 0 100.00%
website/partners/templatetags/frontpage_vacancies.py render_frontpage_vacancies 7 4 0 4 1 36.36%
website/partners/templatetags/frontpage_vacancies.py (no function) 6 0 0 0 0 100.00%
website/partners/templatetags/partner_banners.py render_partner_banners 12 0 0 2 1 92.86%
website/partners/templatetags/partner_banners.py (no function) 7 0 0 0 0 100.00%
website/partners/templatetags/partner_cards.py partner_card 5 5 0 2 0 0.00%
website/partners/templatetags/partner_cards.py partner_image_card 3 3 0 0 0 0.00%
website/partners/templatetags/partner_cards.py vacancy_card 12 12 0 4 0 0.00%
website/partners/templatetags/partner_cards.py (no function) 12 0 0 0 0 100.00%
website/partners/urls.py (no function) 4 0 0 0 0 100.00%
website/partners/views.py index 6 6 0 0 0 0.00%
website/partners/views.py partner 3 3 0 0 0 0.00%
website/partners/views.py vacancies 4 4 0 0 0 0.00%
website/partners/views.py (no function) 7 0 0 0 0 100.00%
website/payments/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/admin.py _show_message 3 0 0 2 0 100.00%
website/payments/admin.py PayableModelListFilter.lookups 1 0 0 0 0 100.00%
website/payments/admin.py PayableModelListFilter.queryset 8 0 0 6 0 100.00%
website/payments/admin.py PaymentAdmin.payable_object 4 0 0 2 0 100.00%
website/payments/admin.py PaymentAdmin._member_link 1 0 0 0 0 100.00%
website/payments/admin.py PaymentAdmin.paid_by_link 1 0 0 0 0 100.00%
website/payments/admin.py PaymentAdmin._batch_link 5 0 0 4 0 100.00%
website/payments/admin.py PaymentAdmin.batch_link 1 0 0 0 0 100.00%
website/payments/admin.py PaymentAdmin.processed_by_link 1 0 0 0 0 100.00%
website/payments/admin.py PaymentAdmin.has_delete_permission 9 0 0 10 0 100.00%
website/payments/admin.py PaymentAdmin.get_field_queryset 3 0 0 2 0 100.00%
website/payments/admin.py PaymentAdmin.get_readonly_fields 6 0 0 4 0 100.00%
website/payments/admin.py PaymentAdmin.get_actions 5 0 0 2 0 100.00%
website/payments/admin.py PaymentAdmin.add_to_new_batch 5 0 0 2 0 100.00%
website/payments/admin.py PaymentAdmin.add_to_last_batch 11 0 0 6 0 100.00%
website/payments/admin.py PaymentAdmin.get_urls 3 0 0 0 0 100.00%
website/payments/admin.py PaymentAdmin.export_csv 8 0 0 2 0 100.00%
website/payments/admin.py ValidAccountFilter.lookups 1 0 0 0 0 100.00%
website/payments/admin.py ValidAccountFilter.queryset 8 0 0 6 0 100.00%
website/payments/admin.py PaymentsInline.get_fields 4 0 0 2 0 100.00%
website/payments/admin.py BatchAdmin.get_readonly_fields 4 0 0 2 0 100.00%
website/payments/admin.py BatchAdmin.has_delete_permission 8 0 0 10 0 100.00%
website/payments/admin.py BatchAdmin.get_urls 3 0 0 0 0 100.00%
website/payments/admin.py BatchAdmin.save_formset 6 0 0 4 0 100.00%
website/payments/admin.py BatchAdmin.changeform_view 6 0 0 2 0 100.00%
website/payments/admin.py BankAccountAdmin.owner_link 3 0 0 2 0 100.00%
website/payments/admin.py BankAccountAdmin.can_be_revoked 1 0 0 0 0 100.00%
website/payments/admin.py BankAccountAdmin.set_last_used 3 0 0 2 0 100.00%
website/payments/admin.py BankAccountAdmin.export_csv 8 0 0 2 0 100.00%
website/payments/admin.py BankAccountInline.has_add_permission 1 0 0 0 0 100.00%
website/payments/admin.py BankAccountInline.has_change_permission 1 0 0 0 0 100.00%
website/payments/admin.py BankAccountInline.has_delete_permission 1 0 0 0 0 100.00%
website/payments/admin.py PaymentInline.has_add_permission 1 0 0 0 0 100.00%
website/payments/admin.py PaymentInline.has_change_permission 1 0 0 0 0 100.00%
website/payments/admin.py PaymentInline.has_delete_permission 1 0 0 0 0 100.00%
website/payments/admin.py ThaliaPayAllowedFilter.lookups 1 0 0 0 0 100.00%
website/payments/admin.py ThaliaPayAllowedFilter.queryset 5 0 0 4 0 100.00%
website/payments/admin.py ThaliaPayEnabledFilter.lookups 1 0 0 0 0 100.00%
website/payments/admin.py ThaliaPayEnabledFilter.queryset 5 0 0 4 0 100.00%
website/payments/admin.py ThaliaPayBalanceFilter.lookups 1 0 0 0 0 100.00%
website/payments/admin.py ThaliaPayBalanceFilter.queryset 5 0 0 4 0 100.00%
website/payments/admin.py PaymentUserAdmin.get_queryset 4 0 0 0 0 100.00%
website/payments/admin.py PaymentUserAdmin.get_tpay_balance 1 0 0 0 0 100.00%
website/payments/admin.py PaymentUserAdmin.get_tpay_enabled 1 0 0 0 0 100.00%
website/payments/admin.py PaymentUserAdmin.get_tpay_allowed 1 0 0 0 0 100.00%
website/payments/admin.py PaymentUserAdmin.user_link 1 0 0 0 0 100.00%
website/payments/admin.py PaymentUserAdmin.disallow_thalia_pay 5 0 0 2 0 100.00%
website/payments/admin.py PaymentUserAdmin.allow_thalia_pay 5 0 0 2 0 100.00%
website/payments/admin.py PaymentUserAdmin.has_add_permission 1 0 0 0 0 100.00%
website/payments/admin.py PaymentUserAdmin.has_change_permission 1 0 0 0 0 100.00%
website/payments/admin.py PaymentUserAdmin.has_delete_permission 1 0 0 0 0 100.00%
website/payments/admin.py (no function) 164 0 0 0 0 100.00%
website/payments/admin_views.py PaymentAdminView.post 21 0 0 10 0 100.00%
website/payments/admin_views.py BatchProcessAdminView.post 10 0 0 6 0 100.00%
website/payments/admin_views.py BatchExportAdminView.post 12 0 0 2 0 100.00%
website/payments/admin_views.py BatchTopicExportAdminView.post 10 0 0 2 0 100.00%
website/payments/admin_views.py BatchTopicDescriptionAdminView.post 13 0 0 2 0 100.00%
website/payments/admin_views.py BatchNewFilledAdminView.post 5 0 0 0 0 100.00%
website/payments/admin_views.py (no function) 44 0 0 0 0 100.00%
website/payments/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/api/v2/admin/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/api/v2/admin/serializers/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/api/v2/admin/serializers/payable_create.py (no function) 5 0 0 0 0 100.00%
website/payments/api/v2/admin/serializers/payable_detail.py (no function) 12 0 0 0 0 100.00%
website/payments/api/v2/admin/serializers/payment.py MemberAsPaymentUserSerializer.to_representation 3 3 0 2 0 0.00%
website/payments/api/v2/admin/serializers/payment.py (no function) 20 0 0 0 0 100.00%
website/payments/api/v2/admin/urls.py (no function) 4 0 0 0 0 100.00%
website/payments/api/v2/admin/views.py PaymentListCreateView.get_serializer_class 3 3 0 2 0 0.00%
website/payments/api/v2/admin/views.py PaymentListCreateView.create 4 4 0 0 0 0.00%
website/payments/api/v2/admin/views.py PaymentDetailView.delete 3 3 0 2 0 0.00%
website/payments/api/v2/admin/views.py PayableDetailView.get_serializer_context 1 1 0 0 0 0.00%
website/payments/api/v2/admin/views.py PayableDetailView.get_payable 11 11 0 2 0 0.00%
website/payments/api/v2/admin/views.py PayableDetailView.get 2 2 0 0 0 0.00%
website/payments/api/v2/admin/views.py PayableDetailView.delete 9 9 0 2 0 0.00%
website/payments/api/v2/admin/views.py PayableDetailView.patch 9 9 0 0 0 0.00%
website/payments/api/v2/admin/views.py (no function) 42 0 0 0 0 100.00%
website/payments/api/v2/filters.py CreatedAtFilter.filter_queryset 6 2 0 4 2 60.00%
website/payments/api/v2/filters.py CreatedAtFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/payments/api/v2/filters.py PaymentTypeFilter.filter_queryset 4 1 0 2 1 66.67%
website/payments/api/v2/filters.py PaymentTypeFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/payments/api/v2/filters.py PaymentSettledFilter.filter_queryset 9 2 0 4 0 84.62%
website/payments/api/v2/filters.py PaymentSettledFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/payments/api/v2/filters.py (no function) 12 0 0 0 0 100.00%
website/payments/api/v2/serializers/__init__.py (no function) 5 0 0 0 0 100.00%
website/payments/api/v2/serializers/payable_detail.py (no function) 9 0 0 0 0 100.00%
website/payments/api/v2/serializers/payment.py (no function) 6 0 0 0 0 100.00%
website/payments/api/v2/serializers/payment_amount.py PaymentAmountSerializer.__init__ 3 0 0 0 0 100.00%
website/payments/api/v2/serializers/payment_amount.py (no function) 4 0 0 0 0 100.00%
website/payments/api/v2/serializers/payment_user.py (no function) 9 0 0 0 0 100.00%
website/payments/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/payments/api/v2/views.py PaymentListView.get_queryset 1 0 0 0 0 100.00%
website/payments/api/v2/views.py PaymentDetailView.get_queryset 1 1 0 0 0 0.00%
website/payments/api/v2/views.py PayableDetailView.get_serializer_class 3 3 0 2 0 0.00%
website/payments/api/v2/views.py PayableDetailView.get 2 2 0 0 0 0.00%
website/payments/api/v2/views.py PayableDetailView.get_payable 11 11 0 2 0 0.00%
website/payments/api/v2/views.py PayableDetailView.patch 9 9 0 2 0 0.00%
website/payments/api/v2/views.py PaymentUserCurrentView.get_object 1 1 0 0 0 0.00%
website/payments/api/v2/views.py (no function) 45 0 0 0 0 100.00%
website/payments/apps.py PaymentsConfig.user_menu_items 1 0 0 0 0 100.00%
website/payments/apps.py (no function) 7 0 0 0 0 100.00%
website/payments/exceptions.py (no function) 1 0 0 0 0 100.00%
website/payments/forms.py BankAccountUserRevokeForm.is_valid 1 0 0 0 0 100.00%
website/payments/forms.py (no function) 32 0 0 0 0 100.00%
website/payments/management/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/management/commands/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/models.py validate_not_zero 2 0 0 2 0 100.00%
website/payments/models.py PaymentAmountField.__init__ 8 0 0 2 0 100.00%
website/payments/models.py PaymentUser.tpay_enabled 2 0 0 0 0 100.00%
website/payments/models.py PaymentUser.tpay_allowed 1 0 0 0 0 100.00%
website/payments/models.py PaymentUser.allow_tpay 2 0 0 0 0 100.00%
website/payments/models.py PaymentUser.disallow_tpay 2 0 0 0 0 100.00%
website/payments/models.py BlacklistedPaymentUser.__str__ 1 0 0 0 0 100.00%
website/payments/models.py Payment.get_payable_prefetches 1 0 0 0 0 100.00%
website/payments/models.py Payment.payable_object 4 0 0 4 0 100.00%
website/payments/models.py Payment.__init__ 8 0 0 4 0 100.00%
website/payments/models.py Payment.save 3 0 0 0 0 100.00%
website/payments/models.py Payment.clean 12 0 0 12 0 100.00%
website/payments/models.py Payment.get_admin_url 2 0 0 0 0 100.00%
website/payments/models.py Payment.__str__ 1 0 0 0 0 100.00%
website/payments/models.py _default_batch_description 2 0 0 0 0 100.00%
website/payments/models.py _default_withdrawal_date 1 0 0 0 0 100.00%
website/payments/models.py Batch.save 3 0 0 2 0 100.00%
website/payments/models.py Batch.get_absolute_url 1 0 0 0 0 100.00%
website/payments/models.py Batch.start_date 1 0 0 0 0 100.00%
website/payments/models.py Batch.end_date 1 0 0 0 0 100.00%
website/payments/models.py Batch.total_amount 1 0 0 0 0 100.00%
website/payments/models.py Batch.payments_count 1 0 0 0 0 100.00%
website/payments/models.py Batch.__str__ 1 0 0 0 0 100.00%
website/payments/models.py BankAccount.clean 17 0 0 16 0 100.00%
website/payments/models.py BankAccount.name 1 0 0 0 0 100.00%
website/payments/models.py BankAccount.can_be_revoked 1 0 0 0 0 100.00%
website/payments/models.py BankAccount.valid 3 0 0 2 0 100.00%
website/payments/models.py BankAccount.__str__ 1 0 0 0 0 100.00%
website/payments/models.py (no function) 118 0 0 0 0 100.00%
website/payments/payables.py Payable.__init__ 1 0 0 0 0 100.00%
website/payments/payables.py Payable.pk 1 0 0 0 0 100.00%
website/payments/payables.py Payable.payment 1 0 0 0 0 100.00%
website/payments/payables.py Payable.payment 1 0 0 0 0 100.00%
website/payments/payables.py Payable.get_payment 5 0 0 0 0 100.00%
website/payments/payables.py Payable.payment_amount 0 0 0 0 0 100.00%
website/payments/payables.py Payable.payment_topic 0 0 0 0 0 100.00%
website/payments/payables.py Payable.payment_notes 0 0 0 0 0 100.00%
website/payments/payables.py Payable.payment_payer 0 0 0 0 0 100.00%
website/payments/payables.py Payable.tpay_allowed 1 0 0 0 0 100.00%
website/payments/payables.py Payable.paying_allowed 1 0 0 0 0 100.00%
website/payments/payables.py Payable.can_manage_payment 0 0 0 0 0 100.00%
website/payments/payables.py Payable.immutable_after_payment 1 0 0 0 0 100.00%
website/payments/payables.py Payable.immutable_foreign_key_models 1 0 0 0 0 100.00%
website/payments/payables.py Payable.immutable_model_fields_after_payment 1 0 0 0 0 100.00%
website/payments/payables.py Payable.__hash__ 1 0 0 0 0 100.00%
website/payments/payables.py Payables.__init__ 1 0 0 0 0 100.00%
website/payments/payables.py Payables._get_key 1 0 0 0 0 100.00%
website/payments/payables.py Payables.get_payable 3 0 0 2 0 100.00%
website/payments/payables.py Payables.get_payable_models 1 0 0 0 0 100.00%
website/payments/payables.py Payables.register 6 0 0 4 0 100.00%
website/payments/payables.py Payables._unregister 6 0 0 4 0 100.00%
website/payments/payables.py prevent_saving 17 0 0 12 0 100.00%
website/payments/payables.py prevent_saving_related 2 0 0 0 0 100.00%
website/payments/payables.py prevent_saving_related.prevent_related_saving_paid_after_immutable 13 0 0 8 0 100.00%
website/payments/payables.py (no function) 59 0 0 0 0 100.00%
website/payments/services.py create_payment 33 0 0 14 0 100.00%
website/payments/services.py delete_payment 12 0 0 6 0 100.00%
website/payments/services.py update_last_used 5 0 0 2 0 100.00%
website/payments/services.py revoke_old_mandates 1 0 0 0 0 100.00%
website/payments/services.py process_batch 9 0 3 2 0 100.00%
website/payments/services.py derive_next_mandate_no 3 0 0 0 0 100.00%
website/payments/services.py send_tpay_batch_processing_emails 7 0 0 2 0 100.00%
website/payments/services.py execute_data_minimisation 12 0 0 2 0 100.00%
website/payments/services.py (no function) 22 0 0 0 0 100.00%
website/payments/signals.py (no function) 2 0 0 0 0 100.00%
website/payments/tasks.py revoke_mandates 1 0 0 0 0 100.00%
website/payments/tasks.py (no function) 4 0 0 0 0 100.00%
website/payments/templatetags/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/templatetags/payments.py payment_button 4 1 0 2 1 66.67%
website/payments/templatetags/payments.py (no function) 8 0 0 0 0 100.00%
website/payments/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockModel.__init__ 9 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockModel.save 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockModel.refresh_from_db 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockPayable.payment_amount 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockPayable.payment_topic 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockPayable.payment_notes 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockPayable.payment_payer 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockPayable.paying_allowed 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockPayable.can_manage_payment 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockPayable.immutable_after_payment 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockPayable.immutable_foreign_key_models 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py MockPayable.immutable_model_fields_after_payment 1 0 0 0 0 100.00%
website/payments/tests/__mocks__.py (no function) 38 0 0 0 0 100.00%
website/payments/tests/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/tests/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/payments/tests/api/v2/test_views.py PaymentListViewTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/api/v2/test_views.py PaymentListViewTest.setUp 4 0 0 0 0 100.00%
website/payments/tests/api/v2/test_views.py PaymentListViewTest.test_settled_filter 22 0 0 0 0 100.00%
website/payments/tests/api/v2/test_views.py (no function) 13 0 0 0 0 100.00%
website/payments/tests/test_admin.py GlobalAdminTest.test_show_message 7 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.setUpTestData 1 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.setUp 10 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest._give_user_permissions 12 0 0 6 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_paid_by_link 2 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_processed_by_link 2 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_delete_model_succeed 4 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_delete_model_fail 7 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_delete_action_fail 8 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_delete_action_success 5 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_has_delete_permission_get 5 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_batch_link 7 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_add_to_new_batch 15 0 0 4 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_add_to_last_batch 18 0 0 4 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_add_to_last_batch_no_batch 7 2 0 0 0 71.43%
website/payments/tests/test_admin.py PaymentAdminTest.test_get_actions 7 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_get_readonly_fields 6 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_get_urls 2 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_export_csv 4 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_get_field_queryset 6 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentAdminTest.test_payable_model_filter 27 0 0 0 0 100.00%
website/payments/tests/test_admin.py ValidAccountFilterTest.setUpTestData 6 0 0 0 0 100.00%
website/payments/tests/test_admin.py ValidAccountFilterTest.setUp 2 0 0 0 0 100.00%
website/payments/tests/test_admin.py ValidAccountFilterTest.test_lookups 2 0 0 0 0 100.00%
website/payments/tests/test_admin.py ValidAccountFilterTest.test_queryset 10 0 0 2 0 100.00%
website/payments/tests/test_admin.py BatchAdminTest.setUpTestData 1 0 0 0 0 100.00%
website/payments/tests/test_admin.py BatchAdminTest.setUp 11 0 0 0 0 100.00%
website/payments/tests/test_admin.py BatchAdminTest._give_user_permissions 12 0 0 6 1 94.44%
website/payments/tests/test_admin.py BatchAdminTest.test_delete_model_succeed 3 0 0 0 0 100.00%
website/payments/tests/test_admin.py BatchAdminTest.test_delete_model_fail 4 0 0 0 0 100.00%
website/payments/tests/test_admin.py BatchAdminTest.test_delete_action_fail 4 0 0 0 0 100.00%
website/payments/tests/test_admin.py BatchAdminTest.test_delete_action_success 4 0 0 0 0 100.00%
website/payments/tests/test_admin.py BatchAdminTest.test_has_delete_permission_get 5 0 0 0 0 100.00%
website/payments/tests/test_admin.py BatchAdminTest.test_get_readonly_fields 5 0 0 0 0 100.00%
website/payments/tests/test_admin.py BatchAdminTest.test_save_formset 15 0 0 0 0 100.00%
website/payments/tests/test_admin.py BatchAdminTest.test_change_form_view 9 0 0 0 0 100.00%
website/payments/tests/test_admin.py BankAccountAdminTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_admin.py BankAccountAdminTest.setUp 3 0 0 0 0 100.00%
website/payments/tests/test_admin.py BankAccountAdminTest.test_owner_link 4 0 0 0 0 100.00%
website/payments/tests/test_admin.py BankAccountAdminTest.test_can_be_revoked 6 0 0 0 0 100.00%
website/payments/tests/test_admin.py BankAccountAdminTest.test_export_csv 6 0 0 0 0 100.00%
website/payments/tests/test_admin.py BankAccountAdminTest.test_set_last_used 15 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.setUpTestData 1 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.setUp 6 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_has_add_permissions 3 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_has_delete_permissions 3 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_get_tpay_balance 3 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_get_tpay_enabled 2 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_get_tpay_allowed 2 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_get_queryset 1 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_tpay_allowed_filter 6 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_tpay_enabled_filter 6 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_tpay_balance_filter 10 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_user_link 1 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_bankaccount_inline_permissions 5 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_payment_inline_permissions 5 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_disallow_tpay_action 6 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_allow_tpay_action 6 0 0 0 0 100.00%
website/payments/tests/test_admin.py PaymentUserAdminTest.test_paymentuser_two_bankaccounts 11 0 0 0 0 100.00%
website/payments/tests/test_admin.py (no function) 116 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py PaymentAdminViewTest.setUpTestData 4 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py PaymentAdminViewTest.setUp 4 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py PaymentAdminViewTest.tearDown 1 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py PaymentAdminViewTest._give_user_permissions 8 0 0 2 0 100.00%
website/payments/tests/test_admin_views.py PaymentAdminViewTest.test_redirect_without_permissions 4 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py PaymentAdminViewTest.test_post 57 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py PaymentAdminViewTest.test_post.side_effect 3 0 0 2 0 100.00%
website/payments/tests/test_admin_views.py BatchProcessAdminViewTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchProcessAdminViewTest.setUp 3 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchProcessAdminViewTest._give_user_permissions 8 0 0 2 0 100.00%
website/payments/tests/test_admin_views.py BatchProcessAdminViewTest.test_permissions 7 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchProcessAdminViewTest.test_next_validation 3 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchProcessAdminViewTest.test_post 9 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchExportAdminViewTest.setUpTestData 4 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchExportAdminViewTest.setUp 3 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchExportAdminViewTest._give_user_permissions 8 0 0 2 0 100.00%
website/payments/tests/test_admin_views.py BatchExportAdminViewTest.test_permission 7 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchExportAdminViewTest.test_post 9 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchTopicExportAdminViewTest.setUpTestData 4 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchTopicExportAdminViewTest.setUp 3 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchTopicExportAdminViewTest._give_user_permissions 8 0 0 2 0 100.00%
website/payments/tests/test_admin_views.py BatchTopicExportAdminViewTest.test_permission 7 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchTopicExportAdminViewTest.test_post 9 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchTopicDescriptionAdminViewTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchTopicDescriptionAdminViewTest.setUp 3 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchTopicDescriptionAdminViewTest._give_user_permissions 8 0 0 2 0 100.00%
website/payments/tests/test_admin_views.py BatchTopicDescriptionAdminViewTest.test_permission 7 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchTopicDescriptionAdminViewTest.test_post 8 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchNewFilledAdminViewTest.setUpTestData 4 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchNewFilledAdminViewTest.setUp 3 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchNewFilledAdminViewTest._give_user_permissions 8 0 0 2 0 100.00%
website/payments/tests/test_admin_views.py BatchNewFilledAdminViewTest.test_permission 8 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py BatchNewFilledAdminViewTest.test_post 11 0 0 0 0 100.00%
website/payments/tests/test_admin_views.py (no function) 80 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentTest.setUp 2 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentTest.test_get_admin_url 1 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentTest.test_add_payment_from_processed_batch_to_new_batch 9 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentTest.test_delete_payer_raises_protectederror 2 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentTest.test_clean 44 1 0 4 0 97.92%
website/payments/tests/test_models.py PaymentTest.test_str 1 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentTest.test_payment_amount 11 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentTest.test_validator 10 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentTest.test_payable_object 17 0 0 0 0 100.00%
website/payments/tests/test_models.py BatchModelTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_models.py BatchModelTest.setUp 2 0 0 0 0 100.00%
website/payments/tests/test_models.py BatchModelTest.test_start_date_batch 4 0 0 0 0 100.00%
website/payments/tests/test_models.py BatchModelTest.test_end_date_batch 4 0 0 0 0 100.00%
website/payments/tests/test_models.py BatchModelTest.test_description_batch 2 0 0 0 0 100.00%
website/payments/tests/test_models.py BatchModelTest.test_process_batch 4 0 0 0 0 100.00%
website/payments/tests/test_models.py BatchModelTest.test_total_amount_batch 4 0 0 0 0 100.00%
website/payments/tests/test_models.py BatchModelTest.test_count_batch 4 0 0 0 0 100.00%
website/payments/tests/test_models.py BatchModelTest.test_absolute_url 2 0 0 0 0 100.00%
website/payments/tests/test_models.py BatchModelTest.test_str 4 0 0 0 0 100.00%
website/payments/tests/test_models.py BankAccountTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_models.py BankAccountTest.setUp 2 0 0 0 0 100.00%
website/payments/tests/test_models.py BankAccountTest.test_name 4 0 0 0 0 100.00%
website/payments/tests/test_models.py BankAccountTest.test_valid 4 0 0 0 0 100.00%
website/payments/tests/test_models.py BankAccountTest.test_can_be_revoked 11 0 0 0 0 100.00%
website/payments/tests/test_models.py BankAccountTest.test_str 1 0 0 0 0 100.00%
website/payments/tests/test_models.py BankAccountTest.test_clean 38 0 0 2 0 100.00%
website/payments/tests/test_models.py PaymentUserTest.setUpTestData 1 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentUserTest.test_tpay_enabled 6 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentUserTest.test_tpay_balance 17 0 0 0 0 100.00%
website/payments/tests/test_models.py PaymentUserTest.test_allow_disallow_tpay 6 0 0 0 0 100.00%
website/payments/tests/test_models.py BlacklistedPaymentUserTest.test_str 3 0 0 0 0 100.00%
website/payments/tests/test_models.py (no function) 66 0 0 0 0 100.00%
website/payments/tests/test_payables.py PayablesTest.test_registered_payable 3 0 0 0 0 100.00%
website/payments/tests/test_payables.py PayablesTest.test_not_registered_payable 2 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.setUp 1 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.tearDown 1 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.test_register 9 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.test_prevent_unlinking_payment_from_payable 14 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.test_prevent_saving_no_existing_model 3 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.test_prevent_saving_not_immutable 4 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.test_prevent_saving_model_with_pk_but_not_in_db 8 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.test_allow_adding_a_payment_to_unpaid_model 7 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.test_mutable_model 6 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.test_immutable_fields 6 0 0 0 0 100.00%
website/payments/tests/test_payables.py ImmutablePayablesTest.test_prevent_saving_changed_related_model_field 38 0 0 0 0 100.00%
website/payments/tests/test_payables.py (no function) 21 0 0 0 0 100.00%
website/payments/tests/test_services.py ServicesTest.setUpTestData 1 0 0 0 0 100.00%
website/payments/tests/test_services.py ServicesTest.setUp 1 0 0 0 0 100.00%
website/payments/tests/test_services.py ServicesTest.tearDown 1 0 0 0 0 100.00%
website/payments/tests/test_services.py ServicesTest.test_create_payment 29 0 0 0 0 100.00%
website/payments/tests/test_services.py ServicesTest.test_delete_payment 27 0 0 0 0 100.00%
website/payments/tests/test_services.py ServicesTest.test_update_last_used 6 0 0 0 0 100.00%
website/payments/tests/test_services.py ServicesTest.test_revoke_old_mandates 5 0 0 0 0 100.00%
website/payments/tests/test_services.py ServicesTest.test_process_batch 10 0 0 0 0 100.00%
website/payments/tests/test_services.py ServicesTest.test_data_minimisation 15 0 0 0 0 100.00%
website/payments/tests/test_services.py (no function) 25 0 0 0 0 100.00%
website/payments/tests/test_tasks.py CeleryTest.test_minimise_registrations 2 0 0 0 0 100.00%
website/payments/tests/test_tasks.py (no function) 6 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountCreateViewTest.setUpTestData 4 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountCreateViewTest.setUp 2 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountCreateViewTest.test_not_logged_in 4 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountCreateViewTest.test_shows_correct_reference 4 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountCreateViewTest.test_account_no_mandate_saves_correctly 7 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountCreateViewTest.test_account_with_mandate_saves_correctly 7 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountCreateViewTest.test_account_save_keeps_old_mandates 5 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountRevokeViewTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountRevokeViewTest.setUp 4 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountRevokeViewTest.test_not_logged_in 4 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountRevokeViewTest.test_no_post 3 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountRevokeViewTest.test_cannot_revoke_no_mandate 6 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountRevokeViewTest.test_cannot_revoke_cannot_revoke 6 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountRevokeViewTest.test_revoke_successful 6 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountListViewTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountListViewTest.setUp 4 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountListViewTest.test_not_logged_in 4 0 0 0 0 100.00%
website/payments/tests/test_views.py BankAccountListViewTest.test_accounts 4 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentListViewTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentListViewTest.setUp 4 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentListViewTest.test_not_logged_in 4 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentListViewTest.test_contents 3 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.setUp 11 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.setUp.side_effect 3 0 0 2 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.tearDown 2 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_not_logged_in 4 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_member_has_tpay_enabled 2 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_tpay_not_allowed 6 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_missing_parameters 2 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_disallowed_redirect 2 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_different_member 5 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_already_paid 5 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_zero_payment 5 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_renders_confirmation 5 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_creates_payment 6 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_payment_create_error 5 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_payment_deleted_error 3 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_payment_accept_deleted_error 3 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_app_does_not_exist 3 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_model_does_not_exist 3 0 0 0 0 100.00%
website/payments/tests/test_views.py PaymentProcessViewTest.test_payment_changed_payable 6 0 0 0 0 100.00%
website/payments/tests/test_views.py (no function) 90 0 0 0 0 100.00%
website/payments/tests/test_widgets.py PaymentWidgetTest.setUpTestData 3 0 0 0 0 100.00%
website/payments/tests/test_widgets.py PaymentWidgetTest.setUp 1 0 0 0 0 100.00%
website/payments/tests/test_widgets.py PaymentWidgetTest.tearDown 1 0 0 0 0 100.00%
website/payments/tests/test_widgets.py PaymentWidgetTest.test_get_context 22 0 0 0 0 100.00%
website/payments/tests/test_widgets.py PaymentWidgetTest.test_value_from_datadict 13 0 0 0 0 100.00%
website/payments/tests/test_widgets.py (no function) 14 0 0 0 0 100.00%
website/payments/urls.py (no function) 4 0 0 0 0 100.00%
website/payments/views.py BankAccountCreateView.get_context_data 4 0 0 0 0 100.00%
website/payments/views.py BankAccountCreateView.post 9 0 0 2 0 100.00%
website/payments/views.py BankAccountCreateView.form_valid 3 0 0 0 0 100.00%
website/payments/views.py BankAccountRevokeView.get_queryset 1 0 0 0 0 100.00%
website/payments/views.py BankAccountRevokeView.form_invalid 3 0 0 0 0 100.00%
website/payments/views.py BankAccountRevokeView.get 1 0 0 0 0 100.00%
website/payments/views.py BankAccountRevokeView.post 3 0 0 0 0 100.00%
website/payments/views.py BankAccountListView.get_context_data 3 0 0 0 0 100.00%
website/payments/views.py BankAccountListView.get_queryset 1 0 0 0 0 100.00%
website/payments/views.py PaymentListView.get_queryset 3 0 0 0 0 100.00%
website/payments/views.py PaymentListView.get_context_data 7 0 0 2 0 100.00%
website/payments/views.py PaymentProcessView.get_success_url 1 0 0 0 0 100.00%
website/payments/views.py PaymentProcessView.dispatch 3 0 0 2 0 100.00%
website/payments/views.py PaymentProcessView.get_context_data 7 0 0 2 0 100.00%
website/payments/views.py PaymentProcessView._check_payment_allowed 11 0 0 10 0 100.00%
website/payments/views.py PaymentProcessView.post 25 0 0 8 0 100.00%
website/payments/views.py PaymentProcessView.form_valid 5 0 0 0 0 100.00%
website/payments/views.py (no function) 64 0 0 0 0 100.00%
website/payments/widgets.py PaymentWidget.__init__ 2 0 0 0 0 100.00%
website/payments/widgets.py PaymentWidget.get_context 16 0 0 8 0 100.00%
website/payments/widgets.py PaymentWidget.value_from_datadict 5 0 0 4 0 100.00%
website/payments/widgets.py (no function) 15 0 0 0 0 100.00%
website/photos/__init__.py (no function) 0 0 0 0 0 100.00%
website/photos/admin.py AlbumAdmin.get_fields 4 0 0 2 1 83.33%
website/photos/admin.py AlbumAdmin.get_queryset 1 0 0 0 0 100.00%
website/photos/admin.py AlbumAdmin.num_photos 1 0 0 0 0 100.00%
website/photos/admin.py AlbumAdmin.save_model 7 4 0 2 1 44.44%
website/photos/admin.py AlbumAdmin.get_deleted_objects 2 2 0 0 0 0.00%
website/photos/admin.py PhotoAdmin.get_deleted_objects 2 2 0 0 0 0.00%
website/photos/admin.py (no function) 35 0 0 0 0 100.00%
website/photos/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/photos/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/photos/api/v2/serializers/__init__.py (no function) 0 0 0 0 0 100.00%
website/photos/api/v2/serializers/album.py AlbumSerializer._accessible 1 1 0 0 0 0.00%
website/photos/api/v2/serializers/album.py (no function) 17 0 0 0 0 100.00%
website/photos/api/v2/serializers/photo.py PhotoListSerializer._liked 1 1 0 0 0 0.00%
website/photos/api/v2/serializers/photo.py (no function) 15 0 0 0 0 100.00%
website/photos/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/photos/api/v2/views.py AlbumListView.get_serializer 4 4 0 2 0 0.00%
website/photos/api/v2/views.py AlbumDetailView.retrieve 3 3 0 2 0 0.00%
website/photos/api/v2/views.py AlbumDetailView.get_object 3 3 0 0 0 0.00%
website/photos/api/v2/views.py AlbumDetailView.get_queryset 5 5 0 2 0 0.00%
website/photos/api/v2/views.py LikedPhotosListView.get 3 3 0 2 0 0.00%
website/photos/api/v2/views.py LikedPhotosListView.get_serializer 4 4 0 2 0 0.00%
website/photos/api/v2/views.py LikedPhotosListView.get_queryset 1 1 0 0 0 0.00%
website/photos/api/v2/views.py PhotoLikeView.get 6 6 0 0 0 0.00%
website/photos/api/v2/views.py PhotoLikeView.post 9 9 0 2 0 0.00%
website/photos/api/v2/views.py PhotoLikeView.delete 11 11 0 0 0 0.00%
website/photos/api/v2/views.py (no function) 40 0 0 0 0 100.00%
website/photos/apps.py PhotosConfig.ready 1 0 0 0 0 100.00%
website/photos/apps.py PhotosConfig.menu_items 1 0 0 0 0 100.00%
website/photos/apps.py (no function) 8 0 0 0 0 100.00%
website/photos/forms.py AlbumForm.__init__ 3 1 0 2 1 60.00%
website/photos/forms.py (no function) 11 0 0 0 0 100.00%
website/photos/models.py photo_uploadto 2 0 0 0 0 100.00%
website/photos/models.py Photo.__init__ 4 0 0 2 0 100.00%
website/photos/models.py Photo.__str__ 1 0 0 0 0 100.00%
website/photos/models.py Photo.clean 9 9 0 6 0 0.00%
website/photos/models.py Like.__str__ 1 0 0 0 0 100.00%
website/photos/models.py Album.cover 7 1 0 2 1 77.78%
website/photos/models.py Album.__str__ 1 0 0 0 0 100.00%
website/photos/models.py Album.get_absolute_url 1 0 0 0 0 100.00%
website/photos/models.py Album.clean 8 3 0 6 3 57.14%
website/photos/models.py Album.save 7 2 0 6 2 69.23%
website/photos/models.py Album.access_token 1 0 0 0 0 100.00%
website/photos/models.py (no function) 60 0 0 0 0 100.00%
website/photos/services.py check_shared_album_token 2 1 0 2 1 50.00%
website/photos/services.py is_album_accessible 5 0 0 4 0 100.00%
website/photos/services.py get_annotated_accessible_albums 9 0 0 6 0 100.00%
website/photos/services.py extract_archive 31 31 0 18 0 0.00%
website/photos/services.py _has_photo_extension 2 2 0 0 0 0.00%
website/photos/services.py _try_save_photo 15 15 0 0 0 0.00%
website/photos/services.py (no function) 19 0 0 0 0 100.00%
website/photos/signals.py pre_photo_delete 3 3 0 0 0 0.00%
website/photos/signals.py (no function) 4 0 0 0 0 100.00%
website/photos/tasks.py process_album_upload 20 20 0 2 0 0.00%
website/photos/tasks.py clean_broken_uploads 9 9 0 4 0 0.00%
website/photos/tasks.py (no function) 19 0 0 0 0 100.00%
website/photos/templatetags/photos_cards.py album_card 9 3 0 4 2 61.54%
website/photos/templatetags/photos_cards.py photo_card 11 0 0 2 0 100.00%
website/photos/templatetags/photos_cards.py liked_photo_card 3 3 0 0 0 0.00%
website/photos/templatetags/photos_cards.py (no function) 12 0 0 0 0 100.00%
website/photos/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/photos/tests/test_admin.py AlbumUploadTest.setUpTestData 1 0 0 0 0 100.00%
website/photos/tests/test_admin.py AlbumUploadTest.setUp 2 0 0 0 0 100.00%
website/photos/tests/test_admin.py AlbumUploadTest.test_album_create_album_twice 3 0 0 0 0 100.00%
website/photos/tests/test_admin.py (no function) 10 0 0 0 0 100.00%
website/photos/tests/test_services.py IsAlbumAccesibleTest.setUpTestData 1 0 0 0 0 100.00%
website/photos/tests/test_services.py IsAlbumAccesibleTest.setUp 1 0 0 0 0 100.00%
website/photos/tests/test_services.py IsAlbumAccesibleTest.test_is_album_accessible 22 0 0 0 0 100.00%
website/photos/tests/test_services.py GetAnnotatedAccessibleAlbumsTest.setUpTestData 1 0 0 0 0 100.00%
website/photos/tests/test_services.py GetAnnotatedAccessibleAlbumsTest.setUp 1 0 0 0 0 100.00%
website/photos/tests/test_services.py GetAnnotatedAccessibleAlbumsTest.test_get_annotated_accessible_albums 39 0 0 10 0 100.00%
website/photos/tests/test_services.py (no function) 22 0 0 0 0 100.00%
website/photos/tests/test_views.py AlbumIndexTest.setUpTestData 2 0 0 0 0 100.00%
website/photos/tests/test_views.py AlbumIndexTest.setUp 1 0 0 0 0 100.00%
website/photos/tests/test_views.py AlbumIndexTest.test_index 24 0 0 6 0 100.00%
website/photos/tests/test_views.py AlbumIndexTest.test_empty_page 3 0 0 0 0 100.00%
website/photos/tests/test_views.py AlbumIndexTest.test_keywords 9 0 0 2 0 100.00%
website/photos/tests/test_views.py AlbumIndexTest.test_many_pages 17 0 0 2 0 100.00%
website/photos/tests/test_views.py AlbumTest.setUpTestData 2 0 0 0 0 100.00%
website/photos/tests/test_views.py AlbumTest.setUp 2 0 0 0 0 100.00%
website/photos/tests/test_views.py AlbumTest.test_get 10 0 0 2 0 100.00%
website/photos/tests/test_views.py AlbumTest.test_unaccessible 11 0 0 0 0 100.00%
website/photos/tests/test_views.py SharedAlbumTest.setUpTestData 2 0 0 0 0 100.00%
website/photos/tests/test_views.py SharedAlbumTest.setUp 1 0 0 0 0 100.00%
website/photos/tests/test_views.py SharedAlbumTest.test_get 8 0 0 2 0 100.00%
website/photos/tests/test_views.py DownloadTest.setUpTestData 1 0 0 0 0 100.00%
website/photos/tests/test_views.py DownloadTest.setUp 5 0 0 0 0 100.00%
website/photos/tests/test_views.py DownloadTest.test_download 4 0 0 0 0 100.00%
website/photos/tests/test_views.py DownloadTest.test_logged_out 3 0 0 0 0 100.00%
website/photos/tests/test_views.py _DownloadBaseTestCase.setUp 5 0 0 0 0 100.00%
website/photos/tests/test_views.py SharedDownloadTest.setUpTestData 2 0 0 0 0 100.00%
website/photos/tests/test_views.py SharedDownloadTest.test_download 9 0 0 0 0 100.00%
website/photos/tests/test_views.py (no function) 49 0 0 0 0 100.00%
website/photos/urls.py (no function) 4 0 0 0 0 100.00%
website/photos/validators.py ArchiveFileTypeValidator.__init__ 4 2 0 4 2 50.00%
website/photos/validators.py ArchiveFileTypeValidator.__call__ 2 2 0 2 0 0.00%
website/photos/validators.py ArchiveFileTypeValidator.__eq__ 1 1 0 0 0 0.00%
website/photos/validators.py (no function) 11 0 0 0 0 100.00%
website/photos/views.py IndexView.setup 5 0 0 0 0 100.00%
website/photos/views.py IndexView.get_queryset 11 2 0 8 2 78.95%
website/photos/views.py IndexView.get_context_data 6 0 0 0 0 100.00%
website/photos/views.py _BaseAlbumView.get_album 1 1 0 0 0 0.00%
website/photos/views.py _BaseAlbumView.get_context_data 8 0 0 0 0 100.00%
website/photos/views.py AlbumDetailView.get_album 5 0 0 2 0 100.00%
website/photos/views.py SharedAlbumView.get_album 5 0 0 0 0 100.00%
website/photos/views.py _photo_path 5 0 0 0 0 100.00%
website/photos/views.py _download 3 0 0 0 0 100.00%
website/photos/views.py download 4 1 0 2 1 66.67%
website/photos/views.py shared_download 3 0 0 0 0 100.00%
website/photos/views.py LikedPhotoView.get_queryset 2 2 0 0 0 0.00%
website/photos/views.py LikedPhotoView.get_context_data 3 3 0 0 0 0.00%
website/photos/views.py (no function) 48 0 0 0 0 100.00%
website/pizzas/__init__.py (no function) 0 0 0 0 0 100.00%
website/pizzas/admin.py FoodEventAdmin.notification_enabled 1 1 0 0 0 0.00%
website/pizzas/admin.py FoodEventAdmin.has_change_permission 3 1 0 2 1 60.00%
website/pizzas/admin.py FoodEventAdmin.has_delete_permission 3 1 0 2 1 60.00%
website/pizzas/admin.py FoodEventAdmin.orders 2 2 0 0 0 0.00%
website/pizzas/admin.py FoodEventAdmin.get_urls 3 0 0 0 0 100.00%
website/pizzas/admin.py FoodOrderAdmin.get_form 1 1 0 0 0 0.00%
website/pizzas/admin.py FoodOrderAdmin.formfield_for_dbfield 4 4 0 2 0 0.00%
website/pizzas/admin.py FoodOrderAdmin.save_model 3 3 0 2 0 0.00%
website/pizzas/admin.py FoodOrderAdmin.has_view_permission 3 1 0 2 1 60.00%
website/pizzas/admin.py FoodOrderAdmin.has_change_permission 3 1 0 2 1 60.00%
website/pizzas/admin.py FoodOrderAdmin.has_delete_permission 3 1 0 2 1 60.00%
website/pizzas/admin.py (no function) 42 0 0 0 0 100.00%
website/pizzas/admin_views.py PizzaOrderSummary.get_context_data 13 13 0 4 0 0.00%
website/pizzas/admin_views.py PizzaOrderDetails.get_context_data 5 5 0 0 0 0.00%
website/pizzas/admin_views.py (no function) 18 0 0 0 0 100.00%
website/pizzas/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/pizzas/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/pizzas/api/v2/admin/__init__.py (no function) 0 0 0 0 0 100.00%
website/pizzas/api/v2/admin/permissions.py IsOrganiser.has_permission 5 5 0 2 0 0.00%
website/pizzas/api/v2/admin/permissions.py IsOrganiser.has_object_permission 7 7 0 6 0 0.00%
website/pizzas/api/v2/admin/permissions.py (no function) 8 0 0 0 0 100.00%
website/pizzas/api/v2/admin/serializers/__init__.py (no function) 0 0 0 0 0 100.00%
website/pizzas/api/v2/admin/serializers/food_event.py FoodEventAdminSerializer.to_internal_value 2 2 0 0 0 0.00%
website/pizzas/api/v2/admin/serializers/food_event.py FoodEventAdminSerializer.to_representation 2 2 0 0 0 0.00%
website/pizzas/api/v2/admin/serializers/food_event.py (no function) 11 0 0 0 0 100.00%
website/pizzas/api/v2/admin/serializers/order.py FoodOrderAdminSerializer.to_internal_value 3 3 0 0 0 0.00%
website/pizzas/api/v2/admin/serializers/order.py FoodOrderAdminSerializer.to_representation 3 3 0 0 0 0.00%
website/pizzas/api/v2/admin/serializers/order.py (no function) 20 0 0 0 0 100.00%
website/pizzas/api/v2/admin/serializers/product.py (no function) 6 0 0 0 0 100.00%
website/pizzas/api/v2/admin/urls.py (no function) 4 0 0 0 0 100.00%
website/pizzas/api/v2/admin/validators.py MutuallyExclusiveValidator.__init__ 1 0 0 0 0 100.00%
website/pizzas/api/v2/admin/validators.py MutuallyExclusiveValidator.__call__ 13 13 0 12 0 0.00%
website/pizzas/api/v2/admin/validators.py (no function) 8 0 0 0 0 100.00%
website/pizzas/api/v2/admin/views.py FoodEventOrdersAdminListView.get_queryset 4 4 0 2 0 0.00%
website/pizzas/api/v2/admin/views.py FoodOrderAdminDetailView.get_queryset 1 1 0 0 0 0.00%
website/pizzas/api/v2/admin/views.py (no function) 49 0 0 0 0 100.00%
website/pizzas/api/v2/filters.py FoodEventDateFilterBackend.filter_queryset 6 6 0 4 0 0.00%
website/pizzas/api/v2/filters.py FoodEventDateFilterBackend.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/pizzas/api/v2/filters.py (no function) 5 0 0 0 0 100.00%
website/pizzas/api/v2/serializers/__init__.py (no function) 4 0 0 0 0 100.00%
website/pizzas/api/v2/serializers/food_event.py FoodEventSerializer._member_order 6 6 0 0 0 0.00%
website/pizzas/api/v2/serializers/food_event.py FoodEventSerializer._can_manage 2 2 0 0 0 0.00%
website/pizzas/api/v2/serializers/food_event.py (no function) 14 0 0 0 0 100.00%
website/pizzas/api/v2/serializers/order.py (no function) 26 0 0 0 0 100.00%
website/pizzas/api/v2/serializers/product.py (no function) 6 0 0 0 0 100.00%
website/pizzas/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/pizzas/api/v2/views.py FoodEventListView.get_queryset 4 4 0 2 0 0.00%
website/pizzas/api/v2/views.py FoodEventDetailView.get_queryset 4 4 0 2 0 0.00%
website/pizzas/api/v2/views.py FoodEventOrderDetailView.get_serializer_class 5 5 0 4 0 0.00%
website/pizzas/api/v2/views.py FoodEventOrderDetailView.get_queryset 1 1 0 0 0 0.00%
website/pizzas/api/v2/views.py FoodEventOrderDetailView.get_object 4 4 0 0 0 0.00%
website/pizzas/api/v2/views.py FoodEventOrderDetailView.dispatch 5 5 0 0 0 0.00%
website/pizzas/api/v2/views.py FoodEventOrderDetailView.update 7 7 0 4 0 0.00%
website/pizzas/api/v2/views.py FoodEventOrderDetailView.create 13 13 0 8 0 0.00%
website/pizzas/api/v2/views.py (no function) 44 0 0 0 0 100.00%
website/pizzas/apps.py PizzasConfig.ready 2 0 0 0 0 100.00%
website/pizzas/apps.py (no function) 6 0 0 0 0 100.00%
website/pizzas/decorators.py organiser_only 1 0 0 0 0 100.00%
website/pizzas/decorators.py OrganiserOnly.__init__ 1 0 0 0 0 100.00%
website/pizzas/decorators.py OrganiserOnly.__call__ 9 9 0 4 0 0.00%
website/pizzas/decorators.py (no function) 7 0 0 0 0 100.00%
website/pizzas/models.py CurrentEventManager.get_queryset 1 0 0 0 0 100.00%
website/pizzas/models.py FoodEvent.title 1 0 0 0 0 100.00%
website/pizzas/models.py FoodEvent.in_the_future 1 1 0 0 0 0.00%
website/pizzas/models.py FoodEvent.has_ended 1 1 0 0 0 0.00%
website/pizzas/models.py FoodEvent.just_ended 1 1 0 0 0 0.00%
website/pizzas/models.py FoodEvent.current 7 0 0 2 0 100.00%
website/pizzas/models.py FoodEvent.__init__ 2 0 0 0 0 100.00%
website/pizzas/models.py FoodEvent.validate_unique 5 0 0 4 0 100.00%
website/pizzas/models.py FoodEvent.clean 3 0 0 2 1 80.00%
website/pizzas/models.py FoodEvent.__str__ 1 0 0 0 0 100.00%
website/pizzas/models.py AvailableProductManager.get_queryset 1 0 0 0 0 100.00%
website/pizzas/models.py Product.__str__ 1 1 0 0 0 0.00%
website/pizzas/models.py FoodOrder.clean 2 2 0 2 0 0.00%
website/pizzas/models.py FoodOrder.member_name 3 1 0 2 1 60.00%
website/pizzas/models.py FoodOrder.member_last_name 3 3 0 2 0 0.00%
website/pizzas/models.py FoodOrder.member_first_name 3 3 0 2 0 0.00%
website/pizzas/models.py FoodOrder.can_be_changed 4 4 0 0 0 0.00%
website/pizzas/models.py FoodOrder.delete 3 1 0 2 1 60.00%
website/pizzas/models.py FoodOrder.__str__ 1 0 0 0 0 100.00%
website/pizzas/models.py (no function) 68 0 0 0 0 100.00%
website/pizzas/payables.py FoodOrderPayable.payment_amount 1 1 0 0 0 0.00%
website/pizzas/payables.py FoodOrderPayable.payment_topic 2 2 0 0 0 0.00%
website/pizzas/payables.py FoodOrderPayable.payment_notes 1 1 0 0 0 0.00%
website/pizzas/payables.py FoodOrderPayable.payment_payer 1 1 0 0 0 0.00%
website/pizzas/payables.py FoodOrderPayable.can_manage_payment 1 1 0 0 0 0.00%
website/pizzas/payables.py FoodOrderPayable.tpay_allowed 1 1 0 0 0 0.00%
website/pizzas/payables.py FoodOrderPayable.immutable_after_payment 1 0 0 0 0 100.00%
website/pizzas/payables.py FoodOrderPayable.immutable_model_fields_after_payment 1 1 0 0 0 0.00%
website/pizzas/payables.py register 1 0 0 0 0 100.00%
website/pizzas/payables.py (no function) 22 0 0 0 0 100.00%
website/pizzas/services.py gen_stats_pizza_orders 5 5 0 2 0 0.00%
website/pizzas/services.py can_change_order 1 0 0 0 0 100.00%
website/pizzas/services.py execute_data_minimisation 5 5 0 2 0 0.00%
website/pizzas/services.py (no function) 7 0 0 0 0 100.00%
website/pizzas/urls.py (no function) 4 0 0 0 0 100.00%
website/pizzas/views.py index 16 16 0 6 0 0.00%
website/pizzas/views.py cancel_order 14 14 0 6 0 0.00%
website/pizzas/views.py place_order 36 36 0 18 0 0.00%
website/pizzas/views.py (no function) 16 0 0 0 0 100.00%
website/promotion/__init__.py (no function) 0 0 0 0 0 100.00%
website/promotion/admin.py CaseInsensitiveFilter.__init__ 9 9 0 0 0 0.00%
website/promotion/admin.py CaseInsensitiveFilter.get_facet_counts 1 1 0 0 0 0.00%
website/promotion/admin.py CaseInsensitiveFilter.choices 15 15 0 8 0 0.00%
website/promotion/admin.py CaseInsensitiveFilter.expected_parameters 1 1 0 0 0 0.00%
website/promotion/admin.py PromotionRequestAdmin.has_change_permission 3 1 0 2 1 60.00%
website/promotion/admin.py PromotionRequestAdmin.mark_not_started 1 1 0 0 0 0.00%
website/promotion/admin.py PromotionRequestAdmin.mark_started 1 1 0 0 0 0.00%
website/promotion/admin.py PromotionRequestAdmin.mark_finished 1 1 0 0 0 0.00%
website/promotion/admin.py PromotionRequestAdmin.mark_published 1 1 0 0 0 0.00%
website/promotion/admin.py PromotionRequestAdmin._change_published 1 1 0 0 0 0.00%
website/promotion/admin.py (no function) 33 0 0 0 0 100.00%
website/promotion/apps.py PromotionConfig.ready 1 0 0 0 0 100.00%
website/promotion/apps.py (no function) 6 0 0 0 0 100.00%
website/promotion/emails.py send_weekly_overview 3 3 0 0 0 0.00%
website/promotion/emails.py send_daily_overview 4 4 0 4 0 0.00%
website/promotion/emails.py send_status_update 4 4 0 2 0 0.00%
website/promotion/emails.py send_daily_update_overview 4 4 0 2 0 0.00%
website/promotion/emails.py (no function) 10 0 0 0 0 100.00%
website/promotion/forms.py PromotionRequestForm.clean 8 8 0 4 0 0.00%
website/promotion/forms.py (no function) 8 0 0 0 0 100.00%
website/promotion/models.py PromotionChannel.__str__ 1 0 0 0 0 100.00%
website/promotion/models.py UpcomingRequestManager.get_queryset 3 3 0 0 0 0.00%
website/promotion/models.py NewRequestManager.get_queryset 3 3 0 0 0 0.00%
website/promotion/models.py PromotionRequest.__str__ 3 1 0 2 1 60.00%
website/promotion/models.py PromotionRequest.save 11 11 0 8 0 0.00%
website/promotion/models.py (no function) 39 0 0 0 0 100.00%
website/promotion/signals.py send_status_update 1 1 0 0 0 0.00%
website/promotion/signals.py (no function) 5 0 0 0 0 100.00%
website/promotion/tasks.py promo_update_weekly 1 1 0 0 0 0.00%
website/promotion/tasks.py promo_update_daily 1 1 0 0 0 0.00%
website/promotion/tasks.py promo_update_overview_daily 1 1 0 0 0 0.00%
website/promotion/tasks.py (no function) 8 8 0 0 0 0.00%
website/pushnotifications/__init__.py (no function) 0 0 0 0 0 100.00%
website/pushnotifications/admin.py MessageSentFilter.lookups 7 7 0 4 0 0.00%
website/pushnotifications/admin.py MessageSentFilter.queryset 5 5 0 4 0 0.00%
website/pushnotifications/admin.py DeviceAdmin.enable 1 1 0 0 0 0.00%
website/pushnotifications/admin.py DeviceAdmin.disable 1 1 0 0 0 0.00%
website/pushnotifications/admin.py DeviceAdmin.name 1 1 0 0 0 0.00%
website/pushnotifications/admin.py MessageAdmin.get_fields 3 3 0 2 0 0.00%
website/pushnotifications/admin.py MessageAdmin.get_readonly_fields 3 3 0 2 0 0.00%
website/pushnotifications/admin.py MessageAdmin.change_view 2 2 0 0 0 0.00%
website/pushnotifications/admin.py ScheduledMessageAdmin.get_fields 3 3 0 2 0 0.00%
website/pushnotifications/admin.py ScheduledMessageAdmin.get_readonly_fields 3 3 0 2 0 0.00%
website/pushnotifications/admin.py EventMessageView.get_context_data 3 3 0 0 0 0.00%
website/pushnotifications/admin.py EventMessageView.form_valid 11 11 0 4 0 0.00%
website/pushnotifications/admin.py EventMessageView.dispatch 2 2 0 0 0 0.00%
website/pushnotifications/admin.py EventAdmin.get_urls 3 0 0 0 0 100.00%
website/pushnotifications/admin.py (no function) 67 1 0 2 1 97.10%
website/pushnotifications/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/pushnotifications/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/pushnotifications/api/v2/filters.py CategoryFilter.filter_queryset 4 4 0 2 0 0.00%
website/pushnotifications/api/v2/filters.py (no function) 3 0 0 0 0 100.00%
website/pushnotifications/api/v2/permissions.py IsAuthenticatedOwnerOrReadOnly.has_object_permission 3 3 0 2 0 0.00%
website/pushnotifications/api/v2/permissions.py (no function) 4 0 0 0 0 100.00%
website/pushnotifications/api/v2/serializers.py DeviceSerializer.get_fields 2 2 0 0 0 0.00%
website/pushnotifications/api/v2/serializers.py (no function) 19 0 0 0 0 100.00%
website/pushnotifications/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/pushnotifications/api/v2/views.py DeviceListView.get_queryset 3 3 0 2 0 0.00%
website/pushnotifications/api/v2/views.py DeviceListView.perform_create 9 9 0 2 0 0.00%
website/pushnotifications/api/v2/views.py DeviceDetailView.perform_update 1 1 0 0 0 0.00%
website/pushnotifications/api/v2/views.py MessageListView.get_queryset 3 3 0 2 0 0.00%
website/pushnotifications/api/v2/views.py MessageDetailView.get_queryset 3 3 0 2 0 0.00%
website/pushnotifications/api/v2/views.py (no function) 37 0 0 0 0 100.00%
website/pushnotifications/apps.py PushNotificationsConfig.ready 1 0 0 0 0 100.00%
website/pushnotifications/apps.py (no function) 6 0 0 0 0 100.00%
website/pushnotifications/forms.py (no function) 6 0 0 0 0 100.00%
website/pushnotifications/models.py Category.__str__ 1 1 0 0 0 0.00%
website/pushnotifications/models.py default_receive_category 1 1 0 0 0 0.00%
website/pushnotifications/models.py Device.__str__ 1 0 0 0 0 100.00%
website/pushnotifications/models.py NormalMessageManager.get_queryset 1 0 0 0 0 100.00%
website/pushnotifications/models.py Message.__str__ 1 0 0 0 0 100.00%
website/pushnotifications/models.py Message.send 28 12 0 6 3 55.88%
website/pushnotifications/models.py (no function) 69 0 0 0 0 100.00%
website/pushnotifications/signals/__init__.py (no function) 1 0 0 0 0 100.00%
website/pushnotifications/signals/events.py schedule_event_start_reminder 23 0 0 12 0 100.00%
website/pushnotifications/signals/events.py schedule_registration_reminder 21 0 0 10 1 96.77%
website/pushnotifications/signals/events.py update_event_start_reminder_users_on_registration_save 8 0 0 8 1 93.75%
website/pushnotifications/signals/events.py update_event_start_reminder_users_on_registration_delete 6 1 0 6 2 75.00%
website/pushnotifications/signals/events.py send_queue_notification 5 5 0 2 0 0.00%
website/pushnotifications/signals/events.py (no function) 18 0 0 0 0 100.00%
website/pushnotifications/signals/newsletters.py send_newsletter_pushnotification 3 0 0 0 0 100.00%
website/pushnotifications/signals/newsletters.py (no function) 7 0 0 0 0 100.00%
website/pushnotifications/signals/photos.py schedule_new_album_pushnotification 15 0 0 8 2 91.30%
website/pushnotifications/signals/photos.py (no function) 8 0 0 0 0 100.00%
website/pushnotifications/signals/pizzas.py schedule_food_order_reminder_pushnotification 22 1 0 12 2 91.18%
website/pushnotifications/signals/pizzas.py add_registered_member_to_food_order_reminder 7 0 0 6 0 100.00%
website/pushnotifications/signals/pizzas.py remove_ordered_members_from_food_order_reminder 3 0 0 2 1 80.00%
website/pushnotifications/signals/pizzas.py add_member_to_food_order_reminder_on_order_deletion 3 0 0 2 1 80.00%
website/pushnotifications/signals/pizzas.py (no function) 14 0 0 0 0 100.00%
website/pushnotifications/signals/thabloid.py send_thabloid_pushnotification 5 5 0 2 0 0.00%
website/pushnotifications/signals/thabloid.py (no function) 7 0 0 0 0 100.00%
website/pushnotifications/tasks.py send_scheduled_messages 10 10 0 4 0 0.00%
website/pushnotifications/tasks.py (no function) 8 8 0 0 0 0.00%
website/pushnotifications/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/pushnotifications/tests/test_events.py TestEventNotifications.setUpTestData 9 0 0 0 0 100.00%
website/pushnotifications/tests/test_events.py TestEventNotifications.setUp 1 0 0 0 0 100.00%
website/pushnotifications/tests/test_events.py TestEventNotifications.test_create_event_and_update_registrations_start_reminder 39 0 0 0 0 100.00%
website/pushnotifications/tests/test_events.py TestEventNotifications.test_update_event_start_reminder 11 0 0 0 0 100.00%
website/pushnotifications/tests/test_events.py TestEventNotifications.test_create_event_registration_reminder 15 0 0 0 0 100.00%
website/pushnotifications/tests/test_events.py TestEventNotifications.test_update_event_registration_reminder 11 0 0 0 0 100.00%
website/pushnotifications/tests/test_events.py (no function) 13 0 0 0 0 100.00%
website/pushnotifications/tests/test_newsletters.py TestNewsletterNotifications.setUpTestData 6 0 0 0 0 100.00%
website/pushnotifications/tests/test_newsletters.py TestNewsletterNotifications.test_send_newsletter_sends_notification 5 0 0 0 0 100.00%
website/pushnotifications/tests/test_newsletters.py (no function) 9 0 0 0 0 100.00%
website/pushnotifications/tests/test_photos.py TestNewAlbumNotifications.setUpTestData 5 0 0 0 0 100.00%
website/pushnotifications/tests/test_photos.py TestNewAlbumNotifications.test_new_published_album_schedules_notification 4 0 0 0 0 100.00%
website/pushnotifications/tests/test_photos.py TestNewAlbumNotifications.test_new_hidden_album_does_not_schedule_notification 3 0 0 0 0 100.00%
website/pushnotifications/tests/test_photos.py TestNewAlbumNotifications.test_new_uploading_album_does_not_schedule_notification 3 0 0 0 0 100.00%
website/pushnotifications/tests/test_photos.py TestNewAlbumNotifications.test_hide_album_deletes_notification 6 0 0 0 0 100.00%
website/pushnotifications/tests/test_photos.py TestNewAlbumNotifications.test_unhide_album_schedules_notification 7 0 0 0 0 100.00%
website/pushnotifications/tests/test_photos.py (no function) 12 0 0 0 0 100.00%
website/pushnotifications/tests/test_pizzas.py TestFoodEventNotifications.setUpTestData 11 0 0 0 0 100.00%
website/pushnotifications/tests/test_pizzas.py TestFoodEventNotifications.setUp 1 0 0 0 0 100.00%
website/pushnotifications/tests/test_pizzas.py TestFoodEventNotifications.test_create_food_event_schedules_notification 28 0 0 0 0 100.00%
website/pushnotifications/tests/test_pizzas.py TestFoodEventNotifications.test_update_food_event 13 0 0 0 0 100.00%
website/pushnotifications/tests/test_pizzas.py TestFoodEventNotifications.test_register_updates_message_users 11 0 0 0 0 100.00%
website/pushnotifications/tests/test_pizzas.py TestFoodEventNotifications.test_order_updates_message_users 7 0 0 0 0 100.00%
website/pushnotifications/tests/test_pizzas.py (no function) 15 0 0 0 0 100.00%
website/pushnotifications/urls.py (no function) 4 0 0 0 0 100.00%
website/pushnotifications/views.py admin_send 3 3 0 0 0 0.00%
website/pushnotifications/views.py (no function) 7 0 0 0 0 100.00%
website/registrations/__init__.py (no function) 0 0 0 0 0 100.00%
website/registrations/admin.py RegistrationAdmin.get_actions 7 0 0 6 0 100.00%
website/registrations/admin.py RegistrationAdmin.accept_registrations 0 0 17 0 0 100.00%
website/registrations/admin.py RegistrationAdmin.reject_registrations 0 0 11 0 0 100.00%
website/registrations/admin.py RegistrationAdmin.reference_count 1 0 0 0 0 100.00%
website/registrations/admin.py RegistrationAdmin.get_form 1 0 0 0 0 100.00%
website/registrations/admin.py RegistrationAdmin.formfield_for_dbfield 4 0 0 2 0 100.00%
website/registrations/admin.py RegistrationAdmin.changeform_view 5 0 7 0 0 100.00%
website/registrations/admin.py RegistrationAdmin.get_readonly_fields 3 0 0 2 0 100.00%
website/registrations/admin.py RegistrationAdmin.name 1 0 0 0 0 100.00%
website/registrations/admin.py RegistrationAdmin.has_change_permission 1 0 0 0 0 100.00%
website/registrations/admin.py RegistrationAdmin.has_add_permission 1 0 0 0 0 100.00%
website/registrations/admin.py RegistrationAdmin.save_model 2 0 0 2 0 100.00%
website/registrations/admin.py RenewalAdmin.get_actions 3 0 4 0 0 100.00%
website/registrations/admin.py RenewalAdmin.accept_renewals 0 0 12 0 0 100.00%
website/registrations/admin.py RenewalAdmin.reject_renewals 0 0 11 0 0 100.00%
website/registrations/admin.py RenewalAdmin.get_readonly_fields 4 0 0 2 0 100.00%
website/registrations/admin.py RenewalAdmin.has_add_permission 1 0 0 0 0 100.00%
website/registrations/admin.py RenewalAdmin.name 1 0 0 0 0 100.00%
website/registrations/admin.py RenewalAdmin.email 1 0 0 0 0 100.00%
website/registrations/admin.py (no function) 49 0 8 0 0 100.00%
website/registrations/apps.py RegistrationsConfig.ready 3 0 0 0 0 100.00%
website/registrations/apps.py RegistrationsConfig.menu_items 1 0 0 0 0 100.00%
website/registrations/apps.py RegistrationsConfig.user_menu_items 1 0 0 0 0 100.00%
website/registrations/apps.py (no function) 9 0 0 0 0 100.00%
website/registrations/emails.py send_registration_email_confirmation 1 0 0 0 0 100.00%
website/registrations/emails.py send_registration_accepted_message 1 0 0 0 0 100.00%
website/registrations/emails.py send_registration_rejected_message 1 0 0 0 0 100.00%
website/registrations/emails.py send_new_registration_board_message 1 0 0 0 0 100.00%
website/registrations/emails.py send_renewal_accepted_message 1 0 0 0 0 100.00%
website/registrations/emails.py send_renewal_rejected_message 1 0 0 0 0 100.00%
website/registrations/emails.py send_renewal_complete_message 1 0 0 0 0 100.00%
website/registrations/emails.py send_new_renewal_board_message 1 0 0 0 0 100.00%
website/registrations/emails.py send_references_information_message 6 0 0 2 0 100.00%
website/registrations/emails.py send_reminder_open_registration 1 0 0 0 0 100.00%
website/registrations/emails.py send_reminder_open_renewal 1 0 0 0 0 100.00%
website/registrations/emails.py (no function) 16 0 0 0 0 100.00%
website/registrations/forms.py BaseRegistrationForm.__init__ 4 0 0 0 0 100.00%
website/registrations/forms.py BaseRegistrationForm.clean 1 0 2 0 0 100.00%
website/registrations/forms.py MemberRegistrationForm.__init__ 4 0 0 0 0 100.00%
website/registrations/forms.py MemberRegistrationForm.clean 3 0 0 0 0 100.00%
website/registrations/forms.py NewYearForm.__init__ 2 0 0 0 0 100.00%
website/registrations/forms.py RenewalForm.__init__ 3 0 0 0 0 100.00%
website/registrations/forms.py RenewalForm.clean 13 0 0 10 0 100.00%
website/registrations/forms.py ReferenceForm.clean 11 0 0 6 0 100.00%
website/registrations/forms.py (no function) 63 0 0 0 0 100.00%
website/registrations/management/__init__.py (no function) 0 0 0 0 0 100.00%
website/registrations/management/commands/__init__.py (no function) 0 0 0 0 0 100.00%
website/registrations/management/commands/minimiseregistrations.py Command.add_arguments 1 0 0 0 0 100.00%
website/registrations/management/commands/minimiseregistrations.py Command.handle 1 0 0 0 0 100.00%
website/registrations/management/commands/minimiseregistrations.py (no function) 5 0 0 0 0 100.00%
website/registrations/models.py Entry.save 3 0 0 2 0 100.00%
website/registrations/models.py Entry.clean 9 0 0 8 0 100.00%
website/registrations/models.py Entry.__str__ 4 0 0 0 0 100.00%
website/registrations/models.py Registration.get_full_name 2 0 0 0 0 100.00%
website/registrations/models.py Registration._generate_default_username 6 0 0 2 0 100.00%
website/registrations/models.py Registration.get_username 1 0 0 0 0 100.00%
website/registrations/models.py Registration.check_user_is_unique 1 0 0 0 0 100.00%
website/registrations/models.py Registration.clean 29 0 0 28 0 100.00%
website/registrations/models.py Registration.__str__ 1 0 0 0 0 100.00%
website/registrations/models.py Renewal.save 3 0 0 2 0 100.00%
website/registrations/models.py Renewal.clean 14 0 0 8 0 100.00%
website/registrations/models.py Renewal.__str__ 1 0 0 0 0 100.00%
website/registrations/models.py Reference.__str__ 1 0 0 0 0 100.00%
website/registrations/models.py (no function) 93 0 0 0 0 100.00%
website/registrations/payables.py _EntryPayable.payment_amount 1 0 0 0 0 100.00%
website/registrations/payables.py _EntryPayable.payment_payer 3 0 0 2 0 100.00%
website/registrations/payables.py _EntryPayable.payment_notes 1 0 0 0 0 100.00%
website/registrations/payables.py _EntryPayable.immutable_after_payment 1 0 0 0 0 100.00%
website/registrations/payables.py _EntryPayable.immutable_model_fields_after_payment 1 0 0 0 0 100.00%
website/registrations/payables.py RegistrationPayable.payment_topic 1 0 0 0 0 100.00%
website/registrations/payables.py RegistrationPayable.can_manage_payment 1 0 0 0 0 100.00%
website/registrations/payables.py RenewalPayable.payment_payer 1 0 0 0 0 100.00%
website/registrations/payables.py RenewalPayable.payment_topic 1 0 0 0 0 100.00%
website/registrations/payables.py RenewalPayable.can_manage_payment 1 0 0 0 0 100.00%
website/registrations/payables.py register 2 0 0 0 0 100.00%
website/registrations/payables.py (no function) 26 0 0 0 0 100.00%
website/registrations/services.py confirm_registration 8 0 0 4 0 100.00%
website/registrations/services.py reject_registration 7 0 0 2 0 100.00%
website/registrations/services.py revert_registration 9 0 2 4 0 100.00%
website/registrations/services.py accept_registration 13 0 0 8 0 100.00%
website/registrations/services.py revert_renewal 8 0 2 4 0 100.00%
website/registrations/services.py complete_registration 14 0 0 6 0 100.00%
website/registrations/services.py reject_renewal 7 0 0 2 0 100.00%
website/registrations/services.py accept_renewal 7 0 0 2 0 100.00%
website/registrations/services.py complete_renewal 28 0 0 12 0 100.00%
website/registrations/services.py _create_member 14 0 0 6 0 100.00%
website/registrations/services.py _create_membership_from_registration 11 0 0 6 0 100.00%
website/registrations/services.py execute_data_minimisation 7 0 1 0 0 100.00%
website/registrations/services.py (no function) 28 0 0 0 0 100.00%
website/registrations/signals.py complete_paid_registration 2 0 0 2 0 100.00%
website/registrations/signals.py complete_paid_renewal 2 0 0 2 0 100.00%
website/registrations/signals.py (no function) 8 0 0 0 0 100.00%
website/registrations/tasks.py minimise_registrations 1 0 0 0 0 100.00%
website/registrations/tasks.py notify_old_entries 10 0 0 4 0 100.00%
website/registrations/tasks.py (no function) 10 0 0 0 0 100.00%
website/registrations/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/registrations/tests/test_admin.py _get_mock_request 11 1 0 2 1 84.62%
website/registrations/tests/test_admin.py RegistrationAdminTest.setUp 3 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RegistrationAdminTest.test_get_readonly_fields 11 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RegistrationAdminTest.test_name 2 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RegistrationAdminTest.test_reference_count 5 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RegistrationAdminTest.test_formfield_for_dbfield 7 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RegistrationAdminTest.test_save_model 20 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RegistrationAdminTest.test_bulk_actions_permissions 18 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RegistrationAdminTest.test_can_open_registration_change_view 4 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RenewalAdminTest.setUp 2 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RenewalAdminTest.test_get_readonly_fields 9 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RenewalAdminTest.test_name 2 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RenewalAdminTest.test_email 2 0 0 0 0 100.00%
website/registrations/tests/test_admin.py RenewalAdminTest.test_bulk_actions_permissions 18 0 0 0 0 100.00%
website/registrations/tests/test_admin.py (no function) 30 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.setUp 1 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_registration_email_confirmation 3 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_registration_accepted_message 3 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_registration_rejected_message 3 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_new_registration_board_message 3 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_renewal_accepted_message 4 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_renewal_rejected_message 4 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_renewal_complete_message 4 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_new_renewal_board_message 4 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_reminder_open_registration 5 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_reminder_open_renewal 6 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_references_information_message 10 0 0 0 0 100.00%
website/registrations/tests/test_emails.py EmailsTest.test_send_email 4 0 0 0 0 100.00%
website/registrations/tests/test_emails.py (no function) 41 0 0 0 0 100.00%
website/registrations/tests/test_forms.py MemberRegistrationFormTest.setUp 1 0 0 0 0 100.00%
website/registrations/tests/test_forms.py MemberRegistrationFormTest.test_privacy_policy_checked 8 0 0 0 0 100.00%
website/registrations/tests/test_forms.py MemberRegistrationFormTest.test_has_privacy_policy_field 2 0 0 0 0 100.00%
website/registrations/tests/test_forms.py MemberRegistrationFormTest.test_price_calculation 14 0 0 0 0 100.00%
website/registrations/tests/test_forms.py BenefactorRegistrationFormTest.setUp 1 0 0 0 0 100.00%
website/registrations/tests/test_forms.py BenefactorRegistrationFormTest.test_privacy_policy_checked 7 0 0 0 0 100.00%
website/registrations/tests/test_forms.py BenefactorRegistrationFormTest.test_has_privacy_policy_field 2 0 0 0 0 100.00%
website/registrations/tests/test_forms.py BenefactorRegistrationFormTest.test_price_calculation 4 0 0 0 0 100.00%
website/registrations/tests/test_forms.py RenewalFormTest.setUp 3 0 0 0 0 100.00%
website/registrations/tests/test_forms.py RenewalFormTest.test_is_valid 22 0 0 0 0 100.00%
website/registrations/tests/test_forms.py RenewalFormTest.test_has_privacy_policy_field 2 0 0 0 0 100.00%
website/registrations/tests/test_forms.py RenewalFormTest.test_price_calculation 120 0 0 0 0 100.00%
website/registrations/tests/test_forms.py RenewalFormTest.test_study_long_membership_cannot_be_renewed 6 0 0 0 0 100.00%
website/registrations/tests/test_forms.py NewYearFormTest.setUp 2 0 0 0 0 100.00%
website/registrations/tests/test_forms.py NewYearFormTest.test_is_valid 29 0 0 0 0 100.00%
website/registrations/tests/test_forms.py ReferenceFormTest.setUp 4 0 0 0 0 100.00%
website/registrations/tests/test_forms.py ReferenceFormTest.test_clean 26 0 0 0 0 100.00%
website/registrations/tests/test_forms.py (no function) 35 0 0 0 0 100.00%
website/registrations/tests/test_management.py ManagementMinimiseTest.test_add_argument 3 0 0 0 0 100.00%
website/registrations/tests/test_management.py ManagementMinimiseTest.test_handle 4 0 0 0 0 100.00%
website/registrations/tests/test_management.py (no function) 8 0 0 0 0 100.00%
website/registrations/tests/test_models.py EntryTest.setUpTestData 3 0 0 0 0 100.00%
website/registrations/tests/test_models.py EntryTest.setUp 1 0 0 0 0 100.00%
website/registrations/tests/test_models.py EntryTest.test_str 4 0 0 0 0 100.00%
website/registrations/tests/test_models.py EntryTest.test_save 20 0 0 0 0 100.00%
website/registrations/tests/test_models.py EntryTest.test_clean 13 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.setUpTestData 1 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.setUp 1 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_str 1 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_get_full_name 1 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_full_clean_works 1 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_clean_works 1 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_unique_email_user 9 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_require_past_birthday 3 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_unique_student_number_user 11 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_require_student_number_members 9 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_unique_username_user 5 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_require_programme_members 6 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_require_starting_year_members 6 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_require_bank_details 14 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_generate_default_username 8 0 0 2 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_get_username 2 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_check_user_is_unique 15 0 0 0 0 100.00%
website/registrations/tests/test_models.py RegistrationTest.test_foreign_bankaccount_without_bic 5 0 0 0 0 100.00%
website/registrations/tests/test_models.py RenewalTest.setUp 2 0 0 0 0 100.00%
website/registrations/tests/test_models.py RenewalTest.test_str 1 0 0 0 0 100.00%
website/registrations/tests/test_models.py RenewalTest.test_save 7 0 0 0 0 100.00%
website/registrations/tests/test_models.py RenewalTest.test_clean_works 2 0 0 0 0 100.00%
website/registrations/tests/test_models.py RenewalTest.test_existing_renewal_in_review 7 0 0 0 0 100.00%
website/registrations/tests/test_models.py RenewalTest.test_not_within_renew_period 10 0 0 0 0 100.00%
website/registrations/tests/test_models.py RenewalTest.test_within_renew_period 5 0 0 0 0 100.00%
website/registrations/tests/test_models.py RenewalTest.test_benefactor_no_study_length 11 0 0 0 0 100.00%
website/registrations/tests/test_models.py RenewalTest.test_has_active_membership 9 0 0 0 0 100.00%
website/registrations/tests/test_models.py ReferenceTest.test_str 4 0 0 0 0 100.00%
website/registrations/tests/test_models.py (no function) 58 0 0 0 0 100.00%
website/registrations/tests/test_payables.py RenewalPayableTest.setUp 9 0 0 0 0 100.00%
website/registrations/tests/test_payables.py RenewalPayableTest.test_attributes 5 0 0 0 0 100.00%
website/registrations/tests/test_payables.py RegistrationPayableTest.setUp 9 0 0 0 0 100.00%
website/registrations/tests/test_payables.py RegistrationPayableTest.test_attributes 7 0 0 0 0 100.00%
website/registrations/tests/test_payables.py RegistrationPayableTest.test_immutable_fields_after_payment 6 0 0 0 0 100.00%
website/registrations/tests/test_payables.py (no function) 21 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.setUpTestData 14 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_confirm_registration 15 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_accept_registration 52 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_reject_registration 8 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_revert_registration 18 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_complete_registration 79 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_complete_registration_after_start_of_year 10 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_accept_renewal 11 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_reject_renewal 11 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_revert_renewal 18 0 0 0 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_complete_renewal 114 0 0 2 0 100.00%
website/registrations/tests/test_services.py ServicesTest.test_data_minimisation 26 0 0 0 0 100.00%
website/registrations/tests/test_services.py (no function) 27 0 0 0 0 100.00%
website/registrations/tests/test_tasks.py CeleryTest.test_minimise_registrations 2 0 0 0 0 100.00%
website/registrations/tests/test_tasks.py (no function) 6 0 0 0 0 100.00%
website/registrations/tests/test_views.py _get_mock_user 8 0 0 0 0 100.00%
website/registrations/tests/test_views.py EntryAdminViewTest.setUpTestData 11 0 0 0 0 100.00%
website/registrations/tests/test_views.py EntryAdminViewTest.setUp 1 0 0 0 0 100.00%
website/registrations/tests/test_views.py EntryAdminViewTest.test_registration_actions 20 0 0 0 0 100.00%
website/registrations/tests/test_views.py EntryAdminViewTest.test_renewal_actions 14 0 0 0 0 100.00%
website/registrations/tests/test_views.py ConfirmEmailViewTest.setUpTestData 1 0 0 0 0 100.00%
website/registrations/tests/test_views.py ConfirmEmailViewTest.test_incorrect_uuid 2 0 0 0 0 100.00%
website/registrations/tests/test_views.py ConfirmEmailViewTest.test_confirm_email 26 0 0 0 0 100.00%
website/registrations/tests/test_views.py ConfirmEmailViewTest.test_already_confirmed 12 0 0 0 0 100.00%
website/registrations/tests/test_views.py BecomeAMemberViewTest.setUp 1 0 0 0 0 100.00%
website/registrations/tests/test_views.py BecomeAMemberViewTest.test_get_context_data 4 0 0 0 0 100.00%
website/registrations/tests/test_views.py BaseRegistrationFormViewTest.setUp 2 0 0 0 0 100.00%
website/registrations/tests/test_views.py BaseRegistrationFormViewTest.test_get_context_data 6 0 0 0 0 100.00%
website/registrations/tests/test_views.py BaseRegistrationFormViewTest.test_get 12 0 0 0 0 100.00%
website/registrations/tests/test_views.py BaseRegistrationFormViewTest.test_form_valid 6 0 0 0 0 100.00%
website/registrations/tests/test_views.py MemberRegistrationFormViewTest.setUp 2 0 0 0 0 100.00%
website/registrations/tests/test_views.py MemberRegistrationFormViewTest.test_get_context_data_tpay_enabled 2 0 0 0 0 100.00%
website/registrations/tests/test_views.py MemberRegistrationFormViewTest.test_get_context_data_tpay_disabled 2 0 0 0 0 100.00%
website/registrations/tests/test_views.py MemberRegistrationFormViewTest.test_post 8 0 0 0 0 100.00%
website/registrations/tests/test_views.py BenefactorRegistrationFormViewTest.setUp 2 0 0 0 0 100.00%
website/registrations/tests/test_views.py BenefactorRegistrationFormViewTest.test_get_context_data_tpay_enabled 2 0 0 0 0 100.00%
website/registrations/tests/test_views.py BenefactorRegistrationFormViewTest.test_get_context_data_tpay_disabled 2 0 0 0 0 100.00%
website/registrations/tests/test_views.py BenefactorRegistrationFormViewTest.test_post 22 0 0 0 0 100.00%
website/registrations/tests/test_views.py RenewalFormViewTest.setUp 2 0 0 0 0 100.00%
website/registrations/tests/test_views.py RenewalFormViewTest.test_get_context_data 27 0 0 2 0 100.00%
website/registrations/tests/test_views.py RenewalFormViewTest.test_get_form 14 0 0 0 0 100.00%
website/registrations/tests/test_views.py RenewalFormViewTest.test_post 45 0 0 0 0 100.00%
website/registrations/tests/test_views.py RenewalFormViewTest.test_form_valid 19 0 0 0 0 100.00%
website/registrations/tests/test_views.py NewYearRenewalFormViewTest.setUpTestData 4 0 0 0 0 100.00%
website/registrations/tests/test_views.py NewYearRenewalFormViewTest.setUp 1 0 0 0 0 100.00%
website/registrations/tests/test_views.py NewYearRenewalFormViewTest.test_prolong_membership_in_august 4 0 0 0 0 100.00%
website/registrations/tests/test_views.py NewYearRenewalFormViewTest.test_cannot_prolong_membership_before_august_or_when_minimized 18 0 0 0 0 100.00%
website/registrations/tests/test_views.py NewYearRenewalFormViewTest.test_prolong_membership_in_september 4 0 0 0 0 100.00%
website/registrations/tests/test_views.py ReferenceCreateViewTest.setUpTestData 4 0 0 0 0 100.00%
website/registrations/tests/test_views.py ReferenceCreateViewTest.setUp 3 0 0 0 0 100.00%
website/registrations/tests/test_views.py ReferenceCreateViewTest.test_not_logged_in 4 0 0 0 0 100.00%
website/registrations/tests/test_views.py ReferenceCreateViewTest.test_not_a_current_member 4 0 0 0 0 100.00%
website/registrations/tests/test_views.py ReferenceCreateViewTest.test_entry_does_not_exist 2 0 0 0 0 100.00%
website/registrations/tests/test_views.py ReferenceCreateViewTest.test_entry_no_references_required 4 0 0 0 0 100.00%
website/registrations/tests/test_views.py ReferenceCreateViewTest.test_entry_no_benefactor 4 0 0 0 0 100.00%
website/registrations/tests/test_views.py ReferenceCreateViewTest.test_entry_shows_info 12 0 0 0 0 100.00%
website/registrations/tests/test_views.py ReferenceCreateViewTest.test_entry_saves_correctly 7 0 0 0 0 100.00%
website/registrations/tests/test_views.py ReferenceCreateViewTest.test_entry_reference_exists 7 0 0 0 0 100.00%
website/registrations/tests/test_views.py (no function) 96 0 0 0 0 100.00%
website/registrations/urls.py (no function) 5 0 0 0 0 100.00%
website/registrations/views.py BecomeAMemberView.get_context_data 4 0 0 0 0 100.00%
website/registrations/views.py EntryAdminView.post 21 0 13 8 0 100.00%
website/registrations/views.py ConfirmEmailView.get 6 0 0 4 0 100.00%
website/registrations/views.py BaseRegistrationFormView.get_context_data 5 0 0 0 0 100.00%
website/registrations/views.py BaseRegistrationFormView.get 3 0 0 2 0 100.00%
website/registrations/views.py BaseRegistrationFormView.form_valid 3 0 0 0 0 100.00%
website/registrations/views.py BaseRegistrationFormView.post 1 0 0 0 0 100.00%
website/registrations/views.py MemberRegistrationFormView.get_context_data 3 0 0 0 0 100.00%
website/registrations/views.py MemberRegistrationFormView.post 3 0 0 0 0 100.00%
website/registrations/views.py BenefactorRegistrationFormView.get_context_data 3 0 0 0 0 100.00%
website/registrations/views.py BenefactorRegistrationFormView.post 6 0 0 0 0 100.00%
website/registrations/views.py NewYearRenewalFormView.dispatch 6 0 0 2 0 100.00%
website/registrations/views.py NewYearRenewalFormView.form_valid 4 0 0 0 0 100.00%
website/registrations/views.py RenewalFormView.get_context_data 8 0 0 0 0 100.00%
website/registrations/views.py RenewalFormView.get_form 9 0 0 4 0 100.00%
website/registrations/views.py RenewalFormView.post 16 0 0 8 0 100.00%
website/registrations/views.py RenewalFormView.form_valid 5 0 0 2 0 100.00%
website/registrations/views.py ReferenceCreateView.get_success_url 1 0 0 0 0 100.00%
website/registrations/views.py ReferenceCreateView.get_context_data 7 0 0 0 0 100.00%
website/registrations/views.py ReferenceCreateView.dispatch 4 0 0 2 0 100.00%
website/registrations/views.py ReferenceCreateView.post 4 0 0 0 0 100.00%
website/registrations/views.py (no function) 73 0 0 0 0 100.00%
website/reimbursements/__init__.py (no function) 0 0 0 0 0 100.00%
website/reimbursements/admin.py ReimbursementsAdmin.save_model 13 13 0 12 0 0.00%
website/reimbursements/admin.py ReimbursementsAdmin.get_readonly_fields 4 4 0 2 0 0.00%
website/reimbursements/admin.py ReimbursementsAdmin.get_queryset 3 0 0 2 0 100.00%
website/reimbursements/admin.py ReimbursementsAdmin.has_view_permission 3 0 0 2 0 100.00%
website/reimbursements/admin.py ReimbursementsAdmin.has_change_permission 3 1 0 2 1 60.00%
website/reimbursements/admin.py ReimbursementsAdmin.add_view 19 19 0 8 0 0.00%
website/reimbursements/admin.py (no function) 28 0 0 0 0 100.00%
website/reimbursements/apps.py (no function) 4 0 0 0 0 100.00%
website/reimbursements/emails.py send_verdict_email 1 1 0 0 0 0.00%
website/reimbursements/emails.py (no function) 3 0 0 0 0 100.00%
website/reimbursements/models.py validate_file_size 3 3 0 2 0 0.00%
website/reimbursements/models.py Reimbursement.clean 8 0 0 6 0 100.00%
website/reimbursements/models.py Reimbursement.__str__ 1 0 0 0 0 100.00%
website/reimbursements/models.py (no function) 26 0 0 0 0 100.00%
website/reimbursements/services.py execute_data_minimisation 3 3 0 0 0 0.00%
website/reimbursements/services.py execute_data_minimisation._delete_old_reimbursements 4 4 0 2 0 0.00%
website/reimbursements/services.py (no function) 7 0 0 0 0 100.00%
website/reimbursements/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/reimbursements/tests/test_admin.py MockRequest.__init__ 1 0 0 0 0 100.00%
website/reimbursements/tests/test_admin.py ReimbursementsAdminTests.setUp 5 0 0 0 0 100.00%
website/reimbursements/tests/test_admin.py ReimbursementsAdminTests.test_get_queryset_for_superuser 3 0 0 0 0 100.00%
website/reimbursements/tests/test_admin.py ReimbursementsAdminTests.test_get_queryset_for_normal_user 3 0 0 0 0 100.00%
website/reimbursements/tests/test_admin.py ReimbursementsAdminTests.test_has_view_permission 5 0 0 0 0 100.00%
website/reimbursements/tests/test_admin.py (no function) 13 0 0 0 0 100.00%
website/reimbursements/tests/test_models.py ReimbursementModelTest.setUp 1 0 0 0 0 100.00%
website/reimbursements/tests/test_models.py ReimbursementModelTest.test_future_date_incurred 5 0 0 0 0 100.00%
website/reimbursements/tests/test_models.py ReimbursementModelTest.test_denied_verdict_without_clarification 5 0 0 0 0 100.00%
website/reimbursements/tests/test_models.py ReimbursementModelTest.test_valid_reimbursement 2 0 0 0 0 100.00%
website/reimbursements/tests/test_models.py (no function) 11 0 0 0 0 100.00%
website/sales/__init__.py (no function) 0 0 0 0 0 100.00%
website/sales/admin/__init__.py (no function) 3 0 0 0 0 100.00%
website/sales/admin/order_admin.py OrderItemInline.get_readonly_fields 4 0 0 2 0 100.00%
website/sales/admin/order_admin.py OrderItemInline.get_queryset 3 0 0 0 0 100.00%
website/sales/admin/order_admin.py OrderItemInline.has_add_permission 8 2 0 6 2 71.43%
website/sales/admin/order_admin.py OrderItemInline.has_change_permission 7 1 0 6 1 84.62%
website/sales/admin/order_admin.py OrderItemInline.has_delete_permission 7 1 0 6 1 84.62%
website/sales/admin/order_admin.py OrderItemInline.get_parent_object_from_request 5 1 0 2 1 71.43%
website/sales/admin/order_admin.py OrderItemInline.formfield_for_foreignkey 8 1 0 6 3 71.43%
website/sales/admin/order_admin.py OrderShiftFilter.queryset 3 1 0 2 1 60.00%
website/sales/admin/order_admin.py OrderMemberFilter.queryset 3 1 0 2 1 60.00%
website/sales/admin/order_admin.py OrderPaymentFilter.lookups 1 0 0 0 0 100.00%
website/sales/admin/order_admin.py OrderPaymentFilter.queryset 7 5 0 6 1 23.08%
website/sales/admin/order_admin.py OrderProductFilter.lookups 3 0 0 0 0 100.00%
website/sales/admin/order_admin.py OrderProductFilter.queryset 3 1 0 2 1 60.00%
website/sales/admin/order_admin.py OrderAdmin.get_readonly_fields 6 0 0 4 0 100.00%
website/sales/admin/order_admin.py OrderAdmin.save_model 2 2 0 0 0 0.00%
website/sales/admin/order_admin.py OrderAdmin.changeform_view 5 1 0 4 2 66.67%
website/sales/admin/order_admin.py OrderAdmin.get_queryset 11 2 0 4 2 73.33%
website/sales/admin/order_admin.py OrderAdmin.has_add_permission 6 1 0 6 1 83.33%
website/sales/admin/order_admin.py OrderAdmin.has_view_permission 3 0 0 2 0 100.00%
website/sales/admin/order_admin.py OrderAdmin.has_change_permission 7 0 0 6 0 100.00%
website/sales/admin/order_admin.py OrderAdmin.has_delete_permission 7 0 0 6 0 100.00%
website/sales/admin/order_admin.py OrderAdmin.get_form 1 0 0 0 0 100.00%
website/sales/admin/order_admin.py OrderAdmin.formfield_for_dbfield 10 5 0 8 1 44.44%
website/sales/admin/order_admin.py OrderAdmin.changelist_view 3 1 0 2 1 60.00%
website/sales/admin/order_admin.py OrderAdmin.change_view 8 3 0 4 2 58.33%
website/sales/admin/order_admin.py OrderAdmin.order_description 3 0 0 2 0 100.00%
website/sales/admin/order_admin.py OrderAdmin.num_items 1 0 0 0 0 100.00%
website/sales/admin/order_admin.py OrderAdmin.subtotal 3 0 0 2 0 100.00%
website/sales/admin/order_admin.py OrderAdmin.discount 3 3 0 2 0 0.00%
website/sales/admin/order_admin.py OrderAdmin.total_amount 3 0 0 2 0 100.00%
website/sales/admin/order_admin.py OrderAdmin.paid 3 0 0 2 0 100.00%
website/sales/admin/order_admin.py OrderAdmin.age_restricted 1 0 0 0 0 100.00%
website/sales/admin/order_admin.py (no function) 82 0 0 0 0 100.00%
website/sales/admin/product_admin.py (no function) 12 0 0 0 0 100.00%
website/sales/admin/shift_admin.py SelfOrderPeriodInline.has_change_permission 5 2 0 4 2 55.56%
website/sales/admin/shift_admin.py OrderInline.has_add_permission 1 0 0 0 0 100.00%
website/sales/admin/shift_admin.py OrderInline.has_change_permission 5 2 0 4 2 55.56%
website/sales/admin/shift_admin.py OrderInline.get_queryset 6 0 0 0 0 100.00%
website/sales/admin/shift_admin.py OrderInline.total_amount 3 0 0 2 0 100.00%
website/sales/admin/shift_admin.py OrderInline.discount 3 3 0 2 0 0.00%
website/sales/admin/shift_admin.py OrderInline.paid 3 0 0 2 0 100.00%
website/sales/admin/shift_admin.py ShiftAdmin.get_readonly_fields 4 1 0 2 1 66.67%
website/sales/admin/shift_admin.py ShiftAdmin.get_queryset 8 2 0 4 2 66.67%
website/sales/admin/shift_admin.py ShiftAdmin.has_view_permission 3 0 0 2 0 100.00%
website/sales/admin/shift_admin.py ShiftAdmin.has_change_permission 5 1 0 4 1 77.78%
website/sales/admin/shift_admin.py ShiftAdmin.has_delete_permission 5 1 0 4 1 77.78%
website/sales/admin/shift_admin.py ShiftAdmin.changelist_view 3 1 0 2 1 60.00%
website/sales/admin/shift_admin.py ShiftAdmin.active 1 0 0 0 0 100.00%
website/sales/admin/shift_admin.py ShiftAdmin.num_orders 3 1 0 2 1 60.00%
website/sales/admin/shift_admin.py ShiftAdmin.total_revenue 3 1 0 2 1 60.00%
website/sales/admin/shift_admin.py ShiftAdmin.product_sales 4 1 0 2 1 66.67%
website/sales/admin/shift_admin.py ShiftAdmin.payment_method_sales 2 0 0 0 0 100.00%
website/sales/admin/shift_admin.py (no function) 50 0 0 0 0 100.00%
website/sales/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/sales/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/sales/api/v2/admin/__init__.py (no function) 0 0 0 0 0 100.00%
website/sales/api/v2/admin/permissions.py IsManager.has_permission 5 0 0 2 0 100.00%
website/sales/api/v2/admin/permissions.py IsManager.has_object_permission 7 2 0 6 2 69.23%
website/sales/api/v2/admin/permissions.py (no function) 9 0 0 0 0 100.00%
website/sales/api/v2/admin/serializers/__init__.py (no function) 0 0 0 0 0 100.00%
website/sales/api/v2/admin/serializers/order.py ProductNameRelatedField.get_queryset 4 0 0 2 0 100.00%
website/sales/api/v2/admin/serializers/order.py ProductNameRelatedField.to_internal_value 10 4 0 2 1 58.33%
website/sales/api/v2/admin/serializers/order.py ProductNameRelatedField.to_representation 1 0 0 0 0 100.00%
website/sales/api/v2/admin/serializers/order.py OrderItemSerializer.get_fields 7 0 0 4 0 100.00%
website/sales/api/v2/admin/serializers/order.py OrderItemSerializer.create 3 0 0 0 0 100.00%
website/sales/api/v2/admin/serializers/order.py OrderItemSerializer.update 8 2 0 0 0 75.00%
website/sales/api/v2/admin/serializers/order.py OrderSerializer.get_fields 8 0 0 2 0 100.00%
website/sales/api/v2/admin/serializers/order.py OrderSerializer.create 13 2 0 6 1 84.21%
website/sales/api/v2/admin/serializers/order.py OrderSerializer.update 16 2 0 10 1 88.46%
website/sales/api/v2/admin/serializers/order.py (no function) 47 0 0 0 0 100.00%
website/sales/api/v2/admin/serializers/shift.py ProductListItemSerializer._name 1 0 0 0 0 100.00%
website/sales/api/v2/admin/serializers/shift.py ProductListItemSerializer._age_restricted 1 0 0 0 0 100.00%
website/sales/api/v2/admin/serializers/shift.py ShiftSerializer._get_title 1 0 0 0 0 100.00%
website/sales/api/v2/admin/serializers/shift.py (no function) 23 0 0 0 0 100.00%
website/sales/api/v2/admin/urls.py (no function) 4 0 0 0 0 100.00%
website/sales/api/v2/admin/views.py ShiftListView.get_queryset 9 1 0 4 1 84.62%
website/sales/api/v2/admin/views.py OrderListView.get_serializer_class 4 1 0 4 1 75.00%
website/sales/api/v2/admin/views.py OrderListView.create 4 1 0 2 1 66.67%
website/sales/api/v2/admin/views.py OrderListView.perform_create 1 0 0 0 0 100.00%
website/sales/api/v2/admin/views.py OrderListView.get_queryset 9 0 0 2 1 90.91%
website/sales/api/v2/admin/views.py OrderListView.get_serializer_context 6 0 0 2 1 87.50%
website/sales/api/v2/admin/views.py OrderDetailView.get_queryset 10 1 0 4 1 85.71%
website/sales/api/v2/admin/views.py (no function) 42 0 0 0 0 100.00%
website/sales/api/v2/filters.py ShiftActiveFilter.filter_queryset 7 4 0 2 1 44.44%
website/sales/api/v2/filters.py ShiftActiveFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/sales/api/v2/filters.py ShiftLockedFilter.filter_queryset 7 4 0 2 1 44.44%
website/sales/api/v2/filters.py ShiftLockedFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/sales/api/v2/filters.py ShiftDateFilter.filter_queryset 6 2 0 4 2 60.00%
website/sales/api/v2/filters.py ShiftDateFilter.get_schema_operation_parameters 1 1 0 0 0 0.00%
website/sales/api/v2/filters.py (no function) 12 0 0 0 0 100.00%
website/sales/api/v2/serializers/__init__.py (no function) 0 0 0 0 0 100.00%
website/sales/api/v2/serializers/user_order.py UserProductNameRelatedField.get_queryset 4 4 0 2 0 0.00%
website/sales/api/v2/serializers/user_order.py (no function) 8 0 0 0 0 100.00%
website/sales/api/v2/serializers/user_shift.py UserShiftSerializer._get_title 1 1 0 0 0 0.00%
website/sales/api/v2/serializers/user_shift.py (no function) 12 0 0 0 0 100.00%
website/sales/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/sales/api/v2/views.py UserOrderListView.create 4 1 0 2 1 66.67%
website/sales/api/v2/views.py UserOrderListView.perform_create 1 0 0 0 0 100.00%
website/sales/api/v2/views.py UserOrderListView.get_queryset 2 0 0 0 0 100.00%
website/sales/api/v2/views.py UserOrderDetailView.get_queryset 2 2 0 0 0 0.00%
website/sales/api/v2/views.py UserOrderDetailView.update 5 5 0 4 0 0.00%
website/sales/api/v2/views.py UserOrderDetailView.partial_update 5 5 0 4 0 0.00%
website/sales/api/v2/views.py UserOrderDetailView.destroy 4 4 0 4 0 0.00%
website/sales/api/v2/views.py OrderClaimView.OrderClaimViewSchema.get_request_serializer 1 1 0 0 0 0.00%
website/sales/api/v2/views.py OrderClaimView.patch 13 1 0 8 1 90.48%
website/sales/api/v2/views.py (no function) 47 0 0 0 0 100.00%
website/sales/apps.py SalesConfig.ready 2 0 0 0 0 100.00%
website/sales/apps.py (no function) 4 0 0 0 0 100.00%
website/sales/models/__init__.py (no function) 0 0 0 0 0 100.00%
website/sales/models/order.py default_order_shift 1 0 0 0 0 100.00%
website/sales/models/order.py Order.save 15 1 0 10 2 88.00%
website/sales/models/order.py Order.clean 8 1 0 6 1 85.71%
website/sales/models/order.py Order.order_description 1 0 0 0 0 100.00%
website/sales/models/order.py Order.accept_payment_from_any_user 1 1 0 0 0 0.00%
website/sales/models/order.py Order.payment_url 1 0 0 0 0 100.00%
website/sales/models/order.py Order.__str__ 1 0 0 0 0 100.00%
website/sales/models/order.py OrderItem.save 14 4 0 12 3 65.38%
website/sales/models/order.py OrderItem.clean 8 1 0 6 3 71.43%
website/sales/models/order.py OrderItem.__str__ 1 0 0 0 0 100.00%
website/sales/models/order.py OrderItem.delete 2 0 0 0 0 100.00%
website/sales/models/order.py (no function) 63 0 0 0 0 100.00%
website/sales/models/product.py Product.__str__ 1 0 0 0 0 100.00%
website/sales/models/product.py ProductList.__str__ 1 0 0 0 0 100.00%
website/sales/models/product.py ProductListItem.__str__ 1 0 0 0 0 100.00%
website/sales/models/product.py ProductListItem.product_name 1 0 0 0 0 100.00%
website/sales/models/product.py (no function) 31 0 0 0 0 100.00%
website/sales/models/shift.py Shift.clean 8 1 0 6 3 71.43%
website/sales/models/shift.py Shift.save 3 0 0 2 0 100.00%
website/sales/models/shift.py Shift.product_sales 2 0 0 0 0 100.00%
website/sales/models/shift.py Shift.payment_method_sales 2 0 0 0 0 100.00%
website/sales/models/shift.py Shift.user_orders_allowed 1 0 0 0 0 100.00%
website/sales/models/shift.py Shift.user_order_period 4 4 0 2 0 0.00%
website/sales/models/shift.py Shift.__str__ 3 1 0 2 1 60.00%
website/sales/models/shift.py SelfOrderPeriod.__str__ 1 0 0 0 0 100.00%
website/sales/models/shift.py (no function) 47 0 0 0 0 100.00%
website/sales/payables.py OrderPayable.payment_amount 1 0 0 0 0 100.00%
website/sales/payables.py OrderPayable.payment_topic 1 0 0 0 0 100.00%
website/sales/payables.py OrderPayable.payment_notes 1 0 0 0 0 100.00%
website/sales/payables.py OrderPayable.payment_payer 1 0 0 0 0 100.00%
website/sales/payables.py OrderPayable.paying_allowed 1 0 0 0 0 100.00%
website/sales/payables.py OrderPayable.can_manage_payment 1 0 0 0 0 100.00%
website/sales/payables.py OrderPayable.immutable_after_payment 1 0 0 0 0 100.00%
website/sales/payables.py OrderPayable.immutable_foreign_key_models 1 0 0 0 0 100.00%
website/sales/payables.py OrderPayable.immutable_model_fields_after_payment 1 0 0 0 0 100.00%
website/sales/payables.py register 1 0 0 0 0 100.00%
website/sales/payables.py (no function) 23 0 0 0 0 100.00%
website/sales/services.py is_adult 2 0 0 0 0 100.00%
website/sales/services.py is_manager 3 1 0 2 1 60.00%
website/sales/services.py execute_data_minimisation 5 5 0 2 0 0.00%
website/sales/services.py gen_stats_sales_orders 5 5 0 2 0 0.00%
website/sales/services.py (no function) 7 0 0 0 0 100.00%
website/sales/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.setUpTestData 38 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.setUp 8 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_change_form_view_rendering_correctly 3 0 0 2 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_change_list_view_rendering_correctly 2 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_view_permissions 23 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_change_permissions 26 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_change_permission_paid 5 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_change_permission_locked 7 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_delete_permissions 26 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_delete_permission_paid 5 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_delete_permission_locked 7 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_add_permission 30 0 0 0 0 100.00%
website/sales/tests/test_admin.py OrderAdminTest.test_custom_prices_readonly 18 0 0 0 0 100.00%
website/sales/tests/test_admin.py ShiftAdminTest.setUpTestData 38 0 0 0 0 100.00%
website/sales/tests/test_admin.py ShiftAdminTest.setUp 8 0 0 0 0 100.00%
website/sales/tests/test_admin.py ShiftAdminTest.test_change_form_view_rendering_correctly 2 0 0 0 0 100.00%
website/sales/tests/test_admin.py ShiftAdminTest.test_change_list_view_rendering_correctly 2 0 0 0 0 100.00%
website/sales/tests/test_admin.py ShiftAdminTest.test_view_permissions 23 0 0 0 0 100.00%
website/sales/tests/test_admin.py ShiftAdminTest.has_change_permission 23 23 0 0 0 0.00%
website/sales/tests/test_admin.py ShiftAdminTest.test_change_permission_locked 6 0 0 0 0 100.00%
website/sales/tests/test_admin.py ShiftAdminTest.test_delete_permissions 23 0 0 0 0 100.00%
website/sales/tests/test_admin.py (no function) 43 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.setUpTestData 38 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.setUp 2 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_detail_not_logged_in 3 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_detail_not_authorized__get 10 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_detail_not_authorized__patch 11 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_detail_not_authorized__put 11 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_detail_not_authorized__delete 10 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_list_not_logged_in 3 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_list_not_authorized__get 10 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_list_not_authorized__post 11 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_create_order 66 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_invalid_product 3 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_user_self_order 6 0 0 0 0 100.00%
website/sales/tests/test_api.py OrderAPITest.test_claim_order 36 0 0 0 0 100.00%
website/sales/tests/test_api.py ShiftAPITest.setUpTestData 38 0 0 0 0 100.00%
website/sales/tests/test_api.py ShiftAPITest.setUp 2 0 0 0 0 100.00%
website/sales/tests/test_api.py ShiftAPITest.test_detail_not_logged_in 3 0 0 0 0 100.00%
website/sales/tests/test_api.py ShiftAPITest.test_detail_not_authorized__get 10 0 0 0 0 100.00%
website/sales/tests/test_api.py ShiftAPITest.test_list_not_logged_in 3 0 0 0 0 100.00%
website/sales/tests/test_api.py ShiftAPITest.test_list_not_authorized__get 13 0 0 0 0 100.00%
website/sales/tests/test_api.py (no function) 43 0 0 0 0 100.00%
website/sales/tests/test_models.py ProductTest.setUpTestData 3 0 0 0 0 100.00%
website/sales/tests/test_models.py ProductTest.test_str 3 0 0 0 0 100.00%
website/sales/tests/test_models.py ProductListTest.setUpTestData 6 0 0 0 0 100.00%
website/sales/tests/test_models.py ProductListTest.test_str 2 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.setUpTestData 7 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_age_restricted 8 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_subtotal 13 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_total_amount 16 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_num_items 10 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_create_order_shift_locked 4 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_create_order_shift_not_started 5 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_update_order_shift_locked 7 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_update_order_paid 18 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_discount_amount 9 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_order_item_total 12 0 0 0 0 100.00%
website/sales/tests/test_models.py OrderTest.test_nonexistent_product 4 0 0 0 0 100.00%
website/sales/tests/test_models.py ShiftTest.setUpTestData 7 0 0 0 0 100.00%
website/sales/tests/test_models.py ShiftTest.test_time 4 0 0 0 0 100.00%
website/sales/tests/test_models.py ShiftTest.test_remove_orders_on_locked 21 0 0 0 0 100.00%
website/sales/tests/test_models.py ShiftTest.test_active 3 0 0 0 0 100.00%
website/sales/tests/test_models.py ShiftTest.test_shift_statistics 34 0 0 0 0 100.00%
website/sales/tests/test_models.py ShiftTest.test_is_manager 14 0 0 0 0 100.00%
website/sales/tests/test_models.py (no function) 49 0 0 0 0 100.00%
website/sales/tests/test_services.py SalesServicesTest.setUpTestData 7 0 0 0 0 100.00%
website/sales/tests/test_services.py SalesServicesTest.test_adult_member 2 0 0 0 0 100.00%
website/sales/tests/test_services.py SalesServicesTest.test_underage_member 2 0 0 0 0 100.00%
website/sales/tests/test_services.py SalesServicesTest.test_is_manager 14 0 0 0 0 100.00%
website/sales/tests/test_services.py (no function) 19 0 0 0 0 100.00%
website/sales/tests/test_views.py SalesOrderPaymentView.setUpTestData 26 0 0 0 0 100.00%
website/sales/tests/test_views.py SalesOrderPaymentView.setUp 2 0 0 0 0 100.00%
website/sales/tests/test_views.py SalesOrderPaymentView.test_not_logged_in 4 0 0 0 0 100.00%
website/sales/tests/test_views.py SalesOrderPaymentView.test_paid_order 3 0 0 0 0 100.00%
website/sales/tests/test_views.py SalesOrderPaymentView.test_other_persons_order 6 0 0 0 0 100.00%
website/sales/tests/test_views.py SalesOrderPaymentView.test_empty_order 3 0 0 0 0 100.00%
website/sales/tests/test_views.py SalesOrderPaymentView.test_free_order 5 0 0 0 0 100.00%
website/sales/tests/test_views.py SalesOrderPaymentView.test_age_restricted_order__unauthorized 7 0 0 0 0 100.00%
website/sales/tests/test_views.py SalesOrderPaymentView.test_age_restricted_order__okay 6 0 0 0 0 100.00%
website/sales/tests/test_views.py SalesOrderPaymentView.test_normal 6 0 0 0 0 100.00%
website/sales/tests/test_views.py (no function) 25 0 0 0 0 100.00%
website/sales/urls.py (no function) 4 0 0 0 0 100.00%
website/sales/views.py OrderPaymentView.get 19 2 0 10 1 89.66%
website/sales/views.py (no function) 11 0 0 0 0 100.00%
website/shortlinks/__init__.py (no function) 0 0 0 0 0 100.00%
website/shortlinks/admin.py ShortLinkAdmin.get_form 3 3 0 0 0 0.00%
website/shortlinks/admin.py (no function) 6 0 0 0 0 100.00%
website/shortlinks/apps.py (no function) 4 0 0 0 0 100.00%
website/shortlinks/models.py ShortLink.__str__ 1 0 0 0 0 100.00%
website/shortlinks/models.py (no function) 8 0 0 0 0 100.00%
website/shortlinks/urls.py (no function) 4 0 0 0 0 100.00%
website/shortlinks/views.py ShortLinkView.render_to_response 3 3 0 2 0 0.00%
website/shortlinks/views.py (no function) 8 0 0 0 0 100.00%
website/singlepages/__init__.py (no function) 0 0 0 0 0 100.00%
website/singlepages/apps.py SinglepagesConfig.menu_items 1 0 0 0 0 100.00%
website/singlepages/apps.py (no function) 7 0 0 0 0 100.00%
website/singlepages/sitemaps.py StaticViewSitemap.items 1 0 0 0 0 100.00%
website/singlepages/sitemaps.py StaticViewSitemap.location 1 0 0 0 0 100.00%
website/singlepages/sitemaps.py (no function) 6 0 0 0 0 100.00%
website/singlepages/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/singlepages/tests/test_sitemaps.py load_tests 2 0 0 0 0 100.00%
website/singlepages/tests/test_sitemaps.py (no function) 3 0 0 0 0 100.00%
website/singlepages/urls.py (no function) 4 0 0 0 0 100.00%
website/singlepages/views.py (no function) 23 0 0 0 0 100.00%
website/thabloid/__init__.py (no function) 0 0 0 0 0 100.00%
website/thabloid/admin.py association_year_choices 6 6 0 2 0 0.00%
website/thabloid/admin.py ThabloidAdminForm.__init__ 3 3 0 0 0 0.00%
website/thabloid/admin.py ThabloidUserAdmin.get_queryset 5 5 0 2 0 0.00%
website/thabloid/admin.py ThabloidUserAdmin.street 1 1 0 0 0 0.00%
website/thabloid/admin.py ThabloidUserAdmin.street2 1 1 0 0 0 0.00%
website/thabloid/admin.py ThabloidUserAdmin.postal_code 1 1 0 0 0 0.00%
website/thabloid/admin.py ThabloidUserAdmin.city 1 1 0 0 0 0.00%
website/thabloid/admin.py ThabloidUserAdmin.country 1 1 0 0 0 0.00%
website/thabloid/admin.py ThabloidUserAdmin.address 1 1 0 0 0 0.00%
website/thabloid/admin.py ThabloidUserAdmin.has_change_permission 1 0 0 0 0 100.00%
website/thabloid/admin.py ThabloidUserAdmin.has_add_permission 1 0 0 0 0 100.00%
website/thabloid/admin.py ThabloidUserAdmin.has_delete_permission 1 0 0 0 0 100.00%
website/thabloid/admin.py ThabloidUserAdmin.address_csv_export 7 7 0 2 0 0.00%
website/thabloid/admin.py (no function) 40 0 0 0 0 100.00%
website/thabloid/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/thabloid/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/thabloid/api/v2/serializers.py ThabloidSerializer.get_cover 1 1 0 0 0 0.00%
website/thabloid/api/v2/serializers.py ThabloidSerializer.get_file 1 1 0 0 0 0.00%
website/thabloid/api/v2/serializers.py (no function) 12 0 0 0 0 100.00%
website/thabloid/api/v2/urls.py (no function) 4 0 0 0 0 100.00%
website/thabloid/api/v2/views.py (no function) 17 0 0 0 0 100.00%
website/thabloid/apps.py ThabloidConfig.menu_items 1 0 0 0 0 100.00%
website/thabloid/apps.py ThabloidConfig.user_profile_form_fields 6 6 0 2 0 0.00%
website/thabloid/apps.py (no function) 9 0 0 0 0 100.00%
website/thabloid/models/__init__.py (no function) 3 0 0 0 0 100.00%
website/thabloid/models/thabloid.py thabloid_filename 2 2 0 0 0 0.00%
website/thabloid/models/thabloid.py pagesets 4 4 0 2 0 0.00%
website/thabloid/models/thabloid.py Thabloid.__str__ 1 0 0 0 0 100.00%
website/thabloid/models/thabloid.py Thabloid.get_absolute_url 1 1 0 0 0 0.00%
website/thabloid/models/thabloid.py (no function) 21 0 0 0 0 100.00%
website/thabloid/models/thabloid_user.py ThabloidUser.wants_thabloid 1 1 0 0 0 0.00%
website/thabloid/models/thabloid_user.py ThabloidUser.allow_thabloid 2 0 0 0 0 100.00%
website/thabloid/models/thabloid_user.py ThabloidUser.disallow_thabloid 2 0 0 0 0 100.00%
website/thabloid/models/thabloid_user.py ThabloidUser.__str__ 1 0 0 0 0 100.00%
website/thabloid/models/thabloid_user.py BlacklistedThabloidUser.__str__ 1 0 0 0 0 100.00%
website/thabloid/models/thabloid_user.py (no function) 25 0 0 0 0 100.00%
website/thabloid/services.py update_thabloid_blacklist_for_user 3 3 0 2 0 0.00%
website/thabloid/services.py (no function) 2 2 0 0 0 0.00%
website/thabloid/sitemaps.py StaticViewSitemap.items 1 0 0 0 0 100.00%
website/thabloid/sitemaps.py StaticViewSitemap.location 1 0 0 0 0 100.00%
website/thabloid/sitemaps.py ThabloidSitemap.items 1 0 0 0 0 100.00%
website/thabloid/sitemaps.py ThabloidSitemap.location 1 1 0 0 0 0.00%
website/thabloid/sitemaps.py (no function) 12 0 0 0 0 100.00%
website/thabloid/templatetags/thabloid_cards.py thabloid_card 3 3 0 0 0 0.00%
website/thabloid/templatetags/thabloid_cards.py (no function) 7 0 0 0 0 100.00%
website/thabloid/urls.py (no function) 4 0 0 0 0 100.00%
website/thabloid/views.py index 3 3 0 0 0 0.00%
website/thabloid/views.py thabloid 2 2 0 0 0 0.00%
website/thabloid/views.py (no function) 9 0 0 0 0 100.00%
website/thaliawebsite/__init__.py (no function) 2 0 0 0 0 100.00%
website/thaliawebsite/admin.py ThaliaAdminSite.has_permission 1 0 0 0 0 100.00%
website/thaliawebsite/admin.py (no function) 8 0 0 0 0 100.00%
website/thaliawebsite/api/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/serializers.py CalenderJSSerializer._start 1 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/serializers.py CalenderJSSerializer._end 1 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/serializers.py CalenderJSSerializer._all_day 1 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/serializers.py CalenderJSSerializer._is_birthday 1 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/serializers.py CalenderJSSerializer._url 1 1 0 0 0 0.00%
website/thaliawebsite/api/calendarjs/serializers.py CalenderJSSerializer._title 1 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/serializers.py CalenderJSSerializer._description 1 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/serializers.py CalenderJSSerializer._class_names 1 1 0 0 0 0.00%
website/thaliawebsite/api/calendarjs/serializers.py CalenderJSSerializer._target_blank 1 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/serializers.py CalenderJSSerializer._registration_info 1 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/serializers.py (no function) 27 0 0 0 0 100.00%
website/thaliawebsite/api/calendarjs/urls.py (no function) 3 0 0 0 0 100.00%
website/thaliawebsite/api/facedetection/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/api/facedetection/urls.py (no function) 3 0 0 0 0 100.00%
website/thaliawebsite/api/openapi.py OAuthSchemaGenerator.get_schema 4 4 0 2 0 0.00%
website/thaliawebsite/api/openapi.py OAuthAutoSchema.get_operation 5 5 0 2 0 0.00%
website/thaliawebsite/api/openapi.py OAuthAutoSchema.get_operation_id_base 4 4 0 2 0 0.00%
website/thaliawebsite/api/openapi.py OAuthAutoSchema.get_operation_id 8 8 0 4 0 0.00%
website/thaliawebsite/api/openapi.py OAuthAutoSchema.get_serializer 13 13 0 2 0 0.00%
website/thaliawebsite/api/openapi.py (no function) 15 0 0 0 0 100.00%
website/thaliawebsite/api/services.py create_image_thumbnail_dict 3 0 0 2 0 100.00%
website/thaliawebsite/api/services.py (no function) 2 0 0 0 0 100.00%
website/thaliawebsite/api/throttling.py AnonRateThrottle.get_cache_key 3 3 0 2 0 0.00%
website/thaliawebsite/api/throttling.py UserRateThrottle.get_cache_key 4 4 0 2 0 0.00%
website/thaliawebsite/api/throttling.py (no function) 7 0 0 0 0 100.00%
website/thaliawebsite/api/urls.py (no function) 4 0 0 0 0 100.00%
website/thaliawebsite/api/v2/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/__init__.py (no function) 3 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/model/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/model/diff.py ModelDiffCalculator.__init__ 2 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/model/diff.py ModelDiffCalculator.set_changed_model 5 1 0 2 1 71.43%
website/thaliawebsite/api/v2/admin/model/diff.py ModelDiffCalculator.diff 6 1 0 2 1 75.00%
website/thaliawebsite/api/v2/admin/model/diff.py ModelDiffCalculator.has_changed 1 1 0 0 0 0.00%
website/thaliawebsite/api/v2/admin/model/diff.py ModelDiffCalculator.changed_fields 1 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/model/diff.py ModelDiffCalculator.get_field_diff 1 1 0 0 0 0.00%
website/thaliawebsite/api/v2/admin/model/diff.py ModelDiffCalculator._dict 1 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/model/diff.py (no function) 12 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/permissions.py (no function) 3 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/urls.py (no function) 3 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/views.py AdminPermissionsMixin.get_permissions 3 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/views.py LogActionMixin.log_action 1 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/views.py AdminCreateAPIView.perform_create 2 2 0 0 0 0.00%
website/thaliawebsite/api/v2/admin/views.py AdminUpdateAPIView.perform_update 3 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/views.py AdminDestroyAPIView.perform_destroy 3 0 0 0 0 100.00%
website/thaliawebsite/api/v2/admin/views.py (no function) 20 0 0 0 0 100.00%
website/thaliawebsite/api/v2/fields/__init__.py (no function) 3 0 0 0 0 100.00%
website/thaliawebsite/api/v2/fields/current_member.py CurrentMemberDefault.__call__ 1 1 0 0 0 0.00%
website/thaliawebsite/api/v2/fields/current_member.py CurrentMemberDefault.__repr__ 1 1 0 0 0 0.00%
website/thaliawebsite/api/v2/fields/current_member.py (no function) 4 0 0 0 0 100.00%
website/thaliawebsite/api/v2/fields/current_object.py CurrentRequestObjectDefault.__init__ 4 0 0 0 0 100.00%
website/thaliawebsite/api/v2/fields/current_object.py CurrentRequestObjectDefault.__call__ 4 4 0 2 0 0.00%
website/thaliawebsite/api/v2/fields/current_object.py CurrentRequestObjectDefault.__repr__ 1 1 0 0 0 0.00%
website/thaliawebsite/api/v2/fields/current_object.py (no function) 5 0 0 0 0 100.00%
website/thaliawebsite/api/v2/permissions.py IsAuthenticatedOrTokenHasScopeForMethod.has_permission 14 6 0 8 2 45.45%
website/thaliawebsite/api/v2/permissions.py (no function) 6 0 0 0 0 100.00%
website/thaliawebsite/api/v2/serializers/__init__.py (no function) 4 0 0 0 0 100.00%
website/thaliawebsite/api/v2/serializers/cleaned_model_serializer.py CleanedModelSerializer.create 4 4 0 0 0 0.00%
website/thaliawebsite/api/v2/serializers/cleaned_model_serializer.py CleanedModelSerializer.update 16 16 0 6 0 0.00%
website/thaliawebsite/api/v2/serializers/cleaned_model_serializer.py (no function) 8 0 0 0 0 100.00%
website/thaliawebsite/api/v2/serializers/empty.py (no function) 3 0 0 0 0 100.00%
website/thaliawebsite/api/v2/serializers/html.py CleanedHTMLSerializer.to_internal_value 1 1 0 0 0 0.00%
website/thaliawebsite/api/v2/serializers/html.py CleanedHTMLSerializer.update 1 1 0 0 0 0.00%
website/thaliawebsite/api/v2/serializers/html.py CleanedHTMLSerializer.create 1 1 0 0 0 0.00%
website/thaliawebsite/api/v2/serializers/html.py CleanedHTMLSerializer.to_representation 1 0 0 0 0 100.00%
website/thaliawebsite/api/v2/serializers/html.py (no function) 8 0 0 0 0 100.00%
website/thaliawebsite/api/v2/serializers/thumbnail.py ThumbnailSerializer.__init__ 3 0 0 0 0 100.00%
website/thaliawebsite/api/v2/serializers/thumbnail.py ThumbnailSerializer.to_representation 4 0 0 2 0 100.00%
website/thaliawebsite/api/v2/serializers/thumbnail.py ThumbnailSerializer.to_internal_value 3 3 0 2 0 0.00%
website/thaliawebsite/api/v2/serializers/thumbnail.py (no function) 8 0 0 0 0 100.00%
website/thaliawebsite/api/v2/urls.py (no function) 6 0 0 0 0 100.00%
website/thaliawebsite/apps.py ThaliaWebsiteConfig.menu_items 1 0 0 0 0 100.00%
website/thaliawebsite/apps.py ThaliaWebsiteConfig.user_menu_items 1 0 0 0 0 100.00%
website/thaliawebsite/apps.py (no function) 9 0 0 0 0 100.00%
website/thaliawebsite/celery.py (no function) 6 0 0 0 0 100.00%
website/thaliawebsite/context_processors.py source_commit 1 0 0 0 0 100.00%
website/thaliawebsite/context_processors.py aprilfools 2 0 0 0 0 100.00%
website/thaliawebsite/context_processors.py lustrum_styling 1 0 0 0 0 100.00%
website/thaliawebsite/context_processors.py year_as_hex 2 0 0 0 0 100.00%
website/thaliawebsite/context_processors.py (no function) 6 0 0 0 0 100.00%
website/thaliawebsite/locale/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/locale/en/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/locale/en/formats.py (no function) 2 0 0 0 0 100.00%
website/thaliawebsite/management/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/management/commands/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/management/commands/dataminimisation.py Command.add_arguments 1 1 0 0 0 0.00%
website/thaliawebsite/management/commands/dataminimisation.py Command.handle 20 20 0 12 0 0.00%
website/thaliawebsite/management/commands/dataminimisation.py (no function) 11 11 0 0 0 0.00%
website/thaliawebsite/management/commands/migratemedia.py Command.handle 23 23 0 8 0 0.00%
website/thaliawebsite/management/commands/migratemedia.py Command._get_all_media_file 5 5 0 4 0 0.00%
website/thaliawebsite/management/commands/migratemedia.py Command._split_path_to_upload 3 3 0 0 0 0.00%
website/thaliawebsite/management/commands/migratemedia.py (no function) 10 10 0 0 0 0.00%
website/thaliawebsite/middleware.py RealIPMiddleware.__init__ 1 0 0 0 0 100.00%
website/thaliawebsite/middleware.py RealIPMiddleware.__call__ 3 1 0 2 1 60.00%
website/thaliawebsite/middleware.py (no function) 3 0 0 0 0 100.00%
website/thaliawebsite/sitemaps.py StaticViewSitemap.items 1 0 0 0 0 100.00%
website/thaliawebsite/sitemaps.py StaticViewSitemap.location 1 0 0 0 0 100.00%
website/thaliawebsite/sitemaps.py (no function) 5 0 0 0 0 100.00%
website/thaliawebsite/storage/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/storage/backend.py S3RenameMixin.rename 2 2 0 0 0 0.00%
website/thaliawebsite/storage/backend.py PublicS3Storage.url 4 4 0 2 0 0.00%
website/thaliawebsite/storage/backend.py PrivateS3Storage.url 4 4 0 2 0 0.00%
website/thaliawebsite/storage/backend.py FileSystemRenameMixin.rename 3 3 0 0 0 0.00%
website/thaliawebsite/storage/backend.py PublicFileSystemStorage.url 1 0 0 0 0 100.00%
website/thaliawebsite/storage/backend.py PrivateFileSystemStorage.url 2 0 0 0 0 100.00%
website/thaliawebsite/storage/backend.py (no function) 30 0 0 0 0 100.00%
website/thaliawebsite/tasks.py debug_task 1 1 0 0 0 0.00%
website/thaliawebsite/tasks.py data_minimisation 24 24 0 14 0 0.00%
website/thaliawebsite/tasks.py clean_up 2 2 0 0 0 0.00%
website/thaliawebsite/tasks.py clear_tokens 1 0 0 0 0 100.00%
website/thaliawebsite/tasks.py (no function) 22 0 0 0 0 100.00%
website/thaliawebsite/templatetags/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/templatetags/alert.py alert 3 1 0 2 1 60.00%
website/thaliawebsite/templatetags/alert.py (no function) 4 0 0 0 0 100.00%
website/thaliawebsite/templatetags/baseurl.py baseurl 1 0 0 0 0 100.00%
website/thaliawebsite/templatetags/baseurl.py (no function) 5 0 0 0 0 100.00%
website/thaliawebsite/templatetags/bleach_tags.py _allow_iframe_attrs 5 1 0 4 1 77.78%
website/thaliawebsite/templatetags/bleach_tags.py bleach 2 0 0 0 0 100.00%
website/thaliawebsite/templatetags/bleach_tags.py (no function) 10 0 0 0 0 100.00%
website/thaliawebsite/templatetags/fieldtype.py fieldtype 1 1 0 0 0 0.00%
website/thaliawebsite/templatetags/fieldtype.py (no function) 4 0 0 0 0 100.00%
website/thaliawebsite/templatetags/grid_item.py grid_item 1 0 0 0 0 100.00%
website/thaliawebsite/templatetags/grid_item.py (no function) 4 0 0 0 0 100.00%
website/thaliawebsite/templatetags/menu.py collect_menus 19 0 0 16 0 100.00%
website/thaliawebsite/templatetags/menu.py render_main_menu 14 0 0 10 1 95.83%
website/thaliawebsite/templatetags/menu.py collect_usermenu 17 0 0 14 0 100.00%
website/thaliawebsite/templatetags/menu.py render_user_menu 11 0 0 6 0 100.00%
website/thaliawebsite/templatetags/menu.py (no function) 13 0 0 0 0 100.00%
website/thaliawebsite/templatetags/pick_header_image.py pick_header_image 7 0 0 2 0 100.00%
website/thaliawebsite/templatetags/pick_header_image.py (no function) 9 0 0 0 0 100.00%
website/thaliawebsite/tests/__init__.py (no function) 0 0 0 0 0 100.00%
website/thaliawebsite/tests/test_celery.py CeleryTest.test_clear_tokens 2 0 0 0 0 100.00%
website/thaliawebsite/tests/test_celery.py (no function) 6 0 0 0 0 100.00%
website/thaliawebsite/tests/test_models.py create_models_test_class 8 0 0 4 0 100.00%
website/thaliawebsite/tests/test_models.py create_models_test_class.create_model_test_function 4 0 0 0 0 100.00%
website/thaliawebsite/tests/test_models.py create_models_test_class.create_model_test_function.str_function_is_overwritten_for 5 0 0 0 0 100.00%
website/thaliawebsite/tests/test_models.py (no function) 7 0 0 0 0 100.00%
website/thaliawebsite/tests/test_website.py load_tests 4 0 0 0 0 100.00%
website/thaliawebsite/tests/test_website.py SitemapTest.test_sitemap_success 2 0 0 0 0 100.00%
website/thaliawebsite/tests/test_website.py (no function) 9 0 0 0 0 100.00%
website/thaliawebsite/urls.py (no function) 35 0 0 0 0 100.00%
website/thaliawebsite/views.py TestCrashView.dispatch 3 3 0 2 0 0.00%
website/thaliawebsite/views.py PagedView.get_context_data 12 0 0 0 0 100.00%
website/thaliawebsite/views.py RateLimitedPasswordResetView.post 1 1 0 0 0 0.00%
website/thaliawebsite/views.py RateLimitedLoginView.post 1 1 0 0 0 0.00%
website/thaliawebsite/views.py LogoutView.get 1 1 0 0 0 0.00%
website/thaliawebsite/views.py rate_limited_view 1 1 0 0 0 0.00%
website/thaliawebsite/views.py admin_unauthorized_view 12 12 0 8 0 0.00%
website/thaliawebsite/views.py (no function) 31 0 0 0 0 100.00%
website/utils/__init__.py (no function) 0 0 0 0 0 100.00%
website/utils/admin.py _do_next 8 1 0 8 1 87.50%
website/utils/admin.py DoNextModelAdmin.response_add 2 0 0 0 0 100.00%
website/utils/admin.py DoNextModelAdmin.response_change 2 0 0 0 0 100.00%
website/utils/admin.py (no function) 8 0 0 0 0 100.00%
website/utils/countries.py (no function) 2 0 0 0 0 100.00%
website/utils/exception_filter.py ThaliaSafeExceptionReporterFilter.get_traceback_frame_variables 11 11 0 6 0 0.00%
website/utils/exception_filter.py (no function) 5 0 0 0 0 100.00%
website/utils/google_api.py MemoryCache.get 1 1 0 0 0 0.00%
website/utils/google_api.py MemoryCache.set 1 1 0 0 0 0.00%
website/utils/google_api.py get_directory_api 1 1 0 0 0 0.00%
website/utils/google_api.py get_groups_settings_api 1 1 0 0 0 0.00%
website/utils/google_api.py (no function) 10 0 0 0 0 100.00%
website/utils/management/__init__.py (no function) 0 0 0 0 0 100.00%
website/utils/management/commands/__init__.py (no function) 0 0 0 0 0 100.00%
website/utils/management/commands/createfixtures.py _generate_title 2 2 0 0 0 0.00%
website/utils/management/commands/createfixtures.py maintain_integrity 2 2 0 0 0 0.00%
website/utils/management/commands/createfixtures.py maintain_integrity.wrapper 8 8 0 2 0 0.00%
website/utils/management/commands/createfixtures.py get_event_to_register_for 5 5 0 6 0 0.00%
website/utils/management/commands/createfixtures.py Command.add_arguments 15 15 0 0 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_board 30 30 0 8 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_member_group 30 30 0 8 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_member_group_membership 10 10 0 2 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_event 36 36 0 8 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_partner 24 24 0 8 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_pizza 8 8 0 0 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_user 26 26 0 2 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_vacancy 14 14 0 2 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_vacancy_category 6 6 0 0 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_document 8 8 0 0 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_newsletter 30 30 0 6 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_course 17 17 0 8 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_exam 14 14 0 0 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_summary 13 13 0 0 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_event_registration 18 18 0 4 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_payment 21 21 0 8 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_photo_album 14 14 0 6 0 0.00%
website/utils/management/commands/createfixtures.py Command.create_photo 9 9 0 0 0 0.00%
website/utils/management/commands/createfixtures.py Command.handle 72 72 0 72 0 0.00%
website/utils/management/commands/createfixtures.py (no function) 72 72 0 0 0 0.00%
website/utils/management/commands/createreviewuser.py Command.add_arguments 2 2 0 0 0 0.00%
website/utils/management/commands/createreviewuser.py Command.handle 12 12 0 6 0 0.00%
website/utils/management/commands/createreviewuser.py (no function) 16 16 0 0 0 0.00%
website/utils/management/commands/createsuperuser.py Command.handle 100 100 0 54 0 0.00%
website/utils/management/commands/createsuperuser.py (no function) 16 16 0 0 0 0.00%
website/utils/management/commands/remove_unused_media.py get_file_fields 7 7 0 6 0 0.00%
website/utils/management/commands/remove_unused_media.py remove_empty_dirs 9 9 0 6 0 0.00%
website/utils/management/commands/remove_unused_media.py get_used_media 10 10 0 8 0 0.00%
website/utils/management/commands/remove_unused_media.py get_all_media 19 19 0 14 0 0.00%
website/utils/management/commands/remove_unused_media.py get_unused_media 3 3 0 0 0 0.00%
website/utils/management/commands/remove_unused_media.py Command.add_arguments 3 3 0 0 0 0.00%
website/utils/management/commands/remove_unused_media.py Command._show_files_to_delete 3 3 0 2 0 0.00%
website/utils/management/commands/remove_unused_media.py Command.handle 26 26 0 12 0 0.00%
website/utils/management/commands/remove_unused_media.py (no function) 18 18 0 0 0 0.00%
website/utils/media/__init__.py (no function) 0 0 0 0 0 100.00%
website/utils/media/processors.py process_upload 13 5 0 6 1 47.37%
website/utils/media/processors.py thumbnail 15 3 0 6 1 71.43%
website/utils/media/processors.py (no function) 4 0 0 0 0 100.00%
website/utils/media/services.py _generic_upload_to 2 2 0 0 0 0.00%
website/utils/media/services.py get_upload_to_function 1 0 0 0 0 100.00%
website/utils/media/services.py get_media_url 9 0 0 4 1 92.31%
website/utils/media/services.py get_thumbnail_url 8 1 0 8 4 68.75%
website/utils/media/services.py fetch_thumbnails 15 2 0 10 2 84.00%
website/utils/media/services.py (no function) 16 0 0 0 0 100.00%
website/utils/media/views.py get_thumb_modified_time 8 8 0 2 0 0.00%
website/utils/media/views.py _get_signature_info 7 3 0 2 1 55.56%
website/utils/media/views.py private_media 9 3 0 4 2 61.54%
website/utils/media/views.py (no function) 13 0 0 0 0 100.00%
website/utils/models/signals.py suspendingreceiver 4 0 0 0 0 100.00%
website/utils/models/signals.py suspendingreceiver.our_wrapper 2 0 0 0 0 100.00%
website/utils/models/signals.py suspendingreceiver.our_wrapper.fake_receiver 3 0 0 2 0 100.00%
website/utils/models/signals.py (no function) 4 0 0 0 0 100.00%
website/utils/snippets.py dict2obj 1 0 0 0 0 100.00%
website/utils/snippets.py strtobool 6 1 0 4 1 80.00%
website/utils/snippets.py datetime_to_lectureyear 6 0 0 4 0 100.00%
website/utils/snippets.py create_google_maps_url 10 2 0 4 2 71.43%
website/utils/snippets.py _extract_date 6 6 0 2 0 0.00%
website/utils/snippets.py extract_date_range 18 6 0 8 2 69.23%
website/utils/snippets.py overlaps 11 0 0 8 0 100.00%
website/utils/snippets.py send_email 6 0 0 2 0 100.00%
website/utils/snippets.py minimise_logentries_data 6 6 0 2 0 0.00%
website/utils/snippets.py (no function) 22 0 0 0 0 100.00%
website/utils/templatetags/__init__.py (no function) 0 0 0 0 0 100.00%
website/utils/templatetags/fullstatic.py FullStaticNode.url 4 0 0 2 1 83.33%
website/utils/templatetags/fullstatic.py do_static 1 0 0 0 0 100.00%
website/utils/templatetags/fullstatic.py (no function) 8 0 0 0 0 100.00%
website/utils/templatetags/google_map_url.py google_map_url 1 0 0 0 0 100.00%
website/utils/templatetags/google_map_url.py (no function) 5 0 0 0 0 100.00%
website/utils/templatetags/thumbnail.py thumbnail 1 1 0 0 0 0.00%
website/utils/templatetags/thumbnail.py (no function) 5 0 0 0 0 100.00%
website/utils/templatetags/urlparams.py urlparams 4 0 0 2 0 100.00%
website/utils/templatetags/urlparams.py (no function) 5 0 0 0 0 100.00%
website/utils/validators.py RangeValueValidator.select_error_message 24 15 0 18 4 30.95%
website/utils/validators.py RangeValueValidator.__init__ 5 0 0 0 0 100.00%
website/utils/validators.py RangeValueValidator.__call__ 12 12 0 16 0 0.00%
website/utils/validators.py (no function) 9 0 0 0 0 100.00%
Total   22140 4223 93 3222 287 76.39%

No items found using the specified filter.