zulip/zerver/tests
Alex Vandiver 5ee4b642ad views: Add a /health healthcheck endpoint.
This endpoint verifies that the services that Zulip needs to function
are running, and Django can talk to them.  It is designed to be used
as a readiness probe[^1] for Zulip, either by Kubernetes, or some other
reverse-proxy load-balancer in front of Zulip.  Because of this, it
limits access to only localhost and the IP addresses of configured
reverse proxies.

Tests are limited because we cannot stop running services (which would
impact other concurrent tests) and there would be extremely limited
utility to mocking the very specific methods we're calling to raising
the exceptions that we're looking for.

[^1]: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
2023-09-20 09:53:59 -07:00
..
fixtures fenced_code: Enable code-highlighting without language markers. 2023-08-29 18:16:11 -07:00
images emoji: Support animated PNGs. 2022-03-15 12:47:21 -07:00
__init__.py
test_alert_words.py alert_words: Migrate alert_words to use @typed_endpoint. 2023-09-08 08:20:17 -07:00
test_attachments.py upload: Rename delete_message_image to use word "attachment". 2023-03-02 16:36:19 -08:00
test_audit_log.py tests: Use function to create realm rather than django ORM. 2023-09-07 14:21:01 -07:00
test_auth_backends.py python: Elide unnecessary list wrappers. 2023-09-13 12:41:23 -07:00
test_bots.py bots: Remove subscription from inaccessible streams on reactivating bot. 2023-08-16 15:37:37 -07:00
test_cache.py ruff: Fix N818 exception name should be named with an Error suffix. 2022-11-17 16:52:00 -08:00
test_compatibility.py ruff: Fix RSE102 Unnecessary parentheses on raised exception. 2023-02-04 16:34:55 -08:00
test_create_video_call.py compose: Verify request payload in Zoom meeting creation test 2023-08-29 17:09:43 -07:00
test_custom_profile_data.py settings: Add backend code for using user email_address_visibility setting. 2023-02-10 17:35:49 -08:00
test_data_types.py data_types: Generalize StringDictType. 2020-09-25 11:43:19 -07:00
test_decorators.py ruff: Fix PIE808 Unnecessary start argument in range. 2023-09-01 14:57:01 -07:00
test_delete_unclaimed_attachments.py lint: Fix lint issues caught after rebasing. 2023-08-06 13:47:38 -07:00
test_digest.py digest: Clear the cache once we move to a new realm / cutoff value. 2023-09-13 13:25:59 -07:00
test_docs.py help: Add gear menu icons to relative links. 2023-08-07 11:40:44 -07:00
test_drafts.py ruff: Fix PIE808 Unnecessary start argument in range. 2023-09-01 14:57:01 -07:00
test_email_change.py emails: Update subject for confirm_new_email to have realm host. 2023-09-17 15:12:21 -07:00
test_email_log.py emails: Add new onboarding email with guide for organization type. 2023-04-10 08:38:09 -07:00
test_email_mirror.py ruff: Fix PIE808 Unnecessary start argument in range. 2023-09-01 14:57:01 -07:00
test_email_notifications.py send_email: Broaden type of context dict. 2023-08-30 11:54:28 -07:00
test_embedded_bot_system.py tests: Add assert_message_stream_name 2023-08-10 18:13:43 -07:00
test_event_queue.py notifications: Rename 'pm' to 'dm' in 'RecipientInfoResult' dataclass. 2023-08-10 17:41:49 -07:00
test_event_system.py api-docs: Fix documentation of realm_emoji in register response. 2023-08-16 14:32:20 -07:00
test_events.py inbox: Add inbox as default view. 2023-09-18 12:17:49 -07:00
test_example.py tests: Add assert_message_stream_name 2023-08-10 18:13:43 -07:00
test_external.py python: Delete superfluous parens. 2023-09-13 13:40:19 -07:00
test_github.py ruff: Fix N818 exception name should be named with an Error suffix. 2022-11-17 16:52:00 -08:00
test_gitter_importer.py models: Always search Messages with a realm_id or id limit. 2023-09-11 15:00:37 -07:00
test_has_request_variables.py requests: Split out test_has_request_variables. 2023-08-11 16:43:12 -07:00
test_health.py views: Add a /health healthcheck endpoint. 2023-09-20 09:53:59 -07:00
test_home.py invite: Add new setting for "Who can create multiuse invite links". 2023-09-07 14:21:01 -07:00
test_hotspots.py actions: Split out zerver.actions.create_user. 2022-04-14 17:14:35 -07:00
test_i18n.py email-templates: Add account_registered email templates. 2023-08-18 16:25:48 -07:00
test_import_export.py python: Delete superfluous parens. 2023-09-13 13:40:19 -07:00
test_integrations_dev_panel.py middleware: Fix exception logging format on JSON views. 2023-09-06 09:14:49 -07:00
test_integrations.py integrations: Fix broken screenshots configuration. 2023-07-17 09:23:01 -07:00
test_internet.py ruff: Fix B017 assertRaises(Exception): should be considered evil. 2022-11-03 12:10:15 -07:00
test_invite.py tests: Clean up check_has_permission_policies. 2023-09-18 16:55:05 -07:00
test_legacy_subject.py tests: Consistently JSON-encode ‘to’ parameter 2022-09-13 11:05:37 -07:00
test_link_embed.py message: Access realm object directly from message. 2023-08-23 11:38:32 -07:00
test_management_commands.py send_custom_email: Stop turning every user query into an id-based set. 2023-08-09 15:49:49 -07:00
test_markdown.py markdown: Fix URL link topic skipping query. 2023-09-08 16:17:11 -07:00
test_mattermost_importer.py messages: Switch limits from sender__realm to realm. 2023-09-11 15:00:37 -07:00
test_message_dict.py per-request caches: Add per_request_cache library. 2023-08-11 11:09:34 -07:00
test_message_edit_notifications.py notifications: Remove the stray notification trigger strings. 2023-07-24 11:02:14 -07:00
test_message_edit.py tests: Clean up check_has_permission_policies. 2023-09-18 16:55:05 -07:00
test_message_fetch.py python: Elide unnecessary list wrappers. 2023-09-13 12:41:23 -07:00
test_message_flags.py response: Remove "result: partially_completed" for success responses. 2023-09-18 13:18:24 -07:00
test_message_notification_emails.py tests: Make soft-reactivation tests readable. 2023-09-18 16:55:06 -07:00
test_message_send.py message_send: Fix wildcard_mentioned flag unset for few participants. 2023-08-16 11:31:56 -07:00
test_message_topics.py response: Remove "result: partially_completed" for success responses. 2023-09-18 13:18:24 -07:00
test_messages.py notifications: Rename 'pm' to 'dm' in 'RecipientInfoResult' dataclass. 2023-08-10 17:41:49 -07:00
test_middleware.py python: Delete superfluous parens. 2023-09-13 13:40:19 -07:00
test_migrations.py migrations: Add indexes with realm_id. 2023-09-11 15:00:37 -07:00
test_mirror_users.py backend-tests: Update "private message" or "PM" to "direct message". 2023-06-23 11:24:13 -07:00
test_muted_users.py docs: Fix typos caught by ‘typos’. 2023-09-06 18:59:05 -07:00
test_new_users.py create-user: Remove notifications sent to admin realm. 2023-03-13 12:28:26 -07:00
test_notification_data.py notifications: Rename 'pm' to 'dm' in 'RecipientInfoResult' dataclass. 2023-08-10 17:41:49 -07:00
test_onboarding.py python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
test_openapi.py drafts: Migrate drafts to use @typed_endpoint. 2023-09-08 08:20:17 -07:00
test_outgoing_http.py test: Replace occurences of uri with url. 2023-04-08 16:27:55 -07:00
test_outgoing_webhook_interfaces.py notification_trigger: Rename private_message to direct_message. 2023-08-10 17:41:49 -07:00
test_outgoing_webhook_system.py tests: Add assert_message_stream_name 2023-08-10 18:13:43 -07:00
test_populate_db.py populate_db: Import timedelta from its canonical module. 2023-03-05 14:46:28 -08:00
test_presence.py presence: Support null values in UserPresence. 2023-04-26 14:26:47 -07:00
test_push_notifications.py tests: Make soft-reactivation tests readable. 2023-09-18 16:55:06 -07:00
test_queue_worker.py python: Delete superfluous parens. 2023-09-13 13:40:19 -07:00
test_queue.py test_queue_error_json: Acknowledge the received message. 2022-01-21 13:38:13 -08:00
test_rate_limiter.py python: Delete superfluous parens. 2023-09-13 13:40:19 -07:00
test_reactions.py emojis: Use get_emoji_data. 2023-07-17 09:35:53 -07:00
test_read_receipts.py muted users: Make file naming consistent. 2023-02-10 15:39:57 -08:00
test_realm_domains.py realm_domains: Allow only owners to add, edit or delete domains. 2022-09-16 15:27:52 -07:00
test_realm_emoji.py tests: Clean up check_has_permission_policies. 2023-09-18 16:55:05 -07:00
test_realm_export.py migration: Rename extra_data_json to extra_data in audit log models. 2023-08-16 17:18:14 -07:00
test_realm_linkifiers.py migration: Rename extra_data_json to extra_data in audit log models. 2023-08-16 17:18:14 -07:00
test_realm_playgrounds.py realm_playgrounds: Refactor error handling for validation on creation. 2023-07-24 17:40:59 -07:00
test_realm.py inbox: Add inbox as default view. 2023-09-18 12:17:49 -07:00
test_redis_utils.py typing: Fix missing attribtute of RedisUtilsTest. 2022-06-23 22:05:12 -07:00
test_report.py zerver: Remove now-unused report/ endpoints. 2023-05-09 13:16:28 -07:00
test_retention.py models: Always search Messages with a realm_id or id limit. 2023-09-11 15:00:37 -07:00
test_rocketchat_importer.py messages: Switch limits from sender__realm to realm. 2023-09-11 15:00:37 -07:00
test_scheduled_messages.py tests: Access realm directly from ScheduledMessage object. 2023-08-23 11:38:32 -07:00
test_scim.py scim: Add supporting for syncing the user role. 2023-09-15 13:15:45 -07:00
test_send_email.py docs: Document how to use SMTP without authentication. 2023-02-27 11:59:48 -08:00
test_server_settings.py settings: Make SHARED_SECRET mandatory. 2022-08-25 12:13:03 -07:00
test_service_bot_system.py notification_trigger: Rename private_message to direct_message. 2023-08-10 17:41:49 -07:00
test_sessions.py black: Reformat with Black 23. 2023-02-02 10:40:13 -08:00
test_settings.py user_settings: Add new web_stream_unreads_count_display_policy field. 2023-09-13 18:45:45 -07:00
test_signup.py tests: Make soft-reactivation tests readable. 2023-09-18 16:55:06 -07:00
test_slack_importer.py ruff: Fix PERF102 Using only the keys/values of a dict. 2023-08-07 17:23:55 -07:00
test_slack_message_conversion.py tests: Consistently use assert_length helper. 2021-05-19 11:55:56 -07:00
test_soft_deactivation.py ruff: Fix PERF401 Use a list comprehension to create a transformed list. 2023-08-07 17:23:55 -07:00
test_subdomains.py subdomains: Extend tests for for same-host when STATIC_URL has domain. 2023-02-14 17:17:06 -05:00
test_submessage.py tests: Improve automated tests for submessages. 2023-07-06 16:35:46 -07:00
test_subs.py management: Rename command reactivate_stream -> unarchive_stream. 2023-09-19 15:03:33 -07:00
test_templates.py widgets: Rename confusing attribute name in tabbed_sections.py. 2023-08-31 11:55:28 -07:00
test_thumbnail.py test_helpers: Switch add/remove_ratelimit to a contextmanager. 2023-06-12 12:55:27 -07:00
test_timeout.py test_timeout: Skip test_timeout_warn on Python 3.11 for coverage issue. 2023-05-18 11:52:22 -07:00
test_timestamp.py ruff: Fix N818 exception name should be named with an Error suffix. 2022-11-17 16:52:00 -08:00
test_timezone.py ruff: Fix DTZ001 datetime.datetime() without tzinfo argument. 2023-01-04 16:25:07 -08:00
test_tornado.py test_tornado: Avoid deprecated AsyncHTTPTestCase. 2022-07-05 17:54:17 -07:00
test_transfer.py upload: Rename upload_message_file to use word "attachment". 2023-03-02 16:36:19 -08:00
test_tutorial.py settings: Change "Display settings" to "Preferences". 2023-07-12 07:09:03 -07:00
test_typed_endpoint.py webhooks: Migrate transifex to use endpoint to use @typed_endpoint. 2023-09-08 08:20:17 -07:00
test_typing.py message-type: Add support for "direct" as value for type parameter. 2023-04-18 12:29:33 -07:00
test_upload_local.py ruff: Collapse short multi-line import statements. 2023-08-02 17:41:41 -07:00
test_upload_s3.py ruff: Collapse short multi-line import statements. 2023-08-02 17:41:41 -07:00
test_upload.py ruff: Enable B023 Function definition does not bind loop variable. 2023-09-11 18:03:45 -07:00
test_urls.py url tests: Mock out html_to_text. 2023-07-02 16:18:24 -07:00
test_user_groups.py tests: Clean up check_has_permission_policies. 2023-09-18 16:55:05 -07:00
test_user_status.py test_classes: Rename and refactor 'tornado_redirected_to_list'. 2023-04-07 09:45:26 -07:00
test_user_topics.py ruff: Collapse short multi-line import statements. 2023-08-02 17:41:41 -07:00
test_users.py models: Always search Messages with a realm_id or id limit. 2023-09-11 15:00:37 -07:00
test_validators.py validators: Split out test_validators. 2023-08-11 16:43:12 -07:00
test_webhooks_common.py backend-tests: Update "private message" or "PM" to "direct message". 2023-06-23 11:24:13 -07:00
test_widgets.py widgets: Add test for tokenizing widget type on newline. 2023-09-13 12:42:35 -07:00
test_zcommand.py tests: Refactor away result.json() calls with helpers. 2022-06-06 23:06:00 -07:00
test_zephyr.py zephyr: Check PERSONAL_ZMIRROR_SERVER before updating cache. 2022-08-12 17:08:04 -07:00