zulip/zerver/tests
Harshit Bansal 25fa9a25ff emoji: Add support for animated GIF images.
This commit adds 'resize_gif()' function which extracts each frame,
resize it and coalesces them again to form the resized GIF while
preserving the duration of the GIF. I read some stackoverflow
answers all of which were referring to BiggleZX's script
(https://gist.github.com/BigglesZX/4016539) for working with animated
GIF. I modified the script to fit to our usecase and did some manual
testing but the function was failing for some specific GIFs and was not
preserving the duration of animation. So I went ahead and read about
GIF format itself as well as PIL's `GifImagePlugin` code and came up
with this simple function which gets the worked done in a much cleaner
way. I tested this function on a number of GIF images from giphy.com
and it resized all of them correctly.

Fixes: #9945.
2018-08-04 11:46:58 -07:00
..
fixtures thumbnails: Rename size value 'original' to 'full'. 2018-07-30 13:00:23 -07:00
images upload: Add test jpg image with no exif data. 2018-05-31 08:08:59 -07:00
__init__.py
test_alert_words.py alert words: Return the updated list when adding/removing words. 2018-07-13 01:01:00 +05:30
test_archive.py archives: Change the topic/<topic_name> code path to use topics prefix. 2018-07-14 10:39:35 +05:30
test_attachments.py lint: Prevent `self: Any` annotations. 2017-12-08 19:00:18 -08:00
test_audit_log.py bulk_remove_subscriptions: Pass client object in. 2018-08-01 16:48:31 -07:00
test_auth_backends.py auth: Fix bug with subdomains and GitHub auth causing apparent logouts. 2018-07-10 16:49:00 +05:30
test_bots.py bots: Enforce bot creation policy on reactivating bots. 2018-07-27 10:31:38 -07:00
test_bugdown.py thumbnails: Rename size value 'original' to 'full'. 2018-07-30 13:00:23 -07:00
test_cache.py tests: Add 100% test coverage to zerver/apps.py. 2018-05-14 10:36:10 -07:00
test_compatibility.py zerver/tests: Use python 3 syntax for typing in most files. 2017-11-16 21:52:01 -08:00
test_custom_profile_data.py custom fields: Allow list of users in user type of custom fields. 2018-06-16 09:37:49 -07:00
test_decorators.py mypy: Fix type errors relate to 'mock'. 2018-07-28 15:34:54 -07:00
test_digest.py models: Rename Realm.show_digest_email field. 2018-08-01 11:05:58 -07:00
test_docs.py api docs: Merge docs for sending stream and private messages. 2018-07-26 10:24:01 -07:00
test_email_change.py registration: Use tokenized noreply address in email change. 2018-06-23 12:03:30 -07:00
test_email_log.py zerver/tests: Use python 3 syntax for typing. 2017-11-18 15:35:57 -08:00
test_email_mirror.py zerver/tests: Change use of typing.Text to str. 2018-05-10 14:19:49 -07:00
test_embedded_bot_system.py mypy: test_embedded_bot_system.py: add asserts & remove from mypy.ini. 2018-06-19 10:48:38 -07:00
test_event_queue.py tornado: Split get_events_backend into two functions. 2018-07-30 12:28:31 -07:00
test_events.py bulk_remove_subscriptions: Pass client object in. 2018-08-01 16:48:31 -07:00
test_external.py zerver/tests: Change use of typing.Text to str. 2018-05-12 15:22:39 -07:00
test_feedback.py Add basic test for FeedbackBot. 2018-03-04 13:31:33 -08:00
test_gitter_importer.py import: Add gitter import file in zerver/data_import directory. 2018-08-01 11:52:14 -07:00
test_home.py page_params: Include avatars and similar data in cross-realm bots. 2018-08-01 15:09:11 -07:00
test_hotspots.py hotspots: Add ALWAYS_SEND_ALL_HOTSPOTS in dev_settings. 2018-03-19 10:39:43 -07:00
test_i18n.py test_i18n: Stop using six.moves for SimpleCookie. 2018-05-09 20:45:45 -07:00
test_import_export.py import: Import BotStorageData and BotConfigData. 2018-07-23 08:21:00 -07:00
test_json_encoder_for_html.py zerver: Remove simplejson dependency. 2017-11-21 21:51:48 -08:00
test_link_embed.py mypy: test_link_embed.py: add assert & remove from mypy.ini. 2018-06-19 10:48:38 -07:00
test_logging_handlers.py mypy: Set local_partial_types = True. 2018-05-21 22:41:00 -07:00
test_management_commands.py management: Add library for getting a client object. 2018-08-01 16:40:15 -07:00
test_message_edit_notifications.py zerver/lib/notifications: Add stream email notifications. 2018-07-14 12:19:33 +05:30
test_messages.py message: Add function to check message access in bulk. 2018-07-28 15:12:55 -07:00
test_middleware.py errors: Use a setting to control the stream for slow-query logs. 2018-07-30 17:40:20 -07:00
test_migrations.py migration_tests: Document the migration test framework. 2018-05-21 09:59:55 -07:00
test_muting.py tests: Replace api_auth usages with auth methods in zerver/tests. 2017-12-18 09:24:09 -05:00
test_narrow.py Enable pycodestyle W605 (invalid escape sequence). 2018-07-03 16:54:46 +02:00
test_new_users.py emails: Show HHMM timezone on new login emails. 2018-08-03 17:15:03 -07:00
test_notifications.py thumbnails: Rename data-original to data-src-fullsize. 2018-07-30 13:00:23 -07:00
test_onboarding.py create_realm_internal_bots: Refactor to extract main op as a function. 2018-05-23 11:53:22 +05:30
test_openapi.py api docs: Implement an exception list for schema validation. 2018-08-02 15:54:41 -07:00
test_outgoing_webhook_interfaces.py slack webhooks: Eliminate unnecessary use of Service model. 2018-07-23 08:12:08 -07:00
test_outgoing_webhook_system.py zerver/tests: Change use of typing.Text to str. 2018-05-12 15:22:39 -07:00
test_presence.py tornado: Split get_events_backend into two functions. 2018-07-30 12:28:31 -07:00
test_push_notifications.py push_notifications: Fix interface for handle_remove_push_notification. 2018-08-01 16:36:42 -07:00
test_queue.py requirements: Upgrade pyflakes to 2.0.0. 2018-05-24 11:31:36 -07:00
test_queue_worker.py notifications: Format missed_messages argument as a dict. 2018-07-14 11:34:04 +05:30
test_reactions.py reactions: Allow using emoji_name for removing reactions. 2018-07-11 19:41:43 +05:30
test_realm.py zerver/tests: Change use of typing.Text to str. 2018-05-12 15:22:39 -07:00
test_realm_domains.py models: Rename Realm.restricted_to_domain field. 2018-07-31 09:28:33 -07:00
test_realm_emoji.py emoji: Make uploading new realm emoji inaccessible for guest users. 2018-06-16 06:33:14 -07:00
test_realm_filters.py Enable pycodestyle W605 (invalid escape sequence). 2018-07-03 16:54:46 +02:00
test_report.py tests: Refactor use of test and webhook data fixtures. 2018-04-19 21:50:29 -07:00
test_retention.py Eliminate get_user_profile_by_email from test_classes. 2017-11-26 15:47:56 -08:00
test_service_bot_system.py bots: Fix behavior for bots mentioned in PMs. 2018-06-03 22:29:15 -07:00
test_sessions.py zerver/tests: Change use of typing.Text to str. 2018-05-10 14:19:49 -07:00
test_settings.py models: Rename Realm.restricted_to_domain field. 2018-07-31 09:28:33 -07:00
test_signup.py models: Rename Realm.restricted_to_domain field. 2018-07-31 09:28:33 -07:00
test_slack_importer.py import: Add slack import files in zerver/data_import directory. 2018-08-01 11:52:14 -07:00
test_slack_message_conversion.py import: Add slack import files in zerver/data_import directory. 2018-08-01 11:52:14 -07:00
test_soft_deactivation.py populate_db: Add new user of "guest" type. 2018-04-20 16:20:00 -07:00
test_subdomains.py zerver/tests: Use python 3 syntax for typing (part 4). 2017-11-21 22:01:19 -08:00
test_submessage.py submessages: Add submessage_id to submessage event. 2018-05-30 14:47:36 -07:00
test_subs.py bulk_remove_subscriptions: Pass client object in. 2018-08-01 16:48:31 -07:00
test_templates.py markdown: Render nested multi-line code blocks correctly. 2018-07-12 12:22:04 +05:30
test_thumbnail.py thumbnails: Rename size value 'original' to 'full'. 2018-07-30 13:00:23 -07:00
test_timestamp.py zerver/tests: Use python 3 syntax for typing. 2017-11-08 12:50:27 -08:00
test_tornado.py tornado: Split get_events_backend into two functions. 2018-07-30 12:28:31 -07:00
test_tutorial.py zerver/tests: Use python 3 syntax for typing. 2017-11-08 12:50:27 -08:00
test_type_debug.py mypy: Remove some now-unnecessary type: ignores. 2018-03-28 10:39:05 -07:00
test_typing.py tests: Replace api_auth usages with auth methods in zerver/tests. 2017-12-18 09:24:09 -05:00
test_unread.py zerver/tests: Change use of typing.Text to str. 2018-05-10 14:19:49 -07:00
test_upload.py emoji: Add support for animated GIF images. 2018-08-04 11:46:58 -07:00
test_urls.py django-2.0: Shift to resolvers from urlresolvers. 2018-01-30 10:53:54 -08:00
test_user_groups.py guest: Restrict guest access to user group creation and updation. 2018-06-19 11:04:14 -07:00
test_users.py models: Rename Realm.restricted_to_domain field. 2018-07-31 09:28:33 -07:00
test_webhooks_common.py test_webhooks_common: Add logging for a test flake case. 2018-05-17 09:18:31 -07:00
test_widgets.py Support zform-based widget content in the server. 2018-05-24 09:30:22 -07:00
test_zcommand.py zcommand: Raise error when command doesn't begin with a slash. 2018-07-01 20:32:36 -04:00
test_zephyr.py zerver/tests: Use python 3 syntax for typing (part 3). 2017-11-21 22:01:19 -08:00
tests.py