zulip/zerver/tests
Alex Vandiver 22837fc1b4 message_edit: Carry the QuerySet through as much as possible.
Rather than pass around a list of message objects in-memory, we
instead keep the same constructed QuerySet which includes the later
propagated messages (if any), and use that same query to pick out
affected Attachment objects, rather than limiting to the set of ids.
This is not necessarily a win -- the list of message-ids *may* be very
long, and thus the query may be more concise, easier to send to
PostgreSQL, and faster for PostgreSQL to parse.  However, the list of
ids is almost certainly better-indexed.

After processing the move, the QuerySet must be re-defined as a search
of ids (and possibly a very long list of such), since there is no
other way which is guaranteed to correctly single out the moved
messages.  At this point, it is mostly equivalent to the list of
Message objects, and certainly takes no less memory.
2024-02-14 12:27:03 -08:00
..
fixtures markdown: Prevent OverflowError with large time integers. 2024-01-05 12:01:06 -08: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 mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
test_audit_log.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
test_auth_backends.py realm_settings: Improve authentication_methods param validation. 2024-02-02 17:26:32 -08:00
test_bots.py tests: Clear in-memory Client caches before testing query counts. 2024-02-14 12:27:03 -08:00
test_cache.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_compatibility.py
test_create_video_call.py test_create_video_call: Add missing not None assertions. 2023-11-15 15:27:54 -08:00
test_custom_profile_data.py tests: Clear in-memory Client caches before testing query counts. 2024-02-14 12:27:03 -08:00
test_data_types.py
test_decorators.py tests: Clear in-memory Client caches before testing query counts. 2024-02-14 12:27:03 -08:00
test_delete_unclaimed_attachments.py models: Extract zerver.models.clients. 2023-12-16 22:08:44 -08:00
test_digest.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
test_docs.py features: Add rewritten heading content. 2024-02-13 15:11:02 -08:00
test_drafts.py ruff: Fix PIE808 Unnecessary `start` argument in `range`. 2023-09-01 14:57:01 -07:00
test_email_change.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_email_log.py email-log: Update CSS styles for dev environment email log. 2024-02-12 11:35:36 -08:00
test_email_mirror.py tests: Reserve "Internal" client, used by email gateway and topic moves. 2024-02-14 12:27:03 -08:00
test_email_notifications.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_embedded_bot_system.py models: Extract zerver.models.bots. 2023-12-16 22:08:44 -08:00
test_event_queue.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
test_event_system.py models: Extract zerver.models.clients. 2023-12-16 22:08:44 -08:00
test_events.py messages: Update new user signup notification. 2024-02-06 18:41:05 -08:00
test_example.py email-log: Update CSS styles for dev environment email log. 2024-02-12 11:35:36 -08:00
test_external.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
test_github.py
test_gitter_importer.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_has_request_variables.py test_helpers: Remove unnecessary HostRequestMock.body override. 2023-10-12 12:28:41 -07:00
test_health.py middleware: Send got_request_exception signal for JSON 500 errors. 2023-10-04 17:25:20 -07:00
test_home.py tests: Clear in-memory Client caches before testing query counts. 2024-02-14 12:27:03 -08:00
test_hotspots.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_i18n.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
test_import_export.py queue_processors: Process user_activity in one query. 2024-01-22 16:25:13 -08:00
test_integrations.py integrations: Fix broken screenshots configuration. 2023-07-17 09:23:01 -07:00
test_integrations_dev_panel.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_internet.py
test_invite.py messages: Update new user signup notification. 2024-02-06 18:41:05 -08:00
test_legacy_subject.py
test_link_embed.py requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
test_management_commands.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
test_markdown.py models: Extract zerver.models.clients. 2023-12-16 22:08:44 -08:00
test_mattermost_importer.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_message_dict.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
test_message_edit.py message_edit: Carry the QuerySet through as much as possible. 2024-02-14 12:27:03 -08:00
test_message_edit_notifications.py actions: Rename *topic local variables to *topic_name. 2024-01-15 09:40:43 -08:00
test_message_fetch.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
test_message_flags.py message: Add a bulk_access_stream_messages_query method. 2024-02-14 12:27:03 -08:00
test_message_notification_emails.py requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
test_message_send.py tests: Rename *topic local variables to *topic_name. 2024-01-15 09:40:43 -08:00
test_message_topics.py tests: Rename *topic local variables to *topic_name. 2024-01-15 09:40:43 -08:00
test_messages.py models: Extract zerver.models.recipients. 2023-12-16 22:08:44 -08:00
test_middleware.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_migrations.py models: Rename 'UserHotspot' model to 'OnboardingStep'. 2023-12-06 18:19:20 -08:00
test_mirror_users.py models: Extract zerver.models.clients. 2023-12-16 22:08:44 -08:00
test_muted_users.py python: Switch mocking of timezone_now to time_machine. 2023-11-28 15:10:39 -08:00
test_new_users.py messages: Update new user signup notification. 2024-02-06 18:41:05 -08:00
test_notification_data.py models: Extract zerver.models.scheduled_jobs. 2023-12-16 22:08:44 -08:00
test_onboarding.py
test_openapi.py openapi: Represent OpenAPI parameters with a Parameter class. 2024-02-05 19:57:21 -05:00
test_outgoing_http.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
test_outgoing_webhook_interfaces.py models: Extract zerver.models.bots. 2023-12-16 22:08:44 -08:00
test_outgoing_webhook_system.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
test_populate_db.py populate_db: Import timedelta from its canonical module. 2023-03-05 14:46:28 -08:00
test_presence.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_push_notifications.py push_notifs: Gracefully handle exception when server cant push. 2024-02-07 10:36:33 -08:00
test_queue.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
test_queue_worker.py test_queue_worker: Use integer epoch values. 2024-01-22 18:42:55 -08:00
test_rate_limiter.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
test_reactions.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_read_receipts.py codespell: Fix typos caught by codespell. 2023-10-09 11:55:15 -07:00
test_realm.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
test_realm_domains.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_realm_emoji.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08: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 requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
test_realm_playgrounds.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_recipient_parsing.py request: Extract out methods from 'scheduled_messages' to reuse. 2023-10-10 17:15:28 -07:00
test_redis_utils.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
test_report.py zerver: Remove now-unused report/ endpoints. 2023-05-09 13:16:28 -07:00
test_retention.py models: Extract zerver.models.clients. 2023-12-16 22:08:44 -08:00
test_rocketchat_importer.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_scheduled_messages.py python: Consistently use from…import for datetime. 2023-12-05 12:01:18 -08:00
test_scim.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08: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
test_service_bot_system.py models: Extract zerver.models.scheduled_jobs. 2023-12-16 22:08:44 -08:00
test_sessions.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_settings.py models: Extract zerver.models.scheduled_jobs. 2023-12-16 22:08:44 -08:00
test_signup.py tests: Reserve "Internal" client, used by email gateway and topic moves. 2024-02-14 12:27:03 -08:00
test_slack_importer.py import: Support shared users in huddles/DMs. 2024-01-22 16:34:59 -08:00
test_slack_message_conversion.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
test_soft_deactivation.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
test_subdomains.py
test_submessage.py tests: Improve automated tests for submessages. 2023-07-06 16:35:46 -07:00
test_subs.py tests: Reserve "Internal" client, used by email gateway and topic moves. 2024-02-14 12:27:03 -08: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
test_timezone.py
test_tornado.py python: Consistently use from…import for urllib.parse. 2023-12-05 13:03:07 -08:00
test_transfer.py requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
test_tutorial.py models: Extract zerver.models.users. 2023-12-16 22:08:44 -08:00
test_typed_endpoint.py requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
test_typing.py tests: Rename *topic local variables to *topic_name. 2024-01-15 09:40:43 -08:00
test_upload.py tests: Clear in-memory Client caches before testing query counts. 2024-02-14 12:27:03 -08:00
test_upload_local.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_upload_s3.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_urls.py config_error: Return status code 500. 2023-10-11 17:13:01 -07:00
test_user_groups.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
test_user_status.py models: Extract zerver.models.clients. 2023-12-16 22:08:44 -08:00
test_user_topics.py user_topics: Validate 'topic' parameter length <= max_topic_length. 2024-01-04 09:43:27 -08:00
test_users.py tests: Reserve "Internal" client, used by email gateway and topic moves. 2024-02-14 12:27:03 -08:00
test_validators.py validators: Split out test_validators. 2023-08-11 16:43:12 -07:00
test_webhooks_common.py tests: Rename *topic local variables to *topic_name. 2024-01-15 09:40:43 -08: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 models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00