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
__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
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
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.py integrations: Fix broken screenshots configuration. 2023-07-17 09:23:01 -07:00
test_integrations_dev_panel.py middleware: Fix exception logging format on JSON views. 2023-09-06 09:14:49 -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.py tests: Clean up check_has_permission_policies. 2023-09-18 16:55:05 -07:00
test_message_edit_notifications.py notifications: Remove the stray notification trigger strings. 2023-07-24 11:02:14 -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
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.py
test_queue_worker.py python: Delete superfluous parens. 2023-09-13 13:40:19 -07: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.py inbox: Add inbox as default view. 2023-09-18 12:17:49 -07: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_redis_utils.py
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
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_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.py ruff: Enable B023 Function definition does not bind loop variable. 2023-09-11 18:03:45 -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_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
test_zephyr.py zephyr: Check PERSONAL_ZMIRROR_SERVER before updating cache. 2022-08-12 17:08:04 -07:00