| src/app.py |
log_unhandled_exception |
4 |
4 |
0 |
0% |
| src/app.py |
(no function) |
54 |
54 |
0 |
0% |
| src/couchers/__init__.py |
(no function) |
0 |
0 |
0 |
100% |
| src/couchers/config.py |
check_config |
21 |
21 |
0 |
0% |
| src/couchers/config.py |
make_config |
28 |
6 |
0 |
79% |
| src/couchers/config.py |
(no function) |
7 |
0 |
0 |
100% |
| src/couchers/constants.py |
(no function) |
44 |
0 |
0 |
100% |
| src/couchers/context.py |
NonInteractiveAbortException.__init__ |
3 |
3 |
0 |
0% |
| src/couchers/context.py |
NonInteractiveAbortException.code |
1 |
1 |
0 |
0% |
| src/couchers/context.py |
NonInteractiveAbortException.details |
1 |
1 |
0 |
0% |
| src/couchers/context.py |
NonInteractiveAbortException.__str__ |
1 |
1 |
0 |
0% |
| src/couchers/context.py |
CouchersContext.__init__ |
15 |
2 |
0 |
87% |
| src/couchers/context.py |
CouchersContext.__verify_interactive |
2 |
1 |
0 |
50% |
| src/couchers/context.py |
CouchersContext.__verify_logged_in |
2 |
1 |
0 |
50% |
| src/couchers/context.py |
CouchersContext.is_logged_in |
1 |
0 |
0 |
100% |
| src/couchers/context.py |
CouchersContext.get_localized_string |
1 |
0 |
0 |
100% |
| src/couchers/context.py |
CouchersContext.abort |
4 |
1 |
0 |
75% |
| src/couchers/context.py |
CouchersContext.abort_with_error_code |
5 |
1 |
0 |
80% |
| src/couchers/context.py |
CouchersContext.set_cookies |
2 |
0 |
0 |
100% |
| src/couchers/context.py |
CouchersContext._send_cookies |
2 |
0 |
0 |
100% |
| src/couchers/context.py |
CouchersContext.headers |
2 |
0 |
0 |
100% |
| src/couchers/context.py |
CouchersContext.user_id |
2 |
0 |
0 |
100% |
| src/couchers/context.py |
CouchersContext.is_api_key |
2 |
2 |
0 |
0% |
| src/couchers/context.py |
CouchersContext.token |
3 |
0 |
0 |
100% |
| src/couchers/context.py |
CouchersContext.ui_language_preference |
1 |
1 |
0 |
0% |
| src/couchers/context.py |
make_interactive_context |
1 |
0 |
0 |
100% |
| src/couchers/context.py |
make_one_off_interactive_user_context |
1 |
0 |
0 |
100% |
| src/couchers/context.py |
make_media_context |
1 |
0 |
0 |
100% |
| src/couchers/context.py |
make_background_user_context |
1 |
0 |
0 |
100% |
| src/couchers/context.py |
(no function) |
34 |
0 |
0 |
100% |
| src/couchers/crypto.py |
b64encode |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
b64decode |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
b64encode_unpadded |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
b64decode_unpadded |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
_urlsafe_random_b64 |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
urlsafe_secure_token |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
cookiesafe_secure_token |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
hash_password |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
verify_password |
5 |
2 |
0 |
60% |
| src/couchers/crypto.py |
random_hex |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
secure_compare |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
generate_hash_signature |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
simple_hash_signature |
4 |
1 |
0 |
75% |
| src/couchers/crypto.py |
verify_hash_signature |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
generate_random_5digit_string |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
verify_token |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
stable_secure_uniform |
6 |
0 |
0 |
100% |
| src/couchers/crypto.py |
get_secret |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
aead_generate_nonce |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
aead_generate_key |
1 |
1 |
0 |
0% |
| src/couchers/crypto.py |
aead_encrypt |
4 |
0 |
0 |
100% |
| src/couchers/crypto.py |
aead_decrypt |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
simple_encrypt |
3 |
0 |
0 |
100% |
| src/couchers/crypto.py |
simple_decrypt |
3 |
0 |
0 |
100% |
| src/couchers/crypto.py |
encrypt_page_token |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
decrypt_page_token |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
asym_encrypt |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
asym_decrypt |
1 |
0 |
0 |
100% |
| src/couchers/crypto.py |
generate_asym_keypair |
2 |
0 |
0 |
100% |
| src/couchers/crypto.py |
generate_invite_code |
2 |
0 |
0 |
100% |
| src/couchers/crypto.py |
(no function) |
50 |
0 |
0 |
100% |
| src/couchers/db.py |
apply_migrations |
8 |
0 |
0 |
100% |
| src/couchers/db.py |
_get_base_engine |
1 |
0 |
0 |
100% |
| src/couchers/db.py |
session_scope |
23 |
10 |
0 |
57% |
| src/couchers/db.py |
worker_repeatable_read_session_scope |
23 |
10 |
0 |
57% |
| src/couchers/db.py |
db_post_fork |
1 |
1 |
0 |
0% |
| src/couchers/db.py |
are_friends |
1 |
0 |
0 |
100% |
| src/couchers/db.py |
get_parent_node_at_location |
1 |
0 |
0 |
100% |
| src/couchers/db.py |
_get_node_parents_recursive_cte_subquery |
2 |
0 |
0 |
100% |
| src/couchers/db.py |
get_node_parents_recursively |
2 |
0 |
0 |
100% |
| src/couchers/db.py |
_can_moderate_any_cluster |
2 |
2 |
0 |
0% |
| src/couchers/db.py |
can_moderate_node |
3 |
0 |
0 |
100% |
| src/couchers/db.py |
can_moderate_at |
2 |
0 |
0 |
100% |
| src/couchers/db.py |
is_user_in_node_geography |
2 |
0 |
0 |
100% |
| src/couchers/db.py |
timezone_at_coordinate |
4 |
4 |
0 |
0% |
| src/couchers/db.py |
(no function) |
41 |
0 |
0 |
100% |
| src/couchers/descriptor_pool.py |
get_descriptors_pb |
2 |
0 |
0 |
100% |
| src/couchers/descriptor_pool.py |
get_descriptor_pool |
6 |
0 |
0 |
100% |
| src/couchers/descriptor_pool.py |
(no function) |
7 |
0 |
0 |
100% |
| src/couchers/email/__init__.py |
_queue_email |
2 |
0 |
0 |
100% |
| src/couchers/email/__init__.py |
queue_email |
1 |
0 |
0 |
100% |
| src/couchers/email/__init__.py |
enqueue_system_email |
7 |
0 |
0 |
100% |
| src/couchers/email/__init__.py |
(no function) |
16 |
0 |
0 |
100% |
| src/couchers/email/dev.py |
print_dev_email |
4 |
0 |
0 |
100% |
| src/couchers/email/dev.py |
(no function) |
5 |
0 |
0 |
100% |
| src/couchers/email/smtp.py |
make_cid |
3 |
0 |
0 |
100% |
| src/couchers/email/smtp.py |
send_smtp_email |
34 |
5 |
0 |
85% |
| src/couchers/email/smtp.py |
(no function) |
12 |
0 |
0 |
100% |
| src/couchers/experimentation.py |
setup_experimentation |
18 |
18 |
0 |
0% |
| src/couchers/experimentation.py |
_shutdown_experimentation |
6 |
6 |
0 |
0% |
| src/couchers/experimentation.py |
_check_initialized |
2 |
1 |
0 |
50% |
| src/couchers/experimentation.py |
_get_statsig_user |
3 |
3 |
0 |
0% |
| src/couchers/experimentation.py |
check_gate |
6 |
3 |
0 |
50% |
| src/couchers/experimentation.py |
get_experiment |
5 |
5 |
0 |
0% |
| src/couchers/experimentation.py |
get_dynamic_config |
5 |
5 |
0 |
0% |
| src/couchers/experimentation.py |
log_event |
4 |
4 |
0 |
0% |
| src/couchers/experimentation.py |
(no function) |
16 |
0 |
2 |
100% |
| src/couchers/helpers/__init__.py |
(no function) |
0 |
0 |
0 |
100% |
| src/couchers/helpers/badges.py |
user_add_badge |
7 |
0 |
0 |
100% |
| src/couchers/helpers/badges.py |
user_remove_badge |
6 |
0 |
0 |
100% |
| src/couchers/helpers/badges.py |
(no function) |
9 |
0 |
0 |
100% |
| src/couchers/helpers/clusters.py |
create_node |
4 |
0 |
0 |
100% |
| src/couchers/helpers/clusters.py |
create_cluster |
12 |
1 |
0 |
92% |
| src/couchers/helpers/clusters.py |
(no function) |
8 |
0 |
0 |
100% |
| src/couchers/helpers/geoip.py |
geoip_approximate_location |
15 |
13 |
0 |
13% |
| src/couchers/helpers/geoip.py |
geoip_asn |
18 |
18 |
0 |
0% |
| src/couchers/helpers/geoip.py |
(no function) |
8 |
0 |
0 |
100% |
| src/couchers/helpers/postal_verification.py |
generate_postal_verification_code |
1 |
0 |
0 |
100% |
| src/couchers/helpers/postal_verification.py |
has_postal_verification |
1 |
0 |
0 |
100% |
| src/couchers/helpers/postal_verification.py |
(no function) |
9 |
0 |
0 |
100% |
| src/couchers/helpers/strong_verification.py |
has_strong_verification |
5 |
0 |
0 |
100% |
| src/couchers/helpers/strong_verification.py |
get_strong_verification_fields |
13 |
0 |
0 |
100% |
| src/couchers/helpers/strong_verification.py |
(no function) |
6 |
0 |
0 |
100% |
| src/couchers/i18n/__init__.py |
(no function) |
0 |
0 |
0 |
100% |
| src/couchers/i18n/constants.py |
(no function) |
2 |
0 |
0 |
100% |
| src/couchers/i18n/i18n.py |
MissingTranslationError.__init__ |
4 |
0 |
0 |
100% |
| src/couchers/i18n/i18n.py |
get_translations |
36 |
3 |
0 |
92% |
| src/couchers/i18n/i18n.py |
get_raw_translation_string |
11 |
0 |
0 |
100% |
| src/couchers/i18n/i18n.py |
(no function) |
9 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
_binned_now |
1 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
_try_get_and_update_user_details |
16 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
abort_handler |
2 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
abort_handler.f |
1 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
unauthenticated_handler |
1 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
_sanitized_bytes |
6 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
_sanitized_bytes._sanitize_message |
11 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
_store_log |
10 |
2 |
0 |
80% |
| src/couchers/interceptors.py |
CouchersMiddlewareInterceptor.__init__ |
1 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
CouchersMiddlewareInterceptor.intercept_service |
42 |
2 |
0 |
95% |
| src/couchers/interceptors.py |
CouchersMiddlewareInterceptor.intercept_service.function_without_couchers_stuff |
32 |
2 |
0 |
94% |
| src/couchers/interceptors.py |
MediaInterceptor.__init__ |
1 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
MediaInterceptor.intercept_service |
12 |
3 |
0 |
75% |
| src/couchers/interceptors.py |
MediaInterceptor.intercept_service.function_without_session |
2 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
OTelInterceptor.__init__ |
1 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
OTelInterceptor.intercept_service |
11 |
11 |
0 |
0% |
| src/couchers/interceptors.py |
OTelInterceptor.intercept_service.tracing_function |
10 |
10 |
0 |
0% |
| src/couchers/interceptors.py |
ErrorSanitizationInterceptor.intercept_service |
8 |
2 |
0 |
75% |
| src/couchers/interceptors.py |
ErrorSanitizationInterceptor.intercept_service.sanitizing_function |
11 |
0 |
0 |
100% |
| src/couchers/interceptors.py |
(no function) |
53 |
0 |
0 |
100% |
| src/couchers/jobs/__init__.py |
(no function) |
0 |
0 |
0 |
100% |
| src/couchers/jobs/enqueue.py |
queue_job |
1 |
0 |
0 |
100% |
| src/couchers/jobs/enqueue.py |
(no function) |
6 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
send_email |
5 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
purge_login_tokens |
3 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
purge_password_reset_tokens |
3 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
purge_account_deletion_tokens |
3 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
send_message_notifications |
13 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
send_message_notifications.format_title |
3 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
send_request_notifications |
15 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
send_onboarding_emails |
14 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
send_reference_reminders |
19 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
send_host_request_reminders |
9 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
add_users_to_email_list |
19 |
3 |
0 |
84% |
| src/couchers/jobs/handlers.py |
enforce_community_membership |
1 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
update_recommendation_scores |
60 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
update_recommendation_scores.poor_man_gaussian |
2 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
update_recommendation_scores.int_ |
1 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
update_recommendation_scores.float_ |
1 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
update_badges |
11 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
update_badges.update_badge |
9 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
finalize_strong_verification |
46 |
2 |
0 |
96% |
| src/couchers/jobs/handlers.py |
send_activeness_probes |
29 |
1 |
0 |
97% |
| src/couchers/jobs/handlers.py |
update_randomized_locations |
10 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
update_randomized_locations.gen_randomized_coords |
7 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
send_event_reminders |
10 |
10 |
0 |
0% |
| src/couchers/jobs/handlers.py |
check_expo_push_receipts |
28 |
2 |
0 |
93% |
| src/couchers/jobs/handlers.py |
send_postal_verification_postcard |
13 |
2 |
0 |
85% |
| src/couchers/jobs/handlers.py |
check_database_consistency |
52 |
19 |
0 |
63% |
| src/couchers/jobs/handlers.py |
auto_approve_moderation_queue |
12 |
0 |
0 |
100% |
| src/couchers/jobs/handlers.py |
(no function) |
121 |
0 |
0 |
100% |
| src/couchers/jobs/worker.py |
process_job |
42 |
4 |
0 |
90% |
| src/couchers/jobs/worker.py |
service_jobs |
3 |
0 |
0 |
100% |
| src/couchers/jobs/worker.py |
_run_job_and_schedule |
5 |
0 |
0 |
100% |
| src/couchers/jobs/worker.py |
run_scheduler |
4 |
0 |
0 |
100% |
| src/couchers/jobs/worker.py |
_run_forever |
10 |
10 |
0 |
0% |
| src/couchers/jobs/worker.py |
start_jobs_scheduler |
3 |
3 |
0 |
0% |
| src/couchers/jobs/worker.py |
start_jobs_worker |
3 |
3 |
0 |
0% |
| src/couchers/jobs/worker.py |
(no function) |
39 |
0 |
0 |
100% |
| src/couchers/materialized_views.py |
create_materialized_view_with_different_ddl |
6 |
0 |
0 |
100% |
| src/couchers/materialized_views.py |
create_materialized_view_with_different_ddl.create_indexes |
2 |
0 |
0 |
100% |
| src/couchers/materialized_views.py |
make_lite_users_selectable |
5 |
0 |
0 |
100% |
| src/couchers/materialized_views.py |
make_clustered_users_selectable |
9 |
0 |
0 |
100% |
| src/couchers/materialized_views.py |
float_ |
1 |
1 |
0 |
0% |
| src/couchers/materialized_views.py |
refresh_materialized_views |
6 |
0 |
0 |
100% |
| src/couchers/materialized_views.py |
refresh_materialized_views_rapid |
3 |
0 |
0 |
100% |
| src/couchers/materialized_views.py |
(no function) |
58 |
0 |
0 |
100% |
| src/couchers/metrics.py |
observe_in_jobs_duration_histogram |
1 |
0 |
0 |
100% |
| src/couchers/metrics.py |
observe_in_servicer_duration_histogram |
1 |
0 |
0 |
100% |
| src/couchers/metrics.py |
_make_gauge_from_query |
4 |
0 |
0 |
100% |
| src/couchers/metrics.py |
_make_gauge_from_query.f |
3 |
0 |
0 |
100% |
| src/couchers/metrics.py |
observe_moderation_action |
1 |
0 |
0 |
100% |
| src/couchers/metrics.py |
observe_moderation_visibility_transition |
1 |
0 |
0 |
100% |
| src/couchers/metrics.py |
observe_moderation_queue_item_created |
1 |
0 |
0 |
100% |
| src/couchers/metrics.py |
observe_moderation_queue_item_resolved |
1 |
0 |
0 |
100% |
| src/couchers/metrics.py |
observe_moderation_queue_resolution_time |
1 |
0 |
0 |
100% |
| src/couchers/metrics.py |
create_prometheus_server |
6 |
0 |
0 |
100% |
| src/couchers/metrics.py |
create_prometheus_server.app |
5 |
0 |
0 |
100% |
| src/couchers/metrics.py |
(no function) |
79 |
0 |
0 |
100% |
| src/couchers/migrations/env.py |
include_name |
7 |
7 |
0 |
0% |
| src/couchers/migrations/env.py |
run_migrations_offline |
4 |
4 |
0 |
0% |
| src/couchers/migrations/env.py |
run_migrations_online |
5 |
0 |
0 |
100% |
| src/couchers/migrations/env.py |
(no function) |
22 |
4 |
0 |
82% |
| src/couchers/models/__init__.py |
(no function) |
20 |
0 |
0 |
100% |
| src/couchers/models/activeness_probe.py |
ActivenessProbe.is_pending |
1 |
0 |
0 |
100% |
| src/couchers/models/activeness_probe.py |
(no function) |
24 |
0 |
2 |
100% |
| src/couchers/models/auth.py |
UserSession.is_valid |
1 |
0 |
0 |
100% |
| src/couchers/models/auth.py |
LoginToken.is_valid |
1 |
0 |
0 |
100% |
| src/couchers/models/auth.py |
LoginToken.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/auth.py |
PasswordResetToken.is_valid |
1 |
0 |
0 |
100% |
| src/couchers/models/auth.py |
PasswordResetToken.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/auth.py |
(no function) |
45 |
0 |
2 |
100% |
| src/couchers/models/background_jobs.py |
BackgroundJob.ready_for_retry |
1 |
0 |
0 |
100% |
| src/couchers/models/background_jobs.py |
BackgroundJob.__repr__ |
1 |
0 |
0 |
100% |
| src/couchers/models/background_jobs.py |
(no function) |
29 |
0 |
0 |
100% |
| src/couchers/models/base.py |
(no function) |
9 |
0 |
0 |
100% |
| src/couchers/models/clusters.py |
Cluster.is_leaf |
1 |
0 |
0 |
100% |
| src/couchers/models/clusters.py |
Page.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/clusters.py |
PageVersion.coordinates |
1 |
0 |
0 |
100% |
| src/couchers/models/clusters.py |
PageVersion.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/clusters.py |
(no function) |
106 |
0 |
0 |
100% |
| src/couchers/models/conversations.py |
Conversation.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/conversations.py |
GroupChat.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/conversations.py |
GroupChatSubscription.muted_display |
5 |
0 |
0 |
100% |
| src/couchers/models/conversations.py |
GroupChatSubscription.is_muted |
1 |
0 |
0 |
100% |
| src/couchers/models/conversations.py |
GroupChatSubscription.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/conversations.py |
Message.is_normal_message |
1 |
0 |
0 |
100% |
| src/couchers/models/conversations.py |
Message.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/conversations.py |
(no function) |
73 |
0 |
2 |
100% |
| src/couchers/models/discussions.py |
(no function) |
59 |
0 |
0 |
100% |
| src/couchers/models/donations.py |
(no function) |
32 |
0 |
2 |
100% |
| src/couchers/models/events.py |
EventOccurrence.coordinates |
1 |
0 |
0 |
100% |
| src/couchers/models/events.py |
EventOccurrence.start_time |
1 |
0 |
0 |
100% |
| src/couchers/models/events.py |
EventOccurrence.start_time |
1 |
0 |
0 |
100% |
| src/couchers/models/events.py |
EventOccurrence.end_time |
1 |
0 |
0 |
100% |
| src/couchers/models/events.py |
EventOccurrence.end_time |
1 |
0 |
0 |
100% |
| src/couchers/models/events.py |
(no function) |
113 |
0 |
0 |
100% |
| src/couchers/models/host_requests.py |
HostRequest.can_write_reference |
1 |
0 |
0 |
100% |
| src/couchers/models/host_requests.py |
HostRequest.can_write_reference_expr |
1 |
1 |
0 |
0% |
| src/couchers/models/host_requests.py |
HostRequest.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/host_requests.py |
(no function) |
69 |
0 |
4 |
100% |
| src/couchers/models/logging.py |
(no function) |
25 |
0 |
0 |
100% |
| src/couchers/models/mod_note.py |
ModNote.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/mod_note.py |
ModNote.is_pending |
1 |
0 |
0 |
100% |
| src/couchers/models/mod_note.py |
(no function) |
20 |
0 |
2 |
100% |
| src/couchers/models/moderation.py |
ModerationState.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/moderation.py |
ModerationQueueItem.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/moderation.py |
ModerationLog.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/moderation.py |
(no function) |
59 |
0 |
2 |
100% |
| src/couchers/models/notifications.py |
NotificationTopicAction.__init__ |
4 |
0 |
0 |
100% |
| src/couchers/models/notifications.py |
NotificationTopicAction.unpack |
1 |
0 |
0 |
100% |
| src/couchers/models/notifications.py |
NotificationTopicAction.display |
1 |
0 |
0 |
100% |
| src/couchers/models/notifications.py |
NotificationTopicAction.__str__ |
1 |
1 |
0 |
0% |
| src/couchers/models/notifications.py |
Notification.topic |
1 |
0 |
0 |
100% |
| src/couchers/models/notifications.py |
Notification.action |
1 |
0 |
0 |
100% |
| src/couchers/models/notifications.py |
(no function) |
155 |
0 |
0 |
100% |
| src/couchers/models/postal_verification.py |
PostalVerificationAttempt.is_valid |
1 |
1 |
0 |
0% |
| src/couchers/models/postal_verification.py |
PostalVerificationAttempt.is_valid |
1 |
0 |
0 |
100% |
| src/couchers/models/postal_verification.py |
(no function) |
39 |
0 |
2 |
100% |
| src/couchers/models/rest.py |
ContributorForm.is_filled |
1 |
0 |
0 |
100% |
| src/couchers/models/rest.py |
ContributorForm.should_notify |
1 |
0 |
0 |
100% |
| src/couchers/models/rest.py |
SignupFlow.token_is_valid |
1 |
0 |
0 |
100% |
| src/couchers/models/rest.py |
SignupFlow.account_is_filled |
1 |
0 |
0 |
100% |
| src/couchers/models/rest.py |
SignupFlow.is_completed |
1 |
0 |
0 |
100% |
| src/couchers/models/rest.py |
AccountDeletionToken.is_valid |
1 |
0 |
0 |
100% |
| src/couchers/models/rest.py |
AccountDeletionToken.__repr__ |
1 |
1 |
0 |
0% |
| src/couchers/models/rest.py |
Reference.should_report |
1 |
0 |
0 |
100% |
| src/couchers/models/rest.py |
(no function) |
241 |
0 |
0 |
100% |
| src/couchers/models/static.py |
(no function) |
18 |
0 |
0 |
100% |
| src/couchers/models/uploads.py |
InitiatedUpload.is_valid |
1 |
0 |
0 |
100% |
| src/couchers/models/uploads.py |
Upload._url |
1 |
0 |
0 |
100% |
| src/couchers/models/uploads.py |
Upload.thumbnail_url |
1 |
0 |
0 |
100% |
| src/couchers/models/uploads.py |
Upload.full_url |
1 |
0 |
0 |
100% |
| src/couchers/models/uploads.py |
(no function) |
47 |
0 |
2 |
100% |
| src/couchers/models/users.py |
User.has_completed_profile |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.has_completed_profile |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.has_completed_my_home |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.has_completed_my_home |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.jailed_missing_tos |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.jailed_missing_community_guidelines |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.jailed_pending_mod_notes |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.jailed_pending_activeness_probe |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.is_jailed |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.is_missing_location |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.is_visible |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.is_visible |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.coordinates |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.display_joined |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.display_last_active |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.phone_is_verified |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.phone_is_verified |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.phone_code_expired |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
User.__repr__ |
1 |
0 |
0 |
100% |
| src/couchers/models/users.py |
(no function) |
210 |
0 |
3 |
100% |
| src/couchers/models/verification.py |
StrongVerificationAttempt.is_valid |
1 |
0 |
0 |
100% |
| src/couchers/models/verification.py |
StrongVerificationAttempt.is_valid |
1 |
0 |
0 |
100% |
| src/couchers/models/verification.py |
StrongVerificationAttempt.is_visible |
1 |
0 |
0 |
100% |
| src/couchers/models/verification.py |
StrongVerificationAttempt._raw_birthdate_match |
1 |
0 |
0 |
100% |
| src/couchers/models/verification.py |
StrongVerificationAttempt.matches_birthdate |
1 |
0 |
0 |
100% |
| src/couchers/models/verification.py |
StrongVerificationAttempt._raw_gender_match |
1 |
0 |
0 |
100% |
| src/couchers/models/verification.py |
StrongVerificationAttempt.matches_gender |
1 |
0 |
0 |
100% |
| src/couchers/models/verification.py |
StrongVerificationAttempt.has_strong_verification |
1 |
0 |
0 |
100% |
| src/couchers/models/verification.py |
(no function) |
63 |
0 |
2 |
100% |
| src/couchers/moderation/__init__.py |
(no function) |
0 |
0 |
0 |
100% |
| src/couchers/moderation/utils.py |
create_moderation |
9 |
0 |
0 |
100% |
| src/couchers/moderation/utils.py |
(no function) |
4 |
0 |
0 |
100% |
| src/couchers/notifications/__init__.py |
(no function) |
0 |
0 |
0 |
100% |
| src/couchers/notifications/background.py |
_send_email_notification |
21 |
4 |
0 |
81% |
| src/couchers/notifications/background.py |
_send_push_notification |
5 |
1 |
0 |
80% |
| src/couchers/notifications/background.py |
handle_notification |
25 |
0 |
0 |
100% |
| src/couchers/notifications/background.py |
handle_email_digests |
16 |
16 |
0 |
0% |
| src/couchers/notifications/background.py |
(no function) |
29 |
0 |
0 |
100% |
| src/couchers/notifications/expo_api.py |
send_expo_push_notification |
14 |
14 |
0 |
0% |
| src/couchers/notifications/expo_api.py |
get_expo_push_receipts |
12 |
6 |
0 |
50% |
| src/couchers/notifications/expo_api.py |
(no function) |
7 |
0 |
0 |
100% |
| src/couchers/notifications/notify.py |
notify |
6 |
0 |
0 |
100% |
| src/couchers/notifications/notify.py |
(no function) |
10 |
0 |
0 |
100% |
| src/couchers/notifications/push.py |
push_to_subscription |
1 |
0 |
0 |
100% |
| src/couchers/notifications/push.py |
_push_to_user |
3 |
1 |
0 |
67% |
| src/couchers/notifications/push.py |
push_to_user |
1 |
0 |
0 |
100% |
| src/couchers/notifications/push.py |
(no function) |
11 |
0 |
0 |
100% |
| src/couchers/notifications/quick_links.py |
_generate_quick_link |
4 |
0 |
0 |
100% |
| src/couchers/notifications/quick_links.py |
generate_do_not_email |
1 |
0 |
0 |
100% |
| src/couchers/notifications/quick_links.py |
generate_unsub_topic_key |
1 |
0 |
0 |
100% |
| src/couchers/notifications/quick_links.py |
generate_unsub_topic_action |
1 |
0 |
0 |
100% |
| src/couchers/notifications/quick_links.py |
generate_quick_decline_link |
1 |
0 |
0 |
100% |
| src/couchers/notifications/quick_links.py |
respond_quick_link |
34 |
14 |
0 |
59% |
| src/couchers/notifications/quick_links.py |
(no function) |
23 |
0 |
0 |
100% |
| src/couchers/notifications/render.py |
render_notification |
241 |
37 |
0 |
85% |
| src/couchers/notifications/render.py |
render_notification.get_localized_string |
1 |
0 |
0 |
100% |
| src/couchers/notifications/render.py |
(no function) |
27 |
0 |
0 |
100% |
| src/couchers/notifications/send_raw_push_notification.py |
PushNotificationError.__init__ |
3 |
3 |
0 |
0% |
| src/couchers/notifications/send_raw_push_notification.py |
_send_web_push |
9 |
9 |
0 |
0% |
| src/couchers/notifications/send_raw_push_notification.py |
_send_expo |
20 |
20 |
0 |
0% |
| src/couchers/notifications/send_raw_push_notification.py |
send_raw_push_notification_v2 |
32 |
32 |
0 |
0% |
| src/couchers/notifications/send_raw_push_notification.py |
(no function) |
30 |
0 |
0 |
100% |
| src/couchers/notifications/settings.py |
get_preference |
2 |
0 |
0 |
100% |
| src/couchers/notifications/settings.py |
get_topic_actions_by_delivery_type |
4 |
0 |
0 |
100% |
| src/couchers/notifications/settings.py |
reset_preference |
4 |
4 |
0 |
0% |
| src/couchers/notifications/settings.py |
set_preference |
7 |
0 |
0 |
100% |
| src/couchers/notifications/settings.py |
check_settings |
13 |
0 |
0 |
100% |
| src/couchers/notifications/settings.py |
get_user_setting_groups |
13 |
0 |
0 |
100% |
| src/couchers/notifications/settings.py |
(no function) |
18 |
0 |
0 |
100% |
| src/couchers/notifications/utils.py |
(no function) |
2 |
0 |
0 |
100% |
| src/couchers/notifications/web_push_api.py |
gen_vapid_keys |
5 |
5 |
0 |
0% |
| src/couchers/notifications/web_push_api.py |
get_vapid_public_key_from_private_key |
3 |
0 |
0 |
100% |
| src/couchers/notifications/web_push_api.py |
generate_vapid_authorization |
3 |
3 |
0 |
0% |
| src/couchers/notifications/web_push_api.py |
send_web_push |
4 |
4 |
0 |
0% |
| src/couchers/notifications/web_push_api.py |
decode_key |
1 |
0 |
0 |
100% |
| src/couchers/notifications/web_push_api.py |
parse_subscription_info |
4 |
4 |
0 |
0% |
| src/couchers/notifications/web_push_api.py |
(no function) |
17 |
0 |
0 |
100% |
| src/couchers/phone/check.py |
is_e164_format |
1 |
0 |
0 |
100% |
| src/couchers/phone/check.py |
is_known_operator |
4 |
1 |
0 |
75% |
| src/couchers/phone/check.py |
(no function) |
3 |
0 |
0 |
100% |
| src/couchers/phone/sms.py |
generate_random_code |
1 |
0 |
0 |
100% |
| src/couchers/phone/sms.py |
looks_like_a_code |
1 |
0 |
0 |
100% |
| src/couchers/phone/sms.py |
format_message |
1 |
0 |
0 |
100% |
| src/couchers/phone/sms.py |
send_sms |
11 |
0 |
0 |
100% |
| src/couchers/phone/sms.py |
(no function) |
13 |
0 |
0 |
100% |
| src/couchers/postal/__init__.py |
(no function) |
0 |
0 |
0 |
100% |
| src/couchers/postal/address_validation.py |
validate_address |
1 |
0 |
0 |
100% |
| src/couchers/postal/address_validation.py |
(no function) |
14 |
0 |
0 |
100% |
| src/couchers/postal/postcard_service.py |
send_postcard |
1 |
1 |
0 |
0% |
| src/couchers/postal/postcard_service.py |
(no function) |
8 |
0 |
0 |
100% |
| src/couchers/rate_limits/__init__.py |
(no function) |
0 |
0 |
0 |
100% |
| src/couchers/rate_limits/check.py |
_get_user_events_in_past_time_interval |
1 |
0 |
0 |
100% |
| src/couchers/rate_limits/check.py |
_save_rate_limit_violation |
4 |
0 |
0 |
100% |
| src/couchers/rate_limits/check.py |
_user_has_violated_rate_limit_in_past_time_interval |
1 |
0 |
0 |
100% |
| src/couchers/rate_limits/check.py |
process_rate_limits_and_check_abort |
11 |
0 |
0 |
100% |
| src/couchers/rate_limits/check.py |
(no function) |
13 |
0 |
0 |
100% |
| src/couchers/rate_limits/definitions.py |
_get_user_host_requests_in_past_time_interval |
1 |
0 |
0 |
100% |
| src/couchers/rate_limits/definitions.py |
_get_user_friend_requests_in_past_time_interval |
1 |
0 |
0 |
100% |
| src/couchers/rate_limits/definitions.py |
_get_user_initiated_chats_in_past_time_interval |
1 |
0 |
0 |
100% |
| src/couchers/rate_limits/definitions.py |
(no function) |
19 |
0 |
0 |
100% |
| src/couchers/reranker.py |
reranker |
15 |
2 |
0 |
87% |
| src/couchers/reranker.py |
(no function) |
5 |
0 |
0 |
100% |
| src/couchers/resources.py |
get_terms_of_service |
2 |
0 |
0 |
100% |
| src/couchers/resources.py |
get_icon |
1 |
0 |
0 |
100% |
| src/couchers/resources.py |
get_region_dict |
2 |
0 |
0 |
100% |
| src/couchers/resources.py |
region_is_allowed |
1 |
0 |
0 |
100% |
| src/couchers/resources.py |
get_language_dict |
2 |
0 |
0 |
100% |
| src/couchers/resources.py |
get_badge_data |
3 |
0 |
0 |
100% |
| src/couchers/resources.py |
get_badge_dict |
1 |
0 |
0 |
100% |
| src/couchers/resources.py |
get_static_badge_dict |
2 |
0 |
0 |
100% |
| src/couchers/resources.py |
language_is_allowed |
1 |
0 |
0 |
100% |
| src/couchers/resources.py |
copy_resources_to_database |
21 |
4 |
0 |
81% |
| src/couchers/resources.py |
(no function) |
30 |
0 |
0 |
100% |
| src/couchers/server.py |
create_main_server |
32 |
0 |
0 |
100% |
| src/couchers/server.py |
create_media_server |
4 |
0 |
0 |
100% |
| src/couchers/server.py |
(no function) |
36 |
0 |
0 |
100% |
| src/couchers/servicers/__init__.py |
(no function) |
0 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
mod_note_to_pb |
1 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
abort_on_invalid_password |
6 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
_volunteer_info_to_pb |
1 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.GetAccountInfo |
5 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.ChangePasswordV2 |
8 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.ChangeEmailV2 |
14 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.ChangeLanguagePreference |
4 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.FillContributorForm |
8 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.GetContributorFormInfo |
2 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.ChangePhone |
27 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.VerifyPhone |
19 |
2 |
0 |
89% |
| src/couchers/servicers/account.py |
Account.InitiateStrongVerification |
18 |
2 |
0 |
89% |
| src/couchers/servicers/account.py |
Account.GetStrongVerificationAttemptStatus |
5 |
1 |
0 |
80% |
| src/couchers/servicers/account.py |
Account.DeleteStrongVerificationData |
13 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.DeleteAccount |
14 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.ListModNotes |
3 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.ListActiveSessions |
5 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.ListActiveSessions._active_session_to_pb |
2 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.LogOutSession |
2 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.LogOutOtherSessions |
4 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.SetProfilePublicVisibility |
4 |
4 |
0 |
0% |
| src/couchers/servicers/account.py |
Account.CreateInviteCode |
3 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.DisableInviteCode |
6 |
1 |
0 |
83% |
| src/couchers/servicers/account.py |
Account.ListInviteCodes |
2 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.GetReminders |
9 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.GetMyVolunteerInfo |
4 |
0 |
0 |
100% |
| src/couchers/servicers/account.py |
Account.UpdateMyVolunteerInfo |
33 |
7 |
0 |
79% |
| src/couchers/servicers/account.py |
Iris.Webhook |
18 |
2 |
0 |
89% |
| src/couchers/servicers/account.py |
(no function) |
70 |
0 |
0 |
100% |
| src/couchers/servicers/admin.py |
_user_to_details |
1 |
0 |
0 |
100% |
| src/couchers/servicers/admin.py |
_content_report_to_pb |
1 |
0 |
0 |
100% |
| src/couchers/servicers/admin.py |
append_admin_note |
4 |
0 |
0 |
100% |
| src/couchers/servicers/admin.py |
Admin.GetUserDetails |
4 |
1 |
0 |
75% |
| src/couchers/servicers/admin.py |
Admin.GetUser |
4 |
1 |
0 |
75% |
| src/couchers/servicers/admin.py |
Admin.SearchUsers |
46 |
46 |
0 |
0% |
| src/couchers/servicers/admin.py |
Admin.ChangeUserGender |
7 |
1 |
0 |
86% |
| src/couchers/servicers/admin.py |
Admin.ChangeUserBirthdate |
7 |
1 |
0 |
86% |
| src/couchers/servicers/admin.py |
Admin.AddBadge |
12 |
1 |
0 |
92% |
| src/couchers/servicers/admin.py |
Admin.RemoveBadge |
13 |
3 |
0 |
77% |
| src/couchers/servicers/admin.py |
Admin.SetPassportSexGenderException |
5 |
1 |
0 |
80% |
| src/couchers/servicers/admin.py |
Admin.BanUser |
6 |
1 |
0 |
83% |
| src/couchers/servicers/admin.py |
Admin.UnbanUser |
6 |
1 |
0 |
83% |
| src/couchers/servicers/admin.py |
Admin.AddAdminNote |
5 |
1 |
0 |
80% |
| src/couchers/servicers/admin.py |
Admin.GetContentReport |
4 |
0 |
0 |
100% |
| src/couchers/servicers/admin.py |
Admin.GetContentReportsForAuthor |
5 |
1 |
0 |
80% |
| src/couchers/servicers/admin.py |
Admin.SendModNote |
8 |
1 |
0 |
88% |
| src/couchers/servicers/admin.py |
Admin.MarkUserNeedsLocationUpdate |
5 |
1 |
0 |
80% |
| src/couchers/servicers/admin.py |
Admin.DeleteUser |
5 |
1 |
0 |
80% |
| src/couchers/servicers/admin.py |
Admin.RecoverDeletedUser |
5 |
1 |
0 |
80% |
| src/couchers/servicers/admin.py |
Admin.CreateApiKey |
6 |
1 |
0 |
83% |
| src/couchers/servicers/admin.py |
Admin.GetChats |
13 |
1 |
0 |
92% |
| src/couchers/servicers/admin.py |
Admin.GetChats.get_user_details |
4 |
0 |
0 |
100% |
| src/couchers/servicers/admin.py |
Admin.GetChats.message_to_pb |
1 |
1 |
0 |
0% |
| src/couchers/servicers/admin.py |
Admin.GetChats.get_messages_for_conversation |
2 |
2 |
0 |
0% |
| src/couchers/servicers/admin.py |
Admin.GetChats.get_host_request_pb |
1 |
1 |
0 |
0% |
| src/couchers/servicers/admin.py |
Admin.GetChats.get_group_chat_pb |
3 |
3 |
0 |
0% |
| src/couchers/servicers/admin.py |
Admin.DeleteEvent |
7 |
1 |
0 |
86% |
| src/couchers/servicers/admin.py |
Admin.ListUserIds |
6 |
0 |
0 |
100% |
| src/couchers/servicers/admin.py |
Admin.EditReferenceText |
7 |
2 |
0 |
71% |
| src/couchers/servicers/admin.py |
Admin.DeleteReference |
5 |
1 |
0 |
80% |
| src/couchers/servicers/admin.py |
Admin.EditDiscussion |
8 |
8 |
0 |
0% |
| src/couchers/servicers/admin.py |
Admin.EditReply |
9 |
9 |
0 |
0% |
| src/couchers/servicers/admin.py |
Admin.AddUsersToModerationUserList |
18 |
0 |
0 |
100% |
| src/couchers/servicers/admin.py |
Admin.ListModerationUserLists |
5 |
1 |
0 |
80% |
| src/couchers/servicers/admin.py |
Admin.RemoveUserFromModerationUserList |
14 |
1 |
0 |
93% |
| src/couchers/servicers/admin.py |
Admin.CreateAccountDeletionLink |
7 |
1 |
0 |
86% |
| src/couchers/servicers/admin.py |
Admin.AccessStats |
12 |
12 |
0 |
0% |
| src/couchers/servicers/admin.py |
Admin.SetLastDonated |
7 |
0 |
0 |
100% |
| src/couchers/servicers/admin.py |
(no function) |
59 |
0 |
0 |
100% |
| src/couchers/servicers/api.py |
API.Ping |
9 |
0 |
0 |
100% |
| src/couchers/servicers/api.py |
API.GetUser |
4 |
1 |
0 |
75% |
| src/couchers/servicers/api.py |
API.GetLiteUser |
4 |
1 |
0 |
75% |
| src/couchers/servicers/api.py |
API.GetLiteUsers |
16 |
0 |
0 |
100% |
| src/couchers/servicers/api.py |
API.UpdateProfile |
166 |
3 |
0 |
98% |
| src/couchers/servicers/api.py |
API.ListFriends |
2 |
0 |
0 |
100% |
| src/couchers/servicers/api.py |
API.RemoveFriend |
5 |
0 |
0 |
100% |
| src/couchers/servicers/api.py |
API.ListMutualFriends |
12 |
1 |
0 |
92% |
| src/couchers/servicers/api.py |
API.SendFriendRequest |
15 |
2 |
0 |
87% |
| src/couchers/servicers/api.py |
API.ListFriendRequests |
3 |
0 |
0 |
100% |
| src/couchers/servicers/api.py |
API.RespondFriendRequest |
9 |
1 |
0 |
89% |
| src/couchers/servicers/api.py |
API.CancelFriendRequest |
7 |
1 |
0 |
86% |
| src/couchers/servicers/api.py |
API.InitiateMediaUpload |
11 |
0 |
0 |
100% |
| src/couchers/servicers/api.py |
API.ListBadgeUsers |
7 |
1 |
0 |
86% |
| src/couchers/servicers/api.py |
response_rate_to_pb |
13 |
0 |
0 |
100% |
| src/couchers/servicers/api.py |
get_num_references |
1 |
0 |
0 |
100% |
| src/couchers/servicers/api.py |
user_model_to_pb |
64 |
2 |
0 |
97% |
| src/couchers/servicers/api.py |
lite_user_to_pb |
6 |
1 |
0 |
83% |
| src/couchers/servicers/api.py |
(no function) |
57 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
_auth_res |
1 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
create_session |
14 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
delete_session |
6 |
1 |
0 |
83% |
| src/couchers/servicers/auth.py |
_username_available |
9 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
Auth.SignupFlow |
114 |
11 |
0 |
90% |
| src/couchers/servicers/auth.py |
Auth.UsernameValid |
1 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
Auth.Authenticate |
17 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
Auth.GetAuthState |
4 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
Auth.Deauthenticate |
6 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
Auth.ResetPassword |
9 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
Auth.CompletePasswordResetV2 |
12 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
Auth.ConfirmChangeEmailV2 |
10 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
Auth.ConfirmDeleteAccount |
12 |
1 |
0 |
92% |
| src/couchers/servicers/auth.py |
Auth.RecoverAccount |
9 |
1 |
0 |
89% |
| src/couchers/servicers/auth.py |
Auth.Unsubscribe |
1 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
Auth.AntiBot |
17 |
17 |
0 |
0% |
| src/couchers/servicers/auth.py |
Auth.AntiBotPolicy |
6 |
6 |
0 |
0% |
| src/couchers/servicers/auth.py |
Auth.GetInviteCodeInfo |
5 |
0 |
0 |
100% |
| src/couchers/servicers/auth.py |
(no function) |
41 |
0 |
0 |
100% |
| src/couchers/servicers/blocking.py |
is_not_visible |
6 |
0 |
0 |
100% |
| src/couchers/servicers/blocking.py |
Blocking.BlockUser |
11 |
1 |
0 |
91% |
| src/couchers/servicers/blocking.py |
Blocking.UnblockUser |
9 |
1 |
0 |
89% |
| src/couchers/servicers/blocking.py |
Blocking.GetBlockedUsers |
2 |
0 |
0 |
100% |
| src/couchers/servicers/blocking.py |
(no function) |
13 |
0 |
0 |
100% |
| src/couchers/servicers/bugs.py |
Bugs._version |
1 |
0 |
0 |
100% |
| src/couchers/servicers/bugs.py |
Bugs.Version |
1 |
0 |
0 |
100% |
| src/couchers/servicers/bugs.py |
Bugs.ReportBug |
17 |
0 |
0 |
100% |
| src/couchers/servicers/bugs.py |
Bugs.Status |
2 |
0 |
0 |
100% |
| src/couchers/servicers/bugs.py |
Bugs.GetDescriptors |
1 |
0 |
0 |
100% |
| src/couchers/servicers/bugs.py |
Bugs.GeolocationSearchInfo |
1 |
1 |
0 |
0% |
| src/couchers/servicers/bugs.py |
Bugs.GeolocationClickInfo |
1 |
1 |
0 |
0% |
| src/couchers/servicers/bugs.py |
(no function) |
19 |
0 |
0 |
100% |
| src/couchers/servicers/communities.py |
_parents_to_pb |
2 |
0 |
0 |
100% |
| src/couchers/servicers/communities.py |
communities_to_pb |
8 |
0 |
0 |
100% |
| src/couchers/servicers/communities.py |
community_to_pb |
1 |
0 |
0 |
100% |
| src/couchers/servicers/communities.py |
Communities.GetCommunity |
4 |
1 |
0 |
75% |
| src/couchers/servicers/communities.py |
Communities.ListCommunities |
4 |
0 |
0 |
100% |
| src/couchers/servicers/communities.py |
Communities.SearchCommunities |
8 |
0 |
0 |
100% |
| src/couchers/servicers/communities.py |
Communities.ListGroups |
4 |
0 |
0 |
100% |
| src/couchers/servicers/communities.py |
Communities.ListAdmins |
7 |
1 |
0 |
86% |
| src/couchers/servicers/communities.py |
Communities.AddAdmin |
15 |
2 |
0 |
87% |
| src/couchers/servicers/communities.py |
Communities.RemoveAdmin |
15 |
3 |
0 |
80% |
| src/couchers/servicers/communities.py |
Communities.ListMembers |
10 |
2 |
0 |
80% |
| src/couchers/servicers/communities.py |
Communities.ListNearbyUsers |
7 |
1 |
0 |
86% |
| src/couchers/servicers/communities.py |
Communities.ListPlaces |
7 |
7 |
0 |
0% |
| src/couchers/servicers/communities.py |
Communities.ListGuides |
7 |
7 |
0 |
0% |
| src/couchers/servicers/communities.py |
Communities.ListEvents |
21 |
4 |
0 |
81% |
| src/couchers/servicers/communities.py |
Communities.ListDiscussions |
9 |
2 |
0 |
78% |
| src/couchers/servicers/communities.py |
Communities.JoinCommunity |
8 |
1 |
0 |
88% |
| src/couchers/servicers/communities.py |
Communities.LeaveCommunity |
10 |
1 |
0 |
90% |
| src/couchers/servicers/communities.py |
Communities.ListUserCommunities |
5 |
0 |
0 |
100% |
| src/couchers/servicers/communities.py |
Communities.ListAllCommunities |
2 |
0 |
0 |
100% |
| src/couchers/servicers/communities.py |
(no function) |
40 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
_message_to_pb |
3 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
_get_visible_members_for_subscription |
3 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
_get_visible_admins_for_subscription |
3 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
_user_can_message |
3 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
generate_message_notifications |
13 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
_add_message_to_subscription |
6 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
_create_chat |
12 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
_get_message_subscription |
2 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
_get_visible_message_subscription |
2 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
_unseen_message_count |
1 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
_mute_info |
2 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
Conversations.ListGroupChats |
5 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
Conversations.GetGroupChat |
4 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
Conversations.GetDirectMessage |
6 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
Conversations.GetUpdates |
2 |
2 |
0 |
0% |
| src/couchers/servicers/conversations.py |
Conversations.GetGroupChatMessages |
4 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
Conversations.MarkLastSeenGroupChat |
7 |
2 |
0 |
71% |
| src/couchers/servicers/conversations.py |
Conversations.MuteGroupChat |
13 |
2 |
0 |
85% |
| src/couchers/servicers/conversations.py |
Conversations.SearchMessages |
4 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
Conversations.CreateGroupChat |
24 |
4 |
0 |
83% |
| src/couchers/servicers/conversations.py |
Conversations.SendMessage |
12 |
1 |
0 |
92% |
| src/couchers/servicers/conversations.py |
Conversations.SendDirectMessage |
24 |
5 |
0 |
79% |
| src/couchers/servicers/conversations.py |
Conversations.EditGroupChat |
11 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
Conversations.MakeGroupChatAdmin |
17 |
3 |
0 |
82% |
| src/couchers/servicers/conversations.py |
Conversations.RemoveGroupChatAdmin |
17 |
2 |
0 |
88% |
| src/couchers/servicers/conversations.py |
Conversations.InviteToGroupChat |
19 |
2 |
0 |
89% |
| src/couchers/servicers/conversations.py |
Conversations.RemoveGroupChatUser |
13 |
3 |
0 |
77% |
| src/couchers/servicers/conversations.py |
Conversations.LeaveGroupChat |
11 |
0 |
0 |
100% |
| src/couchers/servicers/conversations.py |
(no function) |
52 |
0 |
0 |
100% |
| src/couchers/servicers/discussions.py |
discussion_to_pb |
7 |
0 |
0 |
100% |
| src/couchers/servicers/discussions.py |
generate_create_discussion_notifications |
10 |
2 |
0 |
80% |
| src/couchers/servicers/discussions.py |
Discussions.CreateDiscussion |
19 |
3 |
0 |
84% |
| src/couchers/servicers/discussions.py |
Discussions.GetDiscussion |
4 |
1 |
0 |
75% |
| src/couchers/servicers/discussions.py |
(no function) |
20 |
0 |
0 |
100% |
| src/couchers/servicers/donations.py |
_create_stripe_customer |
3 |
0 |
0 |
100% |
| src/couchers/servicers/donations.py |
Donations.InitiateDonation |
13 |
2 |
0 |
85% |
| src/couchers/servicers/donations.py |
Donations.GetDonationPortalLink |
7 |
1 |
0 |
86% |
| src/couchers/servicers/donations.py |
Stripe.Webhook |
24 |
0 |
0 |
100% |
| src/couchers/servicers/donations.py |
(no function) |
19 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
load_community_geom |
4 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
volunteer_to_pb |
3 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
generate_new_blog_post_notifications |
5 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
Editor.CreateCommunity |
5 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
Editor.UpdateCommunity |
15 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
Editor.ListEventCommunityInviteRequests |
5 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
Editor.ListEventCommunityInviteRequests._request_to_pb |
2 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
Editor.DecideEventCommunityInviteRequest |
15 |
2 |
0 |
87% |
| src/couchers/servicers/editor.py |
Editor.SendBlogPostNotification |
6 |
2 |
0 |
67% |
| src/couchers/servicers/editor.py |
Editor.MakeUserVolunteer |
13 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
Editor.UpdateVolunteer |
21 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
Editor.ListVolunteers |
6 |
0 |
0 |
100% |
| src/couchers/servicers/editor.py |
(no function) |
37 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
_is_event_owner |
3 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
_is_event_organizer |
1 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
_can_moderate_event |
3 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
_can_edit_event |
1 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
event_to_pb |
17 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
_get_event_and_occurrence_query |
4 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
_get_event_and_occurrence_one |
1 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
_get_event_and_occurrence_one_or_none |
1 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
_check_occurrence_time_validity |
8 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
get_users_to_notify_for_new_event |
9 |
3 |
0 |
67% |
| src/couchers/servicers/events.py |
generate_event_create_notifications |
15 |
3 |
0 |
80% |
| src/couchers/servicers/events.py |
generate_event_update_notifications |
10 |
10 |
0 |
0% |
| src/couchers/servicers/events.py |
generate_event_cancel_notifications |
10 |
10 |
0 |
0% |
| src/couchers/servicers/events.py |
generate_event_delete_notifications |
7 |
7 |
0 |
0% |
| src/couchers/servicers/events.py |
Events.CreateEvent |
49 |
4 |
0 |
92% |
| src/couchers/servicers/events.py |
Events.ScheduleEvent |
36 |
8 |
0 |
78% |
| src/couchers/servicers/events.py |
Events.UpdateEvent |
63 |
8 |
0 |
87% |
| src/couchers/servicers/events.py |
Events.GetEvent |
4 |
1 |
0 |
75% |
| src/couchers/servicers/events.py |
Events.CancelEvent |
11 |
3 |
0 |
73% |
| src/couchers/servicers/events.py |
Events.RequestCommunityInvite |
22 |
3 |
0 |
86% |
| src/couchers/servicers/events.py |
Events.ListEventOccurrences |
14 |
2 |
0 |
86% |
| src/couchers/servicers/events.py |
Events.ListEventAttendees |
7 |
1 |
0 |
86% |
| src/couchers/servicers/events.py |
Events.ListEventSubscribers |
8 |
1 |
0 |
88% |
| src/couchers/servicers/events.py |
Events.ListEventOrganizers |
8 |
1 |
0 |
88% |
| src/couchers/servicers/events.py |
Events.TransferEvent |
20 |
3 |
0 |
85% |
| src/couchers/servicers/events.py |
Events.SetEventSubscription |
15 |
2 |
0 |
87% |
| src/couchers/servicers/events.py |
Events.SetEventAttendance |
17 |
2 |
0 |
88% |
| src/couchers/servicers/events.py |
Events.ListMyEvents |
33 |
1 |
0 |
97% |
| src/couchers/servicers/events.py |
Events.ListAllEvents |
11 |
0 |
0 |
100% |
| src/couchers/servicers/events.py |
Events.InviteEventOrganizer |
18 |
3 |
0 |
83% |
| src/couchers/servicers/events.py |
Events.RemoveEventOrganizer |
18 |
4 |
0 |
78% |
| src/couchers/servicers/events.py |
(no function) |
55 |
0 |
0 |
100% |
| src/couchers/servicers/galleries.py |
_get_max_photos_for_user |
1 |
0 |
0 |
100% |
| src/couchers/servicers/galleries.py |
_can_edit_gallery |
1 |
0 |
0 |
100% |
| src/couchers/servicers/galleries.py |
_gallery_to_pb |
1 |
0 |
0 |
100% |
| src/couchers/servicers/galleries.py |
Galleries.GetGallery |
4 |
0 |
0 |
100% |
| src/couchers/servicers/galleries.py |
Galleries.AddPhotoToGallery |
22 |
0 |
0 |
100% |
| src/couchers/servicers/galleries.py |
Galleries.RemovePhotoFromGallery |
12 |
1 |
0 |
92% |
| src/couchers/servicers/galleries.py |
Galleries.MovePhoto |
28 |
2 |
0 |
93% |
| src/couchers/servicers/galleries.py |
Galleries.UpdatePhotoCaption |
12 |
1 |
0 |
92% |
| src/couchers/servicers/galleries.py |
Galleries.GetGalleryEditInfo |
8 |
0 |
0 |
100% |
| src/couchers/servicers/galleries.py |
(no function) |
18 |
0 |
0 |
100% |
| src/couchers/servicers/gis.py |
_build_geojson_select |
1 |
0 |
0 |
100% |
| src/couchers/servicers/gis.py |
_statement_to_geojson_response |
2 |
0 |
0 |
100% |
| src/couchers/servicers/gis.py |
GIS.GetUsers |
2 |
0 |
0 |
100% |
| src/couchers/servicers/gis.py |
GIS.GetClusteredUsers |
1 |
0 |
0 |
100% |
| src/couchers/servicers/gis.py |
GIS.GetCommunities |
1 |
1 |
0 |
0% |
| src/couchers/servicers/gis.py |
GIS.GetPlaces |
3 |
3 |
0 |
0% |
| src/couchers/servicers/gis.py |
GIS.GetGuides |
3 |
3 |
0 |
0% |
| src/couchers/servicers/gis.py |
(no function) |
18 |
0 |
0 |
100% |
| src/couchers/servicers/groups.py |
_parents_to_pb |
2 |
0 |
0 |
100% |
| src/couchers/servicers/groups.py |
group_to_pb |
6 |
0 |
0 |
100% |
| src/couchers/servicers/groups.py |
Groups.GetGroup |
4 |
1 |
0 |
75% |
| src/couchers/servicers/groups.py |
Groups.ListAdmins |
7 |
1 |
0 |
86% |
| src/couchers/servicers/groups.py |
Groups.ListMembers |
7 |
1 |
0 |
86% |
| src/couchers/servicers/groups.py |
Groups.ListPlaces |
7 |
7 |
0 |
0% |
| src/couchers/servicers/groups.py |
Groups.ListGuides |
7 |
7 |
0 |
0% |
| src/couchers/servicers/groups.py |
Groups.ListEvents |
12 |
2 |
0 |
83% |
| src/couchers/servicers/groups.py |
Groups.ListDiscussions |
7 |
1 |
0 |
86% |
| src/couchers/servicers/groups.py |
Groups.JoinGroup |
8 |
1 |
0 |
88% |
| src/couchers/servicers/groups.py |
Groups.LeaveGroup |
8 |
1 |
0 |
88% |
| src/couchers/servicers/groups.py |
Groups.ListUserGroups |
5 |
0 |
0 |
100% |
| src/couchers/servicers/groups.py |
(no function) |
28 |
0 |
0 |
100% |
| src/couchers/servicers/jail.py |
_get_jail_info |
8 |
0 |
0 |
100% |
| src/couchers/servicers/jail.py |
Jail.JailInfo |
2 |
0 |
0 |
100% |
| src/couchers/servicers/jail.py |
Jail.AcceptTOS |
5 |
0 |
0 |
100% |
| src/couchers/servicers/jail.py |
Jail.SetLocation |
9 |
1 |
0 |
89% |
| src/couchers/servicers/jail.py |
Jail.AcceptCommunityGuidelines |
5 |
0 |
0 |
100% |
| src/couchers/servicers/jail.py |
Jail.AcknowledgePendingModNote |
8 |
0 |
0 |
100% |
| src/couchers/servicers/jail.py |
Jail.RespondToActivenessProbe |
12 |
1 |
0 |
92% |
| src/couchers/servicers/jail.py |
(no function) |
17 |
0 |
0 |
100% |
| src/couchers/servicers/media.py |
get_media_auth_interceptor |
2 |
0 |
0 |
100% |
| src/couchers/servicers/media.py |
get_media_auth_interceptor.is_authorized |
1 |
0 |
0 |
100% |
| src/couchers/servicers/media.py |
Media.UploadConfirmation |
7 |
1 |
0 |
86% |
| src/couchers/servicers/media.py |
(no function) |
12 |
0 |
0 |
100% |
| src/couchers/servicers/moderation.py |
moderation_state_to_pb |
10 |
1 |
0 |
90% |
| src/couchers/servicers/moderation.py |
Moderation.GetModerationQueue |
37 |
4 |
0 |
89% |
| src/couchers/servicers/moderation.py |
Moderation.GetModerationState |
7 |
0 |
0 |
100% |
| src/couchers/servicers/moderation.py |
Moderation.GetModerationLog |
12 |
0 |
0 |
100% |
| src/couchers/servicers/moderation.py |
Moderation.ModerateContent |
29 |
2 |
0 |
93% |
| src/couchers/servicers/moderation.py |
Moderation.FlagContentForReview |
12 |
1 |
0 |
92% |
| src/couchers/servicers/moderation.py |
Moderation.UnflagContent |
16 |
16 |
0 |
0% |
| src/couchers/servicers/moderation.py |
(no function) |
28 |
0 |
0 |
100% |
| src/couchers/servicers/notifications.py |
get_vapid_public_key |
1 |
0 |
0 |
100% |
| src/couchers/servicers/notifications.py |
notification_to_pb |
2 |
0 |
0 |
100% |
| src/couchers/servicers/notifications.py |
Notifications.GetNotificationSettings |
2 |
0 |
0 |
100% |
| src/couchers/servicers/notifications.py |
Notifications.SetNotificationSettings |
18 |
2 |
0 |
89% |
| src/couchers/servicers/notifications.py |
Notifications.ListNotifications |
5 |
0 |
0 |
100% |
| src/couchers/servicers/notifications.py |
Notifications.MarkNotificationSeen |
5 |
1 |
0 |
80% |
| src/couchers/servicers/notifications.py |
Notifications.MarkAllNotificationsSeen |
2 |
0 |
0 |
100% |
| src/couchers/servicers/notifications.py |
Notifications.GetVapidPublicKey |
3 |
1 |
0 |
67% |
| src/couchers/servicers/notifications.py |
Notifications.RegisterPushNotificationSubscription |
8 |
1 |
0 |
88% |
| src/couchers/servicers/notifications.py |
Notifications.SendTestPushNotification |
4 |
1 |
0 |
75% |
| src/couchers/servicers/notifications.py |
Notifications.RegisterMobilePushNotificationSubscription |
17 |
1 |
0 |
94% |
| src/couchers/servicers/notifications.py |
Notifications.SendTestMobilePushNotification |
4 |
1 |
0 |
75% |
| src/couchers/servicers/notifications.py |
Notifications.SendDevPushNotification |
6 |
0 |
0 |
100% |
| src/couchers/servicers/notifications.py |
(no function) |
34 |
0 |
0 |
100% |
| src/couchers/servicers/pages.py |
_is_page_owner |
3 |
0 |
0 |
100% |
| src/couchers/servicers/pages.py |
_can_moderate_page |
6 |
0 |
0 |
100% |
| src/couchers/servicers/pages.py |
page_to_pb |
10 |
0 |
0 |
100% |
| src/couchers/servicers/pages.py |
Pages.CreatePlace |
20 |
1 |
0 |
95% |
| src/couchers/servicers/pages.py |
Pages.CreateGuide |
27 |
2 |
0 |
93% |
| src/couchers/servicers/pages.py |
Pages.GetPage |
4 |
1 |
0 |
75% |
| src/couchers/servicers/pages.py |
Pages.UpdatePage |
30 |
2 |
0 |
93% |
| src/couchers/servicers/pages.py |
Pages.TransferPage |
16 |
2 |
0 |
88% |
| src/couchers/servicers/pages.py |
Pages.ListUserPlaces |
5 |
0 |
0 |
100% |
| src/couchers/servicers/pages.py |
Pages.ListUserGuides |
5 |
0 |
0 |
100% |
| src/couchers/servicers/pages.py |
(no function) |
22 |
0 |
0 |
100% |
| src/couchers/servicers/postal_verification.py |
_attempt_to_address_pb |
1 |
0 |
0 |
100% |
| src/couchers/servicers/postal_verification.py |
PostalVerification.InitiatePostalVerification |
24 |
3 |
0 |
88% |
| src/couchers/servicers/postal_verification.py |
PostalVerification.ConfirmPostalAddress |
10 |
1 |
0 |
90% |
| src/couchers/servicers/postal_verification.py |
PostalVerification.GetPostalVerificationStatus |
28 |
1 |
0 |
96% |
| src/couchers/servicers/postal_verification.py |
PostalVerification.VerifyPostalCode |
21 |
1 |
0 |
95% |
| src/couchers/servicers/postal_verification.py |
PostalVerification.CancelPostalVerification |
8 |
1 |
0 |
88% |
| src/couchers/servicers/postal_verification.py |
PostalVerification.ListPostalVerificationAttempts |
2 |
0 |
0 |
100% |
| src/couchers/servicers/postal_verification.py |
(no function) |
29 |
0 |
0 |
100% |
| src/couchers/servicers/public.py |
format_volunteer_link |
3 |
0 |
0 |
100% |
| src/couchers/servicers/public.py |
_get_public_users |
3 |
0 |
0 |
100% |
| src/couchers/servicers/public.py |
_get_signup_page_info |
9 |
9 |
0 |
0% |
| src/couchers/servicers/public.py |
_get_donation_stats |
3 |
0 |
0 |
100% |
| src/couchers/servicers/public.py |
_get_volunteers |
4 |
0 |
0 |
100% |
| src/couchers/servicers/public.py |
_get_volunteers.format_volunteer |
1 |
0 |
0 |
100% |
| src/couchers/servicers/public.py |
Public.GetPublicUsers |
1 |
0 |
0 |
100% |
| src/couchers/servicers/public.py |
Public.GetPublicUser |
10 |
10 |
0 |
0% |
| src/couchers/servicers/public.py |
Public.GetSignupPageInfo |
1 |
1 |
0 |
0% |
| src/couchers/servicers/public.py |
Public.GetVolunteers |
1 |
0 |
0 |
100% |
| src/couchers/servicers/public.py |
Public.GetDonationStats |
1 |
0 |
0 |
100% |
| src/couchers/servicers/public.py |
(no function) |
30 |
0 |
0 |
100% |
| src/couchers/servicers/references.py |
reference_to_pb |
1 |
0 |
0 |
100% |
| src/couchers/servicers/references.py |
get_host_req_and_check_can_write_ref |
14 |
1 |
0 |
93% |
| src/couchers/servicers/references.py |
check_valid_reference |
4 |
1 |
0 |
75% |
| src/couchers/servicers/references.py |
get_pending_references_to_write |
6 |
0 |
0 |
100% |
| src/couchers/servicers/references.py |
References.ListReferences |
25 |
0 |
0 |
100% |
| src/couchers/servicers/references.py |
References.WriteFriendReference |
17 |
1 |
0 |
94% |
| src/couchers/servicers/references.py |
References.WriteHostRequestReference |
18 |
0 |
0 |
100% |
| src/couchers/servicers/references.py |
References.HostRequestIndicateDidntMeetup |
6 |
1 |
0 |
83% |
| src/couchers/servicers/references.py |
References.AvailableWriteReferences |
11 |
0 |
0 |
100% |
| src/couchers/servicers/references.py |
References.ListPendingReferencesToWrite |
1 |
0 |
0 |
100% |
| src/couchers/servicers/references.py |
References.GetHostRequestReferenceStatus |
11 |
0 |
0 |
100% |
| src/couchers/servicers/references.py |
(no function) |
29 |
0 |
0 |
100% |
| src/couchers/servicers/reporting.py |
Reporting.Report |
8 |
0 |
0 |
100% |
| src/couchers/servicers/reporting.py |
(no function) |
8 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
message_to_pb |
3 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
host_request_to_pb |
7 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
_possibly_observe_first_response_time |
6 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
_is_host_request_long_enough |
2 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
Requests.CreateHostRequest |
41 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
Requests.GetHostRequest |
4 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
Requests.ListHostRequests |
25 |
1 |
0 |
96% |
| src/couchers/servicers/requests.py |
Requests.RespondHostRequest |
71 |
5 |
0 |
93% |
| src/couchers/servicers/requests.py |
Requests.RespondHostRequest.count_host_response |
4 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
Requests.GetHostRequestMessages |
11 |
2 |
0 |
82% |
| src/couchers/servicers/requests.py |
Requests.SendHostRequestMessage |
25 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
Requests.GetHostRequestUpdates |
19 |
4 |
0 |
79% |
| src/couchers/servicers/requests.py |
Requests.MarkLastSeenHostRequest |
14 |
5 |
0 |
64% |
| src/couchers/servicers/requests.py |
Requests.SetHostRequestArchiveStatus |
7 |
2 |
0 |
71% |
| src/couchers/servicers/requests.py |
Requests.GetResponseRate |
5 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
Requests.SendHostRequestFeedback |
8 |
0 |
0 |
100% |
| src/couchers/servicers/requests.py |
(no function) |
40 |
0 |
0 |
100% |
| src/couchers/servicers/resources.py |
Resources.GetTermsOfService |
1 |
0 |
0 |
100% |
| src/couchers/servicers/resources.py |
Resources.GetCommunityGuidelines |
1 |
0 |
0 |
100% |
| src/couchers/servicers/resources.py |
Resources.GetRegions |
1 |
0 |
0 |
100% |
| src/couchers/servicers/resources.py |
Resources.GetLanguages |
1 |
0 |
0 |
100% |
| src/couchers/servicers/resources.py |
Resources.GetBadges |
1 |
0 |
0 |
100% |
| src/couchers/servicers/resources.py |
(no function) |
11 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
_join_with_space |
6 |
1 |
0 |
83% |
| src/couchers/servicers/search.py |
_build_tsv |
11 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
_build_doc |
11 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
_similarity |
1 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
_gen_search_elements |
21 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
_gen_search_elements.execute_search_statement |
1 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
_search_users |
5 |
1 |
0 |
80% |
| src/couchers/servicers/search.py |
_search_pages |
6 |
1 |
0 |
83% |
| src/couchers/servicers/search.py |
_search_events |
3 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
_search_clusters |
6 |
1 |
0 |
83% |
| src/couchers/servicers/search.py |
_user_search_inner |
91 |
26 |
0 |
71% |
| src/couchers/servicers/search.py |
Search.Search |
5 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
Search.UserSearch |
3 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
Search.UserSearchV2 |
8 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
Search.UserSearchV2._user_to_search_user |
4 |
0 |
0 |
100% |
| src/couchers/servicers/search.py |
Search.EventSearch |
51 |
4 |
0 |
92% |
| src/couchers/servicers/search.py |
(no function) |
36 |
0 |
0 |
100% |
| src/couchers/servicers/threads.py |
pack_thread_id |
1 |
0 |
0 |
100% |
| src/couchers/servicers/threads.py |
unpack_thread_id |
1 |
0 |
0 |
100% |
| src/couchers/servicers/threads.py |
total_num_responses |
1 |
0 |
0 |
100% |
| src/couchers/servicers/threads.py |
thread_to_pb |
1 |
0 |
0 |
100% |
| src/couchers/servicers/threads.py |
generate_reply_notifications |
58 |
8 |
0 |
86% |
| src/couchers/servicers/threads.py |
Threads.GetThread |
18 |
1 |
0 |
94% |
| src/couchers/servicers/threads.py |
Threads.PostReply |
17 |
0 |
0 |
100% |
| src/couchers/servicers/threads.py |
(no function) |
24 |
0 |
0 |
100% |
| src/couchers/sql.py |
CouchersSelect.where_username_or_email |
5 |
0 |
0 |
100% |
| src/couchers/sql.py |
CouchersSelect.where_username_or_id |
5 |
0 |
0 |
100% |
| src/couchers/sql.py |
CouchersSelect.where_username_or_email_or_id |
7 |
1 |
0 |
86% |
| src/couchers/sql.py |
CouchersSelect.where_users_visible |
2 |
0 |
0 |
100% |
| src/couchers/sql.py |
CouchersSelect.where_users_column_visible |
3 |
0 |
0 |
100% |
| src/couchers/sql.py |
CouchersSelect.where_users_visible_to_each_other |
1 |
0 |
0 |
100% |
| src/couchers/sql.py |
CouchersSelect.where_user_columns_visible_to_each_other |
3 |
0 |
0 |
100% |
| src/couchers/sql.py |
CouchersSelect.where_moderated_content_visible_to_user_column |
6 |
0 |
0 |
100% |
| src/couchers/sql.py |
CouchersSelect.where_moderated_content_visible |
7 |
0 |
0 |
100% |
| src/couchers/sql.py |
CouchersSelect.where_moderation_state_column_visible |
3 |
0 |
0 |
100% |
| src/couchers/sql.py |
couchers_select |
1 |
0 |
0 |
100% |
| src/couchers/sql.py |
_relevant_user_blocks |
3 |
0 |
0 |
100% |
| src/couchers/sql.py |
(no function) |
21 |
0 |
8 |
100% |
| src/couchers/tasks.py |
send_signup_email |
13 |
0 |
0 |
100% |
| src/couchers/tasks.py |
send_email_changed_confirmation_to_new_email |
7 |
2 |
0 |
71% |
| src/couchers/tasks.py |
send_content_report_email |
2 |
0 |
0 |
100% |
| src/couchers/tasks.py |
maybe_send_reference_report_email |
3 |
0 |
0 |
100% |
| src/couchers/tasks.py |
send_rate_limit_violation_report_email |
3 |
0 |
0 |
100% |
| src/couchers/tasks.py |
send_duplicate_strong_verification_email |
2 |
0 |
0 |
100% |
| src/couchers/tasks.py |
maybe_send_contributor_form_email |
2 |
1 |
0 |
50% |
| src/couchers/tasks.py |
send_event_community_invite_request_email |
1 |
0 |
0 |
100% |
| src/couchers/tasks.py |
send_account_deletion_report_email |
2 |
0 |
0 |
100% |
| src/couchers/tasks.py |
enforce_community_memberships |
8 |
0 |
0 |
100% |
| src/couchers/tasks.py |
enforce_community_memberships_for_user |
4 |
0 |
0 |
100% |
| src/couchers/tasks.py |
(no function) |
27 |
0 |
0 |
100% |
| src/couchers/templates/__init__.py |
(no function) |
0 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2esc |
1 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2multiline |
1 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2sf |
1 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2url |
1 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2phone |
1 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2date |
3 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2time |
2 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2timestamp |
2 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2avatar |
3 |
1 |
0 |
67% |
| src/couchers/templates/v2.py |
v2quote |
1 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2markdown |
1 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2translate |
10 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
v2translate.replace_tag |
5 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
add_filters |
12 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
send_simple_pretty_email |
9 |
0 |
0 |
100% |
| src/couchers/templates/v2.py |
(no function) |
45 |
0 |
0 |
100% |
| src/couchers/tracing.py |
setup_tracing |
8 |
8 |
0 |
0% |
| src/couchers/tracing.py |
(no function) |
11 |
0 |
0 |
100% |
| src/couchers/urls.py |
app_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
icon_url |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
profile_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
user_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
edit_profile_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
signup_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
account_settings_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
notification_settings_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
feature_preview_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
password_reset_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
host_request_link_host |
1 |
1 |
0 |
0% |
| src/couchers/urls.py |
host_request_link_guest |
1 |
1 |
0 |
0% |
| src/couchers/urls.py |
host_request |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
messages_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
chat_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
event_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
community_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
discussion_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
leave_reference_link |
4 |
1 |
0 |
75% |
| src/couchers/urls.py |
profile_references_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
friend_requests_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
media_upload_url |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
change_email_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
donation_url |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
donation_cancelled_url |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
donation_success_url |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
complete_strong_verification_url |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
delete_account_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
recover_account_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
unsubscribe_link |
1 |
1 |
0 |
0% |
| src/couchers/urls.py |
quick_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
media_url |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
console_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
invite_code_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
postal_verification_link |
1 |
0 |
0 |
100% |
| src/couchers/urls.py |
(no function) |
36 |
0 |
0 |
100% |
| src/couchers/utils.py |
is_valid_user_id |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
is_valid_username |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
is_valid_name |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
is_valid_email |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
Timestamp_from_datetime |
3 |
0 |
0 |
100% |
| src/couchers/utils.py |
Duration_from_timedelta |
3 |
0 |
0 |
100% |
| src/couchers/utils.py |
parse_date |
4 |
0 |
0 |
100% |
| src/couchers/utils.py |
date_to_api |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
to_aware_datetime |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
now |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
minimum_allowed_birthdate |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
today |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
now_in_timezone |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
today_in_timezone |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
wrap_coordinate |
14 |
1 |
0 |
93% |
| src/couchers/utils.py |
wrap_coordinate.__wrap_gen |
5 |
0 |
0 |
100% |
| src/couchers/utils.py |
wrap_coordinate.__wrap_flip |
5 |
0 |
0 |
100% |
| src/couchers/utils.py |
wrap_coordinate.__wrap_rem |
5 |
0 |
0 |
100% |
| src/couchers/utils.py |
create_coordinate |
2 |
0 |
0 |
100% |
| src/couchers/utils.py |
create_polygon_lat_lng |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
create_polygon_lng_lat |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
geojson_to_geom |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
to_multi |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
get_coordinates |
4 |
0 |
0 |
100% |
| src/couchers/utils.py |
http_date |
3 |
1 |
0 |
67% |
| src/couchers/utils.py |
_create_tasty_cookie |
11 |
2 |
0 |
82% |
| src/couchers/utils.py |
create_session_cookies |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
create_lang_cookie |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
parse_session_cookie |
7 |
2 |
0 |
71% |
| src/couchers/utils.py |
parse_user_id_cookie |
7 |
2 |
0 |
71% |
| src/couchers/utils.py |
parse_ui_lang_cookie |
7 |
2 |
0 |
71% |
| src/couchers/utils.py |
parse_api_key |
8 |
2 |
0 |
75% |
| src/couchers/utils.py |
remove_duplicates_retain_order |
5 |
0 |
0 |
100% |
| src/couchers/utils.py |
date_in_timezone |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
millis_from_dt |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
dt_from_millis |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
dt_to_page_token |
2 |
0 |
0 |
100% |
| src/couchers/utils.py |
dt_from_page_token |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
last_active_coarsen |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
get_tz_as_text |
1 |
0 |
0 |
100% |
| src/couchers/utils.py |
make_logged_out_context |
1 |
1 |
0 |
0% |
| src/couchers/utils.py |
(no function) |
60 |
0 |
0 |
100% |
| src/tests/conftest.py |
(no function) |
7 |
1 |
0 |
86% |
| src/tests/test_account.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_GetAccountInfo |
11 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_donation_banner_no_drive |
8 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_donation_banner_never_donated |
9 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_donation_banner_donated_before_drive |
12 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_donation_banner_donated_after_drive |
12 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_donation_banner_donated_exactly_at_drive_start |
11 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_GetAccountInfo_regression |
8 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangePasswordV2_normal |
12 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangePasswordV2_regression |
8 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangePasswordV2_normal_short_password |
11 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangePasswordV2_normal_long_password |
11 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangePasswordV2_normal_insecure_password |
11 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangePasswordV2_normal_wrong_password |
11 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangePasswordV2_normal_no_passwords |
10 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2_wrong_password |
10 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2_wrong_email |
10 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2_invalid_email |
9 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2_email_in_use |
10 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2_no_change |
9 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2_wrong_token |
13 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2_tokens_two_hour_window |
29 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2_tokens_two_hour_window.two_hours_one_minute_in_future |
1 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2_tokens_two_hour_window.one_minute_ago |
1 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2 |
27 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeEmailV2_sends_proper_emails |
15 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ChangeLanguagePreference |
14 |
1 |
0 |
93% |
| src/tests/test_account.py |
test_contributor_form |
7 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_DeleteAccount_start |
10 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_DeleteAccount_message_storage |
10 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_full_delete_account_with_recovery |
77 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_multiple_delete_tokens |
12 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ListActiveSessions_pagination |
13 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ListActiveSessions_details |
33 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ListActiveSessions_details.dummy_geoip |
1 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_LogOutSession |
14 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_LogOutOtherSessions |
17 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_CreateInviteCode |
10 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_DisableInviteCode |
9 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_ListInviteCodes |
12 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_reminders |
53 |
0 |
0 |
100% |
| src/tests/test_account.py |
test_volunteer_stuff |
72 |
0 |
0 |
100% |
| src/tests/test_account.py |
(no function) |
57 |
0 |
0 |
100% |
| src/tests/test_activeness_probes.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_activeness_probes.py |
test_activeness_probes_happy_path_inactive |
16 |
0 |
0 |
100% |
| src/tests/test_activeness_probes.py |
test_activeness_probes_happy_path_active |
16 |
0 |
0 |
100% |
| src/tests/test_activeness_probes.py |
test_activeness_probes_disabled |
13 |
0 |
0 |
100% |
| src/tests/test_activeness_probes.py |
test_activeness_probes_expiry |
30 |
0 |
0 |
100% |
| src/tests/test_activeness_probes.py |
(no function) |
20 |
0 |
0 |
100% |
| src/tests/test_admin.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_access_by_normal_user |
5 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_GetUser |
12 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_GetUserDetails |
29 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_ChangeUserGender |
19 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_ChangeUserBirthdate |
21 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_BanUser |
15 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_UnbanUser |
15 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_AddAdminNote |
19 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_AddAdminNote_blank |
8 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_admin_content_reports |
28 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_DeleteUser |
20 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_CreateApiKey |
22 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_GetChats |
10 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_badges |
31 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_DeleteEvent |
15 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_ListUserIds |
9 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_EditReferenceText |
13 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_DeleteReference |
15 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_AddUsersToModerationUserList |
42 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_RemoveUserFromModerationUserList |
30 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_admin_delete_account_url |
17 |
0 |
0 |
100% |
| src/tests/test_admin.py |
test_SetLastDonated |
20 |
0 |
0 |
100% |
| src/tests/test_admin.py |
(no function) |
36 |
0 |
0 |
100% |
| src/tests/test_api.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_ping |
30 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_coords |
46 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_get_user |
12 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_user_model_to_pb_ghost_user |
53 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_user_model_to_pb_ghost_user_blocked |
53 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_admin_viewing_ghost_users_sees_full_profile |
13 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_lite_coords |
49 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_lite_get_user |
13 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_GetLiteUsers |
38 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_update_profile |
55 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_update_profile_do_not_email |
12 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_language_abilities |
36 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_pending_friend_request_count |
25 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_friend_request_flow |
72 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_RemoveFriend_regression |
27 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_cant_friend_request_twice |
8 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_cant_friend_request_pending |
9 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_cant_friend_request_already_friends |
13 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_excessive_friend_requests_are_reported |
27 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_ListFriends |
42 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_ListMutualFriends |
27 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_mutual_friends_self |
19 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_CancelFriendRequest |
24 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_accept_friend_request |
25 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_reject_friend_request |
28 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_hosting_preferences |
79 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_badges |
16 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_GetLiteUser_ghost_user_by_username |
20 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_GetLiteUser_ghost_user_by_id |
20 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_GetLiteUser_blocked_user |
15 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_GetLiteUser_blocking_user |
15 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_GetLiteUsers_ghost_users |
36 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_GetLiteUsers_blocked_users |
31 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_GetUser_ghost_user_by_id |
14 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_GetUser_blocked_user |
12 |
0 |
0 |
100% |
| src/tests/test_api.py |
test_GetUser_blocking_user |
12 |
0 |
0 |
100% |
| src/tests/test_api.py |
(no function) |
60 |
0 |
0 |
100% |
| src/tests/test_app.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_app.py |
test_create_servers |
6 |
0 |
0 |
100% |
| src/tests/test_app.py |
(no function) |
6 |
0 |
0 |
100% |
| src/tests/test_auth.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_auth.py |
get_session_cookie_tokens |
4 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_UsernameValid |
4 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_incremental |
82 |
0 |
0 |
100% |
| src/tests/test_auth.py |
_quick_signup |
29 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup |
1 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_basic_login |
9 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_login_part_signed_up_verified_email |
20 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_login_part_signed_up_not_verified_email |
17 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_banned_user |
8 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_deleted_user |
8 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_invalid_token |
7 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_password_reset_v2 |
42 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_password_reset_no_such_user |
6 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_password_reset_invalid_token_v2 |
11 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_logout_invalid_token |
10 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_without_password |
5 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_invalid_birthdate |
13 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_invalid_email |
20 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_existing_email |
6 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_banned_user_email |
8 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_deleted_user_email |
8 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_continue_with_email |
10 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_resend_email |
29 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_successful_authenticate |
7 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_unsuccessful_authenticate |
21 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_complete_signup |
30 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_token_regression |
14 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_opt_out_of_newsletter |
11 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_GetAuthState |
22 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_signup_no_feedback_regression |
28 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_banned_username |
9 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_GetInviteCodeInfo |
15 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_GetInviteCodeInfo_no_avatar |
12 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_GetInviteCodeInfo_not_found |
6 |
0 |
0 |
100% |
| src/tests/test_auth.py |
test_SignupFlow_invite_code |
17 |
0 |
0 |
100% |
| src/tests/test_auth.py |
(no function) |
51 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
now_5_min_in_future |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
_check_job_counter |
3 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_email_job |
8 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_email_job.mock_print_dev_email |
7 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_purge_login_tokens |
12 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_purge_password_reset_tokens |
12 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_purge_account_deletion_tokens |
16 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_enforce_community_memberships |
6 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_refresh_materialized_views |
6 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_service_jobs |
11 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_service_jobs.raising_sleep |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_scheduler |
19 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_scheduler.mock_monotonic |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_scheduler.mock_sleep |
3 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_scheduler.mock_run_job_and_schedule |
2 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_job_retry |
29 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_job_retry.mock_job |
2 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_no_jobs_no_problem |
5 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_basic |
39 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_muted |
40 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_request_notifications_host_request |
35 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_seen |
24 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_seen.now_30_min_in_future |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_onboarding_emails |
15 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_reference_reminders |
37 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_host_request_reminders |
45 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_add_users_to_email_list |
22 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_update_recommendation_scores |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_update_badges |
22 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_request_notifications_blocked_users_no_notification |
28 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_host_request_reminders_blocked_users_no_notification |
24 |
1 |
0 |
96% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_blocked_users_no_notification |
31 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_update_badges_volunteers |
28 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_update_badges_volunteer_status_change |
23 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple |
17 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple.FirstResult.scalars |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple.FirstResult.unique |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple.SecondResult.all |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple.DummySession.__init__ |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple.DummySession.execute |
2 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple.DummySession.commit |
1 |
1 |
0 |
0% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple.DummySession.flush |
1 |
1 |
0 |
0% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple.fake_session_scope |
4 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple.fake_session_scope.Ctx.__enter__ |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
test_send_message_notifications_empty_unseen_simple.fake_session_scope.Ctx.__exit__ |
1 |
0 |
0 |
100% |
| src/tests/test_bg_jobs.py |
(no function) |
56 |
0 |
0 |
100% |
| src/tests/test_blocking.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_blocking.py |
test_BlockUser |
18 |
0 |
0 |
100% |
| src/tests/test_blocking.py |
test_make_user_block |
6 |
0 |
0 |
100% |
| src/tests/test_blocking.py |
test_UnblockUser |
17 |
0 |
0 |
100% |
| src/tests/test_blocking.py |
test_GetBlockedUsers |
16 |
0 |
0 |
100% |
| src/tests/test_blocking.py |
test_relationships_userblock_dot_user |
13 |
0 |
0 |
100% |
| src/tests/test_blocking.py |
test_is_not_visible |
89 |
0 |
0 |
100% |
| src/tests/test_blocking.py |
(no function) |
16 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_bugs_disabled |
3 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_bugs |
9 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_bugs.dud_post |
7 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_bugs.dud_post._PostReturn.json |
1 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_bugs_with_user |
10 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_bugs_with_user.dud_post |
7 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_bugs_with_user.dud_post._PostReturn.json |
1 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_bugs_fails_on_network_error |
9 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_bugs_fails_on_network_error.dud_post |
3 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_version |
3 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_status |
8 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
test_GetDescriptors |
4 |
0 |
0 |
100% |
| src/tests/test_bugs.py |
(no function) |
17 |
0 |
0 |
100% |
| src/tests/test_communities.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_communities.py |
create_1d_polygon |
1 |
0 |
0 |
100% |
| src/tests/test_communities.py |
create_1d_point |
1 |
0 |
0 |
100% |
| src/tests/test_communities.py |
create_community |
14 |
0 |
0 |
100% |
| src/tests/test_communities.py |
create_group |
12 |
0 |
0 |
100% |
| src/tests/test_communities.py |
create_place |
2 |
0 |
0 |
100% |
| src/tests/test_communities.py |
create_discussion |
2 |
0 |
0 |
100% |
| src/tests/test_communities.py |
create_event |
3 |
0 |
0 |
100% |
| src/tests/test_communities.py |
get_community_id |
1 |
0 |
0 |
100% |
| src/tests/test_communities.py |
get_group_id |
1 |
0 |
0 |
100% |
| src/tests/test_communities.py |
testing_communities |
62 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_GetCommunity |
104 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListCommunities |
8 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListCommunities_all |
19 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListUserCommunities |
12 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListOtherUserCommunities |
13 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListGroups |
15 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListAdmins |
13 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_AddAdmin |
26 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_RemoveAdmin |
26 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListMembers |
16 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListNearbyUsers |
16 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListDiscussions |
25 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_is_user_in_node_geography |
12 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListEvents |
11 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_empty_query_aborts |
7 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_min_length_lt_3_aborts |
7 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_typo_matches_existing_name |
7 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_word_similarity_matches_partial_word |
7 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_results_sorted_by_similarity |
10 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_no_results_returns_empty |
5 |
0 |
0 |
100% |
| src/tests/test_communities.py |
TestCommunities.test_ListAllCommunities |
54 |
0 |
0 |
100% |
| src/tests/test_communities.py |
test_JoinCommunity_and_LeaveCommunity |
32 |
0 |
0 |
100% |
| src/tests/test_communities.py |
test_LeaveCommunity_regression |
27 |
0 |
0 |
100% |
| src/tests/test_communities.py |
test_enforce_community_memberships_for_user |
16 |
0 |
0 |
100% |
| src/tests/test_communities.py |
(no function) |
74 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_list_group_chats |
30 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_list_empty_group_chats |
30 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_list_group_chats_ordering |
49 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_list_group_chats_ordering_after_left |
54 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_get_group_chat_messages |
18 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_get_group_chat_messages_pagination |
20 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_get_group_chat_messages_joined_left |
37 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_get_group_chat_info |
29 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_get_group_chat_info_denied |
14 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_get_group_chat_info_left |
22 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_remove_group_chat_user |
13 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_edit_group_chat |
20 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_make_remove_group_chat_admin |
32 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_send_message |
22 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_send_direct_message |
18 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_excessive_chat_initiations_are_reported |
27 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_leave_invite_to_group_chat |
66 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_group_chats_with_messages_before_join |
22 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_invite_to_dm |
14 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_sole_admin_leaves |
21 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_search_messages |
26 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_search_messages_left_joined |
34 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_admin_behaviour |
71 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_add_remove_admin_failures |
51 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_last_seen |
36 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_one_dm_per_pair |
28 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_GetDirectMessage |
31 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_total_unseen |
39 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_regression_ListGroupChats_pagination |
22 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_muting |
30 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_chat_notifications |
48 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_chat_notifications.send_msg |
1 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_chat_notifications.parse_message_payload |
1 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
test_incomplete_profile |
18 |
0 |
0 |
100% |
| src/tests/test_conversations.py |
(no function) |
46 |
0 |
0 |
100% |
| src/tests/test_crypto.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_crypto.py |
test_b64 |
1 |
0 |
0 |
100% |
| src/tests/test_crypto.py |
test_simple_crypto |
1 |
0 |
0 |
100% |
| src/tests/test_crypto.py |
test_hash_sigs |
2 |
0 |
0 |
100% |
| src/tests/test_crypto.py |
test_asym_crypto |
3 |
0 |
0 |
100% |
| src/tests/test_crypto.py |
test_stable_secure_uniform |
24 |
0 |
0 |
100% |
| src/tests/test_crypto.py |
(no function) |
10 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_is_valid_user_id |
3 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_is_valid_email |
8 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_is_valid_username |
8 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_is_valid_name |
7 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_parse_date |
9 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_get_parent_node_at_location |
17 |
0 |
0 |
100% |
| src/tests/test_db.py |
pg_dump |
1 |
0 |
0 |
100% |
| src/tests/test_db.py |
sort_pg_dump_output |
4 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_sort_pg_dump_output |
1 |
0 |
0 |
100% |
| src/tests/test_db.py |
strip_leading_whitespace |
1 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_migrations |
17 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_migrations.message |
4 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_slugify |
10 |
0 |
0 |
100% |
| src/tests/test_db.py |
test_database_consistency_check |
9 |
0 |
0 |
100% |
| src/tests/test_db.py |
(no function) |
30 |
0 |
0 |
100% |
| src/tests/test_discussions.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_discussions.py |
test_create_discussion_errors |
11 |
0 |
0 |
100% |
| src/tests/test_discussions.py |
test_create_and_get_discussion |
52 |
0 |
0 |
100% |
| src/tests/test_discussions.py |
test_discussion_notifications_regression |
34 |
0 |
0 |
100% |
| src/tests/test_discussions.py |
(no function) |
12 |
0 |
0 |
100% |
| src/tests/test_donations.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_donations.py |
test_one_time_donation_flow |
38 |
0 |
0 |
100% |
| src/tests/test_donations.py |
test_recurring_donation_flow |
47 |
0 |
0 |
100% |
| src/tests/test_donations.py |
test_customer_portal_url |
16 |
0 |
0 |
100% |
| src/tests/test_donations.py |
test_merch_invoice_flow |
12 |
0 |
0 |
100% |
| src/tests/test_donations.py |
test_merch_invoice_flow_nonexistent_user |
12 |
0 |
0 |
100% |
| src/tests/test_donations.py |
fire_stripe_event |
6 |
0 |
0 |
100% |
| src/tests/test_donations.py |
(no function) |
24 |
0 |
0 |
100% |
| src/tests/test_dummy_data.py |
test_add_dummy_data |
4 |
0 |
0 |
100% |
| src/tests/test_dummy_data.py |
(no function) |
5 |
0 |
0 |
100% |
| src/tests/test_editor.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_access_by_normal_user |
6 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_access_by_editor_user |
7 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_access_by_superuser |
7 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_CreateCommunity_invalid_geojson |
6 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_UpdateCommunity_invalid_geojson |
9 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_UpdateCommunity_invalid_id |
7 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_UpdateCommunity |
11 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_CreateCommunity |
8 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_UpdateCommunity2 |
15 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_MakeUserVolunteer |
16 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_MakeUserVolunteer_default_values |
10 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_MakeUserVolunteer_hide_on_team_page |
9 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_MakeUserVolunteer_user_not_found |
6 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_MakeUserVolunteer_already_volunteer |
9 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_MakeUserVolunteer_invalid_date |
7 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_UpdateVolunteer |
20 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_UpdateVolunteer_partial_update |
11 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_UpdateVolunteer_not_found |
7 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_UpdateVolunteer_invalid_started_date |
9 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_UpdateVolunteer_invalid_stopped_date |
9 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_ListVolunteers |
21 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_ListVolunteers_with_past |
19 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_ListVolunteers_ordering |
18 |
0 |
0 |
100% |
| src/tests/test_editor.py |
test_ListVolunteers_empty |
5 |
0 |
0 |
100% |
| src/tests/test_editor.py |
(no function) |
37 |
0 |
0 |
100% |
| src/tests/test_email.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_signup_verification_email |
10 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_report_email |
18 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_reference_report_email_not_sent |
10 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_reference_report_email |
23 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_email_patching_fails |
10 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_email_patching_fails.mock_queue_email |
1 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_email_changed_confirmation_sent_to_new_email |
21 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_do_not_email_security |
22 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_do_not_email_non_security |
8 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_do_not_email_non_security_unsublink |
9 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_email_prefix_config |
22 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_send_donation_email |
19 |
0 |
0 |
100% |
| src/tests/test_email.py |
test_email_deleted_users_regression |
32 |
0 |
0 |
100% |
| src/tests/test_email.py |
(no function) |
30 |
0 |
0 |
100% |
| src/tests/test_events.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_CreateEvent |
235 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_CreateEvent_incomplete_profile |
11 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_ScheduleEvent |
41 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_cannot_overlap_occurrences_schedule |
10 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_cannot_overlap_occurrences_update |
12 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_UpdateEvent_single |
213 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_UpdateEvent_all |
41 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_GetEvent |
114 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_CancelEvent |
57 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_ListEventAttendees |
22 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_ListEventSubscribers |
22 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_ListEventOrganizers |
22 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_TransferEvent |
24 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_SetEventSubscription |
12 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_SetEventAttendance |
14 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_InviteEventOrganizer |
17 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_ListEventOccurrences |
20 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_ListMyEvents |
80 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_ListMyEvents.new_event |
3 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_RemoveEventOrganizer |
46 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_ListEventAttendees_regression |
18 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_event_threads |
30 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_can_overlap_other_events_schedule_regression |
8 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_can_overlap_other_events_update_regression |
10 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_list_past_events_regression |
11 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_community_invite_requests |
46 |
0 |
0 |
100% |
| src/tests/test_events.py |
test_update_event_should_notify_queues_job |
18 |
0 |
0 |
100% |
| src/tests/test_events.py |
(no function) |
41 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
create_schema_from_models |
7 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
populate_testing_resources |
5 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
drop_database |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
autocommit_engine |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
postgres_engine |
6 |
1 |
0 |
83% |
| src/tests/test_fixtures.py |
postgres_conn |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
template_db |
11 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
db |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
db_class |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
_MockCouchersContext.headers |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
generate_user |
40 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
get_user_id_and_token |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
make_friends |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
make_user_block |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
make_user_invisible |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
get_friend_relationship |
4 |
4 |
0 |
0% |
| src/tests/test_fixtures.py |
add_users_to_new_moderation_list |
8 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
CookieMetadataPlugin.__init__ |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
CookieMetadataPlugin.__call__ |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
_MetadataKeeperInterceptor.__init__ |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
_MetadataKeeperInterceptor.intercept_unary_unary |
4 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
auth_api_session |
11 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
api_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
real_api_session |
11 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
real_admin_session |
11 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
real_editor_session |
11 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
real_moderation_session |
11 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
real_account_session |
11 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
real_jail_session |
11 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
gis_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
public_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
FakeRpcError.__init__ |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
FakeRpcError.code |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
FakeRpcError.details |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
_check_user_perms |
10 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
MockGrpcContext.__init__ |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
MockGrpcContext.abort |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
MockGrpcContext.invocation_metadata |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
MockGrpcContext.send_initial_metadata |
1 |
1 |
0 |
0% |
| src/tests/test_fixtures.py |
FakeChannel.__init__ |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
FakeChannel.add_generic_rpc_handlers |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
FakeChannel.unary_unary |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
FakeChannel.unary_unary.fake_handler |
10 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
conversations_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
requests_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
threads_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
discussions_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
donations_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
real_stripe_session |
10 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
real_iris_session |
10 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
pages_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
communities_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
groups_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
blocking_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
notifications_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
account_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
search_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
references_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
galleries_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
reporting_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
events_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
postal_verification_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
bugs_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
resources_session |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
media_session |
13 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
testconfig |
65 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
run_migration_test |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
fast_passwords |
5 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
fast_passwords.fast_hash |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
fast_passwords.fast_verify |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
process_jobs |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
mock_notification_email |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
email_fields |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
Push.__init__ |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
Push.__getattr__ |
4 |
4 |
0 |
0% |
| src/tests/test_fixtures.py |
Push.__repr__ |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
PushCollector.__init__ |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
PushCollector.by_user |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
PushCollector.push_to_user |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
PushCollector.assert_user_has_count |
1 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
PushCollector.assert_user_push_matches_fields |
4 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
PushCollector.assert_user_has_single_matching |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
push_collector |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
Moderator.__init__ |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
Moderator.approve_host_request |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
Moderator.approve_group_chat |
3 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
moderator |
2 |
0 |
0 |
100% |
| src/tests/test_fixtures.py |
(no function) |
203 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
create_upload |
4 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_user_has_profile_gallery |
6 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_GetGalleryEditInfo |
6 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_GetGalleryEditInfo_verified_user |
6 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_GetGalleryEditInfo_not_owner |
7 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_GetGalleryEditInfo_not_found |
6 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_GetGalleryEditInfo_with_photos |
9 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_GetGallery_as_owner |
6 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_GetGallery_as_non_owner |
7 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_GetGallery_not_found |
6 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_AddPhotoToGallery_success |
10 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_AddPhotoToGallery_with_caption |
7 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_AddPhotoToGallery_multiple_photos |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_AddPhotoToGallery_not_owner |
9 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_AddPhotoToGallery_upload_not_owned |
9 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_AddPhotoToGallery_max_capacity |
10 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_AddPhotoToGallery_duplicate_photo |
9 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_AddPhotoToGallery_gallery_not_found |
8 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_RemovePhotoFromGallery_success |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_RemovePhotoFromGallery_not_owner |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_RemovePhotoFromGallery_item_not_found |
6 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_MovePhoto_to_first |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_MovePhoto_to_middle |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_MovePhoto_to_end |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_MovePhoto_noop |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_MovePhoto_not_owner |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_MovePhoto_item_not_found |
6 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_MovePhoto_after_item_not_found |
10 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_UpdatePhotoCaption_success |
9 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_UpdatePhotoCaption_clear_caption |
9 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_UpdatePhotoCaption_not_owner |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_UpdatePhotoCaption_item_not_found |
6 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_remove_and_readd_photo |
10 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_gallery_photo_ordering_preserved |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
test_database_constraints_upload_uniqueness |
12 |
0 |
0 |
100% |
| src/tests/test_galleries.py |
(no function) |
45 |
0 |
0 |
100% |
| src/tests/test_gis.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_gis.py |
TestGIS.test_GetUsers |
9 |
0 |
0 |
100% |
| src/tests/test_gis.py |
TestGIS.test_GetClusteredUsers |
9 |
0 |
0 |
100% |
| src/tests/test_gis.py |
(no function) |
13 |
0 |
0 |
100% |
| src/tests/test_groups.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_groups.py |
TestGroups.test_GetGroup |
121 |
0 |
0 |
100% |
| src/tests/test_groups.py |
TestGroups.test_ListAdmins |
10 |
0 |
0 |
100% |
| src/tests/test_groups.py |
TestGroups.test_ListMembers |
13 |
0 |
0 |
100% |
| src/tests/test_groups.py |
TestGroups.test_ListDiscussions |
14 |
0 |
0 |
100% |
| src/tests/test_groups.py |
TestGroups.test_ListUserGroups |
8 |
0 |
0 |
100% |
| src/tests/test_groups.py |
TestGroups.test_ListOtherUserGroups |
9 |
0 |
0 |
100% |
| src/tests/test_groups.py |
TestGroups.test_ListEvents |
11 |
0 |
0 |
100% |
| src/tests/test_groups.py |
test_JoinGroup_and_LeaveGroup |
19 |
0 |
0 |
100% |
| src/tests/test_groups.py |
test_LeaveGroup_regression |
22 |
0 |
0 |
100% |
| src/tests/test_groups.py |
(no function) |
26 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
test_translations_loaded |
3 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
test_get_string_simple |
3 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
test_get_string_with_substitution |
3 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
test_get_string_fallback_to_english |
3 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
test_get_string_fallback_chain |
3 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
test_get_string_missing |
6 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
test_get_string_missing_component |
6 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
test_get_string_multiple_substitutions |
3 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
test_fallbacks |
8 |
0 |
0 |
100% |
| src/tests/test_i18n.py |
(no function) |
14 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
interceptor_dummy_api |
11 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
_get_histogram_labels_value |
6 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_ok |
3 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_ok.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_all_ignored |
9 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_all_ignored.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_assertion |
6 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_assertion.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_div0 |
6 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_div0.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_raise |
6 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_raise.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_raise_custom |
8 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_logging_interceptor_raise_custom.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_ok_open |
13 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_ok_open.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_sensitive |
17 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_sensitive.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_sensitive_ping |
3 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_exception |
16 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_exception.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_abort |
16 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_abort.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_auth_interceptor |
44 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_auth_cookies |
14 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_tracing_interceptor_auth_api_key |
20 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_auth_levels |
35 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_auth_levels.TestRpc |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
test_auth_levels.gen_args |
1 |
0 |
0 |
100% |
| src/tests/test_interceptors.py |
(no function) |
35 |
0 |
0 |
100% |
| src/tests/test_jail.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_jail.py |
test_jail_basic |
19 |
0 |
0 |
100% |
| src/tests/test_jail.py |
test_JailInfo |
15 |
0 |
0 |
100% |
| src/tests/test_jail.py |
test_AcceptTOS |
33 |
0 |
0 |
100% |
| src/tests/test_jail.py |
test_TOS_increase |
21 |
0 |
0 |
100% |
| src/tests/test_jail.py |
test_SetLocation |
1 |
0 |
0 |
100% |
| src/tests/test_jail.py |
test_MarkUserNeedsLocationUpdate |
20 |
0 |
0 |
100% |
| src/tests/test_jail.py |
test_AcceptCommunityGuidelines |
33 |
0 |
0 |
100% |
| src/tests/test_jail.py |
test_modnotes |
49 |
0 |
0 |
100% |
| src/tests/test_jail.py |
test_modnotes_no_notify |
21 |
0 |
0 |
100% |
| src/tests/test_jail.py |
(no function) |
20 |
0 |
0 |
100% |
| src/tests/test_media.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_media.py |
test_media_upload |
18 |
0 |
0 |
100% |
| src/tests/test_media.py |
(no function) |
12 |
0 |
0 |
100% |
| src/tests/test_model_constraints.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_model_constraints.py |
test_node_constraints |
10 |
0 |
0 |
100% |
| src/tests/test_model_constraints.py |
test_page_constraints |
42 |
0 |
0 |
100% |
| src/tests/test_model_constraints.py |
test_activeness_probes_cant_have_multiple |
14 |
0 |
0 |
100% |
| src/tests/test_model_constraints.py |
(no function) |
13 |
0 |
0 |
100% |
| src/tests/test_models.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_models.py |
test_user_age |
5 |
0 |
0 |
100% |
| src/tests/test_models.py |
test_user_display_joined |
4 |
0 |
0 |
100% |
| src/tests/test_models.py |
test_user_display_last_active |
4 |
0 |
0 |
100% |
| src/tests/test_models.py |
(no function) |
12 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
create_test_host_request_with_moderation |
7 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_create_moderation |
12 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_add_to_moderation_queue |
18 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_moderate_content |
22 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_resolve_queue_item |
18 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_approve_content_via_api |
19 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_create_host_request_creates_moderation_state |
16 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_host_request_no_notification_before_approval |
8 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_shadowed_notification_not_in_list_notifications |
9 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_notification_visible_after_approval |
20 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_shadowed_host_request_visible_to_author_only |
14 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_unlisted_host_request_not_in_lists |
12 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_approved_host_request_in_lists_and_notifications |
25 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_hidden_host_request_invisible_to_all |
32 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_multiple_host_requests_listing_visibility |
28 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_moderation_log_tracking |
24 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_moderation_queue_workflow |
24 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationQueue_empty |
5 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationQueue_with_items |
10 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationQueue_filter_by_trigger |
15 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationQueue_filter_created_before |
20 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationQueue_filter_created_after |
20 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationQueue_filter_created_before_and_after |
23 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationQueue_filter_unresolved |
14 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationQueue_filter_by_author |
34 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationQueue_ordering |
30 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationQueue_pagination_newest_first |
32 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationLog |
17 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationLog_not_found |
6 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationState |
13 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationState_not_found |
6 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_GetModerationState_unspecified_type |
6 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_ModerateContent_approve |
18 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_ModerateContent_not_found |
6 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_ModerateContent_hide |
11 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_ModerateContent_shadow |
11 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_FlagContentForReview |
19 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_group_chat_created_with_moderation_state |
19 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_group_chat_GetModerationState |
14 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_group_chat_moderation_hide |
31 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_group_chat_moderation_shadow |
23 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_auto_approve_moderation_queue_disabled_when_zero |
28 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_auto_approve_moderation_queue_approves_old_items |
42 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_auto_approve_does_not_approve_recent_items |
25 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_auto_approve_does_not_approve_already_approved |
25 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_auto_approve_does_not_approve_moderator_shadowed_items |
29 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_host_request_message_notifications_suppressed_before_approval |
15 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_host_request_status_notifications_suppressed_before_approval |
10 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_host_request_notifications_sent_after_approval |
19 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
test_group_chat_message_notifications_suppressed_before_approval |
28 |
0 |
0 |
100% |
| src/tests/test_moderation.py |
(no function) |
66 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_SetNotificationSettings_preferences_respected_editable |
12 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_SetNotificationSettings_preferences_not_editable |
7 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_unsubscribe |
33 |
2 |
0 |
94% |
| src/tests/test_notifications.py |
test_unsubscribe_do_not_email |
28 |
1 |
0 |
96% |
| src/tests/test_notifications.py |
test_get_do_not_email |
15 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_set_do_not_email |
23 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_list_notifications |
34 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_notifications_seen |
32 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_GetVapidPublicKey |
3 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_RegisterPushNotificationSubscription |
4 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_SendTestPushNotification |
6 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_SendBlogPostNotification |
26 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_get_topic_actions_by_delivery_type |
14 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_event_reminder_email_sent |
14 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_RegisterMobilePushNotificationSubscription |
10 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_RegisterMobilePushNotificationSubscription_android |
7 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_RegisterMobilePushNotificationSubscription_no_device_type |
8 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_RegisterMobilePushNotificationSubscription_re_enable |
13 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_RegisterMobilePushNotificationSubscription_already_exists |
9 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_SendTestMobilePushNotification |
4 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_get_expo_push_receipts |
12 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_get_expo_push_receipts_empty |
3 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_check_expo_push_receipts_success |
27 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_check_expo_push_receipts_device_not_registered |
27 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_check_expo_push_receipts_not_found |
26 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_check_expo_push_receipts_skips_already_checked |
17 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_SendDevPushNotification_success |
5 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_SendDevPushNotification_minimal |
5 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_SendDevPushNotification_disabled |
8 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_SendDevPushNotification_push_notifications_disabled |
9 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_check_expo_push_receipts_skips_too_recent |
17 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
test_check_expo_push_receipts_batch |
27 |
0 |
0 |
100% |
| src/tests/test_notifications.py |
(no function) |
56 |
0 |
0 |
100% |
| src/tests/test_pages.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_create_place_errors |
23 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_create_guide_errors |
33 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_create_page_place |
23 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_create_page_guide |
42 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_get_page |
28 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_update_page |
96 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_owner_not_moderator |
39 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_update_page_errors |
17 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_page_transfer |
111 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_page_photo |
29 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_list_user_places |
9 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_list_other_user_places |
10 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_list_user_guides |
9 |
0 |
0 |
100% |
| src/tests/test_pages.py |
test_list_other_user_guides |
10 |
0 |
0 |
100% |
| src/tests/test_pages.py |
(no function) |
26 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
_monkeypatch_postal_verification_config |
3 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_generate_postal_verification_code |
7 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_disabled |
5 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_happy_path |
43 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_wrong_code |
22 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_code_expiry |
19 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_rate_limit |
15 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_already_in_progress |
8 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_cancel |
11 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_can_cancel_after_postcard_sent |
20 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_list_attempts |
18 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_address_validation |
12 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_postcard_send_failure |
14 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_code_case_insensitive |
17 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_attempt_not_found |
9 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_postal_verification_other_user_attempt |
14 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
test_has_postal_verification_helper |
22 |
0 |
0 |
100% |
| src/tests/test_postal_verification.py |
(no function) |
35 |
0 |
0 |
100% |
| src/tests/test_public.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_public.py |
test_GetPublicMapLayer |
23 |
0 |
0 |
100% |
| src/tests/test_public.py |
test_GetDonationStats_empty |
6 |
0 |
0 |
100% |
| src/tests/test_public.py |
test_GetDonationStats_with_donations |
11 |
0 |
0 |
100% |
| src/tests/test_public.py |
test_GetDonationStats_excludes_merch |
10 |
0 |
0 |
100% |
| src/tests/test_public.py |
test_GetDonationStats_excludes_previous_years |
14 |
0 |
0 |
100% |
| src/tests/test_public.py |
(no function) |
18 |
0 |
0 |
100% |
| src/tests/test_references.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_references.py |
create_host_request |
15 |
0 |
0 |
100% |
| src/tests/test_references.py |
create_host_request_by_date |
12 |
0 |
0 |
100% |
| src/tests/test_references.py |
create_host_reference |
17 |
0 |
0 |
100% |
| src/tests/test_references.py |
create_friend_reference |
4 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_ListPagination |
66 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_ListReference_banned_deleted_users |
27 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_WriteFriendReference |
32 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_WriteFriendReference_with_empty_text |
7 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_WriteFriendReference_with_private_text |
13 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_WriteFriendReference_requires_friendship |
19 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_host_request_states_references |
28 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_WriteHostRequestReference |
45 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_WriteHostRequestReference_private_text |
14 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_GetHostRequestReferenceStatus |
51 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_AvailableWriteReferences_and_ListPendingReferencesToWrite |
124 |
0 |
0 |
100% |
| src/tests/test_references.py |
test_regression_disappearing_refs |
82 |
0 |
0 |
100% |
| src/tests/test_references.py |
(no function) |
35 |
0 |
0 |
100% |
| src/tests/test_reporting.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_reporting.py |
test_reporting |
19 |
0 |
0 |
100% |
| src/tests/test_reporting.py |
(no function) |
10 |
0 |
0 |
100% |
| src/tests/test_requests.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_requests.py |
valid_request_text |
5 |
1 |
0 |
80% |
| src/tests/test_requests.py |
test_create_request |
63 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_create_request_incomplete_profile |
9 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_excessive_requests_are_reported |
29 |
0 |
0 |
100% |
| src/tests/test_requests.py |
add_message |
3 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_GetHostRequest |
14 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_ListHostRequests |
41 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_ListHostRequests_pagination_regression |
42 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_ListHostRequests_active_filter |
14 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_RespondHostRequests |
55 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_get_host_request_messages |
37 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_SendHostRequestMessage |
39 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_get_updates |
46 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_archive_host_request |
17 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_mark_last_seen |
42 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_response_rate |
92 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_request_notifications |
46 |
0 |
0 |
100% |
| src/tests/test_requests.py |
test_quick_decline |
44 |
1 |
0 |
98% |
| src/tests/test_requests.py |
test_host_req_feedback |
45 |
0 |
0 |
100% |
| src/tests/test_requests.py |
(no function) |
38 |
0 |
0 |
100% |
| src/tests/test_resources.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_resources.py |
test_GetTermsOfService |
4 |
0 |
0 |
100% |
| src/tests/test_resources.py |
test_GetCommunityGuidelines |
6 |
0 |
0 |
100% |
| src/tests/test_resources.py |
test_GetRegions |
6 |
0 |
0 |
100% |
| src/tests/test_resources.py |
test_GetLanguages |
6 |
0 |
0 |
100% |
| src/tests/test_resources.py |
test_GetBadges |
20 |
0 |
0 |
100% |
| src/tests/test_resources.py |
(no function) |
10 |
0 |
0 |
100% |
| src/tests/test_search.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_Search |
4 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_UserSearch |
10 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_regression_search_in_area |
12 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_user_search_in_rectangle |
14 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_user_filter_complete_profile |
14 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_user_filter_meetup_status |
14 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_user_filter_language |
18 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_user_filter_strong_verification |
16 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_regression_search_only_with_references |
20 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_user_search_exactly_user_ids |
24 |
0 |
0 |
100% |
| src/tests/test_search.py |
sample_event_data |
3 |
0 |
0 |
100% |
| src/tests/test_search.py |
create_event |
2 |
0 |
0 |
100% |
| src/tests/test_search.py |
create_event._create_event |
1 |
0 |
0 |
100% |
| src/tests/test_search.py |
sample_community |
3 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_EventSearch_no_filters |
4 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_event_search_by_query |
12 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_event_search_by_time |
15 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_event_search_by_circle |
12 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_event_search_by_rectangle |
12 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_event_search_pagination |
22 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_event_search_pagination_with_page_number |
21 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_event_search_online_status |
12 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_event_search_filter_subscription_attendance_organizing_my_communities |
28 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_regression_search_multiple_pages |
11 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_regression_search_no_results |
6 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_user_filter_same_gender_only |
59 |
0 |
0 |
100% |
| src/tests/test_search.py |
test_user_filter_same_gender_only_with_other_filters |
16 |
0 |
0 |
100% |
| src/tests/test_search.py |
(no function) |
42 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
_emulate_iris_callback |
4 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
do_and_check_sv |
53 |
1 |
0 |
98% |
| src/tests/test_strong_verification.py |
monkeypatch_sv_config |
8 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
test_strong_verification_happy_path |
113 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
test_strong_verification_delete_data |
22 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
test_strong_verification_expiry |
30 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
test_strong_verification_regression |
5 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
test_strong_verification_regression2 |
8 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
test_strong_verification_disabled |
6 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
test_strong_verification_delete_data_cant_reverify |
36 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
test_strong_verification_duplicate_other_user |
35 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
test_strong_verification_non_passport |
15 |
0 |
0 |
100% |
| src/tests/test_strong_verification.py |
(no function) |
37 |
0 |
0 |
100% |
| src/tests/test_templates.py |
_render_template |
6 |
0 |
0 |
100% |
| src/tests/test_templates.py |
_greeting_dict |
1 |
0 |
0 |
100% |
| src/tests/test_templates.py |
test_v2translate_no_substitutions |
2 |
0 |
0 |
100% |
| src/tests/test_templates.py |
test_v2translate_multiple_languages |
2 |
0 |
0 |
100% |
| src/tests/test_templates.py |
test_v2translate_with_substitutions |
2 |
0 |
0 |
100% |
| src/tests/test_templates.py |
test_v2translate_escaping |
2 |
0 |
0 |
100% |
| src/tests/test_templates.py |
test_v2translate_translation_tags |
2 |
0 |
0 |
100% |
| src/tests/test_templates.py |
test_v2translate_newlines_br |
2 |
0 |
0 |
100% |
| src/tests/test_templates.py |
test_v2translate_plain_strip_tags |
2 |
0 |
0 |
100% |
| src/tests/test_templates.py |
test_v2translate_plain_strip_links |
2 |
0 |
0 |
100% |
| src/tests/test_templates.py |
(no function) |
16 |
0 |
0 |
100% |
| src/tests/test_threads.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_threads.py |
test_threads_basic |
35 |
0 |
0 |
100% |
| src/tests/test_threads.py |
test_threads_errors |
26 |
0 |
0 |
100% |
| src/tests/test_threads.py |
pagination_test |
9 |
0 |
0 |
100% |
| src/tests/test_threads.py |
test_threads_pagination |
7 |
0 |
0 |
100% |
| src/tests/test_threads.py |
(no function) |
15 |
0 |
0 |
100% |
| src/tests/test_utils.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_utils.py |
test_page_token_time_python |
2 |
0 |
0 |
100% |
| src/tests/test_utils.py |
test_page_token_time_db |
8 |
0 |
0 |
100% |
| src/tests/test_utils.py |
test_wrap_coordinate |
4 |
0 |
0 |
100% |
| src/tests/test_utils.py |
(no function) |
13 |
0 |
0 |
100% |
| src/tests/test_verification.py |
_ |
1 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_ChangePhone |
35 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_ChangePhone.deny_operator |
2 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_ChangePhone.succeed |
2 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_ChangePhone_ratelimit |
13 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_ChangePhone_ratelimit.succeed |
1 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_VerifyPhone |
16 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_VerifyPhone_antibrute |
10 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_phone_uniqueness |
28 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_phone_uniqueness.succeed |
1 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_send_sms |
18 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_send_sms_disabled |
2 |
0 |
0 |
100% |
| src/tests/test_verification.py |
test_sms_verification_no_donation |
6 |
0 |
0 |
100% |
| src/tests/test_verification.py |
(no function) |
24 |
0 |
0 |
100% |
| src/tests/test_visible_users.py |
_FakeContext.__init__ |
1 |
0 |
0 |
100% |
| src/tests/test_visible_users.py |
test_is_visible_property |
11 |
0 |
0 |
100% |
| src/tests/test_visible_users.py |
test_select_dot_where_users_visible |
9 |
0 |
0 |
100% |
| src/tests/test_visible_users.py |
test_select_dot_where_users_column_visible |
15 |
0 |
0 |
100% |
| src/tests/test_visible_users.py |
(no function) |
11 |
0 |
0 |
100% |