Coverage report: 96%

Files Functions Classes

coverage.py v7.6.10, created at 2025-01-22 06:42 +0000

File class statements missing excluded coverage
src/app.py (no class) 50 50 0 0%
src/couchers/__init__.py (no class) 0 0 0 100%
src/couchers/config.py (no class) 46 22 0 52%
src/couchers/constants.py (no class) 15 0 0 100%
src/couchers/crypto.py (no class) 90 4 0 96%
src/couchers/db.py (no class) 104 26 0 75%
src/couchers/descriptor_pool.py (no class) 15 0 0 100%
src/couchers/email/__init__.py (no class) 22 0 0 100%
src/couchers/email/dev.py (no class) 9 0 0 100%
src/couchers/email/smtp.py (no class) 47 5 0 89%
src/couchers/errors.py (no class) 165 0 0 100%
src/couchers/helpers/__init__.py (no class) 0 0 0 100%
src/couchers/helpers/badges.py (no class) 18 0 0 100%
src/couchers/helpers/clusters.py (no class) 22 1 0 95%
src/couchers/helpers/geoip.py (no class) 20 12 0 40%
src/couchers/interceptors.py AuthValidatorInterceptor 43 0 0 100%
src/couchers/interceptors.py CookieInterceptor 14 2 0 86%
src/couchers/interceptors.py ManualAuthValidatorInterceptor 6 1 0 83%
src/couchers/interceptors.py OTelInterceptor 18 17 0 6%
src/couchers/interceptors.py SessionInterceptor 6 0 0 100%
src/couchers/interceptors.py TracingInterceptor 59 3 0 95%
src/couchers/interceptors.py ErrorSanitizationInterceptor 15 0 0 100%
src/couchers/interceptors.py (no class) 64 1 0 98%
src/couchers/jobs/__init__.py (no class) 0 0 0 100%
src/couchers/jobs/enqueue.py (no class) 7 0 0 100%
src/couchers/jobs/handlers.py (no class) 311 5 0 98%
src/couchers/jobs/worker.py (no class) 99 15 0 85%
src/couchers/materialized_views.py (no class) 54 0 0 100%
src/couchers/metrics.py (no class) 61 2 0 97%
src/couchers/models.py HostingStatus 0 0 0 100%
src/couchers/models.py MeetupStatus 0 0 0 100%
src/couchers/models.py SmokingLocation 0 0 0 100%
src/couchers/models.py SleepingArrangement 0 0 0 100%
src/couchers/models.py ParkingDetails 0 0 0 100%
src/couchers/models.py TimezoneArea 0 0 0 100%
src/couchers/models.py User 12 0 0 100%
src/couchers/models.py UserBadge 0 0 0 100%
src/couchers/models.py StrongVerificationAttemptStatus 0 0 0 100%
src/couchers/models.py PassportSex 0 0 0 100%
src/couchers/models.py StrongVerificationAttempt 8 0 0 100%
src/couchers/models.py ModNote 2 1 0 50%
src/couchers/models.py StrongVerificationCallbackEvent 0 0 0 100%
src/couchers/models.py DonationType 0 0 0 100%
src/couchers/models.py DonationInitiation 0 0 0 100%
src/couchers/models.py Invoice 0 0 0 100%
src/couchers/models.py LanguageFluency 0 0 0 100%
src/couchers/models.py LanguageAbility 0 0 0 100%
src/couchers/models.py RegionVisited 0 0 0 100%
src/couchers/models.py RegionLived 0 0 0 100%
src/couchers/models.py FriendStatus 0 0 0 100%
src/couchers/models.py FriendRelationship 0 0 0 100%
src/couchers/models.py ContributeOption 0 0 0 100%
src/couchers/models.py ContributorForm 2 0 0 100%
src/couchers/models.py SignupFlow 3 0 0 100%
src/couchers/models.py LoginToken 2 1 0 50%
src/couchers/models.py PasswordResetToken 2 1 0 50%
src/couchers/models.py AccountDeletionToken 2 1 0 50%
src/couchers/models.py UserActivity 0 0 0 100%
src/couchers/models.py UserSession 1 0 0 100%
src/couchers/models.py Conversation 1 1 0 0%
src/couchers/models.py GroupChat 1 1 0 0%
src/couchers/models.py GroupChatRole 0 0 0 100%
src/couchers/models.py GroupChatSubscription 7 1 0 86%
src/couchers/models.py MessageType 0 0 0 100%
src/couchers/models.py HostRequestStatus 0 0 0 100%
src/couchers/models.py Message 2 1 0 50%
src/couchers/models.py ContentReport 0 0 0 100%
src/couchers/models.py Email 0 0 0 100%
src/couchers/models.py SMS 0 0 0 100%
src/couchers/models.py HostRequest 3 1 0 67%
src/couchers/models.py ReferenceType 0 0 0 100%
src/couchers/models.py Reference 1 0 0 100%
src/couchers/models.py InitiatedUpload 1 0 0 100%
src/couchers/models.py Upload 3 0 0 100%
src/couchers/models.py Node 0 0 0 100%
src/couchers/models.py Cluster 1 0 0 100%
src/couchers/models.py NodeClusterAssociation 0 0 0 100%
src/couchers/models.py ClusterRole 0 0 0 100%
src/couchers/models.py ClusterSubscription 0 0 0 100%
src/couchers/models.py ClusterPageAssociation 0 0 0 100%
src/couchers/models.py PageType 0 0 0 100%
src/couchers/models.py Page 1 1 0 0%
src/couchers/models.py PageVersion 2 1 0 50%
src/couchers/models.py ClusterEventAssociation 0 0 0 100%
src/couchers/models.py Event 0 0 0 100%
src/couchers/models.py EventOccurrence 5 0 0 100%
src/couchers/models.py EventSubscription 0 0 0 100%
src/couchers/models.py EventOrganizer 0 0 0 100%
src/couchers/models.py AttendeeStatus 0 0 0 100%
src/couchers/models.py EventOccurrenceAttendee 0 0 0 100%
src/couchers/models.py EventCommunityInviteRequest 0 0 0 100%
src/couchers/models.py ClusterDiscussionAssociation 0 0 0 100%
src/couchers/models.py Discussion 0 0 0 100%
src/couchers/models.py DiscussionSubscription 0 0 0 100%
src/couchers/models.py Thread 0 0 0 100%
src/couchers/models.py Comment 0 0 0 100%
src/couchers/models.py Reply 0 0 0 100%
src/couchers/models.py BackgroundJobState 0 0 0 100%
src/couchers/models.py BackgroundJob 2 0 0 100%
src/couchers/models.py NotificationDeliveryType 0 0 0 100%
src/couchers/models.py NotificationTopicAction 7 1 0 86%
src/couchers/models.py NotificationPreference 0 0 0 100%
src/couchers/models.py Notification 2 0 0 100%
src/couchers/models.py NotificationDelivery 0 0 0 100%
src/couchers/models.py PushNotificationSubscription 0 0 0 100%
src/couchers/models.py PushNotificationDeliveryAttempt 0 0 0 100%
src/couchers/models.py Language 0 0 0 100%
src/couchers/models.py Region 0 0 0 100%
src/couchers/models.py UserBlock 0 0 0 100%
src/couchers/models.py APICall 0 0 0 100%
src/couchers/models.py AccountDeletionReason 0 0 0 100%
src/couchers/models.py (no class) 1001 0 0 100%
src/couchers/notifications/__init__.py (no class) 0 0 0 100%
src/couchers/notifications/background.py (no class) 125 37 0 70%
src/couchers/notifications/notify.py (no class) 14 0 0 100%
src/couchers/notifications/push.py (no class) 21 1 0 95%
src/couchers/notifications/push_api.py (no class) 35 16 0 54%
src/couchers/notifications/render.py RenderedNotification 0 0 0 100%
src/couchers/notifications/render.py (no class) 196 31 0 84%
src/couchers/notifications/settings.py PreferenceNotUserEditableError 0 0 0 100%
src/couchers/notifications/settings.py (no class) 55 4 0 93%
src/couchers/notifications/unsubscribe.py (no class) 53 13 0 75%
src/couchers/notifications/utils.py (no class) 2 0 0 100%
src/couchers/phone/check.py (no class) 8 1 0 88%
src/couchers/phone/sms.py (no class) 26 0 0 100%
src/couchers/resources.py (no class) 69 4 0 94%
src/couchers/server.py (no class) 62 0 0 100%
src/couchers/servicers/__init__.py (no class) 0 0 0 100%
src/couchers/servicers/account.py Account 149 5 0 97%
src/couchers/servicers/account.py Iris 18 2 0 89%
src/couchers/servicers/account.py (no class) 78 5 0 94%
src/couchers/servicers/admin.py Admin 200 51 0 74%
src/couchers/servicers/admin.py (no class) 62 0 0 100%
src/couchers/servicers/api.py API 260 11 0 96%
src/couchers/servicers/api.py (no class) 109 1 0 99%
src/couchers/servicers/auth.py Auth 184 12 0 93%
src/couchers/servicers/auth.py (no class) 63 1 0 98%
src/couchers/servicers/blocking.py Blocking 22 2 0 91%
src/couchers/servicers/blocking.py (no class) 15 0 0 100%
src/couchers/servicers/bugs.py Bugs 22 0 0 100%
src/couchers/servicers/bugs.py (no class) 16 0 0 100%
src/couchers/servicers/communities.py Communities 119 28 0 76%
src/couchers/servicers/communities.py (no class) 44 0 0 100%
src/couchers/servicers/conversations.py Conversations 173 22 0 87%
src/couchers/servicers/conversations.py (no class) 78 1 0 99%
src/couchers/servicers/discussions.py Discussions 20 3 0 85%
src/couchers/servicers/discussions.py (no class) 19 0 0 100%
src/couchers/servicers/donations.py Donations 15 2 0 87%
src/couchers/servicers/donations.py Stripe 17 0 0 100%
src/couchers/servicers/donations.py (no class) 16 0 0 100%
src/couchers/servicers/events.py Events 347 46 0 87%
src/couchers/servicers/events.py (no class) 147 38 0 74%
src/couchers/servicers/gis.py GIS 10 7 0 30%
src/couchers/servicers/gis.py (no class) 21 0 0 100%
src/couchers/servicers/groups.py Groups 72 22 0 69%
src/couchers/servicers/groups.py (no class) 37 0 0 100%
src/couchers/servicers/jail.py Jail 31 1 0 97%
src/couchers/servicers/jail.py (no class) 26 0 0 100%
src/couchers/servicers/media.py Media 7 1 0 86%
src/couchers/servicers/media.py (no class) 16 0 0 100%
src/couchers/servicers/notifications.py Notifications 40 5 0 88%
src/couchers/servicers/notifications.py (no class) 27 0 0 100%
src/couchers/servicers/pages.py Pages 107 8 0 93%
src/couchers/servicers/pages.py (no class) 41 0 0 100%
src/couchers/servicers/references.py References 81 2 0 98%
src/couchers/servicers/references.py (no class) 45 2 0 96%
src/couchers/servicers/reporting.py Reporting 8 0 0 100%
src/couchers/servicers/reporting.py (no class) 9 0 0 100%
src/couchers/servicers/requests.py Requests 223 18 0 92%
src/couchers/servicers/requests.py (no class) 45 0 0 100%
src/couchers/servicers/resources.py Resources 5 1 0 80%
src/couchers/servicers/resources.py (no class) 10 0 0 100%
src/couchers/servicers/search.py Search 138 37 0 73%
src/couchers/servicers/search.py (no class) 103 4 0 96%
src/couchers/servicers/threads.py Threads 30 1 0 97%
src/couchers/servicers/threads.py (no class) 21 0 0 100%
src/couchers/sql.py CouchersSelect 22 1 0 95%
src/couchers/sql.py (no class) 18 0 0 100%
src/couchers/tasks.py (no class) 61 0 0 100%
src/couchers/templates/__init__.py (no class) 0 0 0 100%
src/couchers/templates/v2.py (no class) 63 1 0 98%
src/couchers/tracing.py (no class) 18 7 0 61%
src/couchers/urls.py (no class) 64 3 0 95%
src/couchers/utils.py (no class) 128 7 0 95%
src/tests/test_account.py (no class) 464 0 0 100%
src/tests/test_admin.py (no class) 337 0 0 100%
src/tests/test_api.py (no class) 705 0 0 100%
src/tests/test_app.py (no class) 13 0 0 100%
src/tests/test_auth.py (no class) 488 0 0 100%
src/tests/test_bg_jobs.py test_service_jobs.HitSleep 0 0 0 100%
src/tests/test_bg_jobs.py test_scheduler.EndOfTime 0 0 0 100%
src/tests/test_bg_jobs.py (no class) 418 0 0 100%
src/tests/test_blocking.py (no class) 74 0 0 100%
src/tests/test_bugs.py test_bugs.dud_post._PostReturn 1 0 0 100%
src/tests/test_bugs.py test_bugs_with_user.dud_post._PostReturn 1 0 0 100%
src/tests/test_bugs.py test_bugs_fails_on_network_error.dud_post._PostReturn 0 0 0 100%
src/tests/test_bugs.py (no class) 81 0 0 100%
src/tests/test_communities.py TestCommunities 307 0 0 100%
src/tests/test_communities.py (no class) 235 0 0 100%
src/tests/test_conversations.py (no class) 935 0 0 100%
src/tests/test_crypto.py (no class) 17 0 0 100%
src/tests/test_db.py (no class) 111 0 0 100%
src/tests/test_discussions.py (no class) 71 0 0 100%
src/tests/test_donations.py (no class) 107 0 0 100%
src/tests/test_dummy_data.py (no class) 9 0 0 100%
src/tests/test_email.py (no class) 234 0 0 100%
src/tests/test_events.py (no class) 1159 0 0 100%
src/tests/test_fixtures.py generate_user._DummyContext 1 0 0 100%
src/tests/test_fixtures.py CookieMetadataPlugin 2 0 0 100%
src/tests/test_fixtures.py auth_api_session._MetadataKeeperInterceptor 5 0 0 100%
src/tests/test_fixtures.py FakeRpcError 4 0 0 100%
src/tests/test_fixtures.py FakeChannel 17 0 0 100%
src/tests/test_fixtures.py EmailData 0 0 0 100%
src/tests/test_fixtures.py push_collector.Push 7 4 0 43%
src/tests/test_fixtures.py push_collector.PushCollector 10 0 0 100%
src/tests/test_fixtures.py (no class) 462 4 0 99%
src/tests/test_gis.py TestGIS 18 0 0 100%
src/tests/test_gis.py (no class) 14 0 0 100%
src/tests/test_groups.py TestGroups 186 0 0 100%
src/tests/test_groups.py (no class) 69 0 0 100%
src/tests/test_interceptors.py test_logging_interceptor_raise_custom._TestingException 0 0 0 100%
src/tests/test_interceptors.py (no class) 276 0 0 100%
src/tests/test_jail.py (no class) 222 0 0 100%
src/tests/test_media.py (no class) 31 0 0 100%
src/tests/test_model_constraints.py (no class) 64 0 0 100%
src/tests/test_models.py (no class) 26 0 0 100%
src/tests/test_notifications.py (no class) 193 3 0 98%
src/tests/test_pages.py (no class) 507 0 0 100%
src/tests/test_references.py (no class) 463 0 0 100%
src/tests/test_reporting.py (no class) 31 0 0 100%
src/tests/test_requests.py (no class) 507 0 0 100%
src/tests/test_resources.py (no class) 32 0 0 100%
src/tests/test_search.py (no class) 235 0 0 100%
src/tests/test_strong_verification.py (no class) 371 1 0 99%
src/tests/test_threads.py (no class) 86 0 0 100%
src/tests/test_utils.py (no class) 23 0 0 100%
src/tests/test_verification.py (no class) 169 0 0 100%
src/tests/test_visible_users.py _FakeContext 1 0 0 100%
src/tests/test_visible_users.py (no class) 44 0 0 100%
Total   16683 655 0 96%

No items found using the specified filter.