discourse/spec/models
Sam Saffron 5f896ae8f7 PERF: Keep track of when a users first unread is
This optimisation avoids large scans joining the topics table with the
topic_users table.

Previously when a user carried a lot of read state we would have to join
the entire read state with the topics table. This operation would slow down
home page and every topic page. The more read state you accumulated the
larger the impact.

The optimisation helps people who clean up unread, however if you carry
unread from years ago it will only have minimal impact.
2019-04-05 12:44:45 +11:00
..
about_spec.rb
admin_dashboard_problem_spec.rb DEV: removes old dashboard (#7295) 2019-04-01 12:39:49 +02:00
api_key_spec.rb Validate uniquness of api_key. 2017-07-24 21:46:08 +09:00
application_request_spec.rb Fix random build error 2018-11-08 02:51:42 +01:00
badge_spec.rb FIX: grant first quote at the date post was created 2019-04-03 16:41:52 +11:00
badge_type_spec.rb Add spec to cover Badge Type has many Badges relation 2017-09-20 00:51:32 -03:00
category_featured_topic_spec.rb refinement and test for batch mode on feature_topics 2017-12-20 13:58:05 +11:00
category_group_spec.rb
category_list_spec.rb UX: order categories based on latest activity for all page styles (#7196) 2019-03-19 09:35:32 +01:00
category_spec.rb UX: show which groups are missing permissions for parent category (#7252) 2019-04-01 15:34:52 +11:00
category_user_spec.rb REFACTOR: Move queue_jobs out of SiteSetting 2019-03-14 10:47:38 -04:00
child_theme_spec.rb FEATURE: themes and components split 2018-08-24 11:30:00 +10:00
color_scheme_color_spec.rb DEV: Clear ColorScheme.hex_cache to avoid leaking state. 2018-10-15 11:16:26 +08:00
color_scheme_spec.rb DEV: Clear ColorScheme.hex_cache to avoid leaking state. 2018-10-15 11:16:26 +08:00
developer_spec.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
digest_email_site_setting_spec.rb
directory_item_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
discourse_single_sign_on_spec.rb REFACTOR: Move queue_jobs out of SiteSetting 2019-03-14 10:47:38 -04:00
draft_sequence_spec.rb Improve specs. 2017-09-25 13:49:00 +08:00
draft_spec.rb Improvements to user drafts (#6226) 2018-08-02 07:41:27 +10:00
email_change_request_spec.rb
email_log_spec.rb Revert "FIX: Partial reply key search in email sent logs." 2019-01-10 10:05:56 +08:00
email_token_spec.rb FIX: Reviewables should not be created for users until they are active 2019-04-03 15:25:00 -04:00
embeddable_host_spec.rb FIX: reset embedding settings when no embeddable host, log host changes (#7264) 2019-03-29 17:05:51 +01:00
emoji_spec.rb FIX: Properly support defaults for upload site settings. 2019-03-13 16:36:57 +08:00
given_daily_like_spec.rb FEATURE: remove the timecop gem 2017-07-24 12:11:10 -04:00
global_setting_spec.rb FEATURE: Allow plugins to easily add defaults to GlobalSetting 2017-11-16 08:39:29 +11:00
group_history_spec.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
group_spec.rb FIX: allow moderators to create categories setting broken 2019-03-06 17:44:18 +11:00
group_user_spec.rb FEATURE: default notification level for group messages 2017-04-20 15:47:35 -04:00
incoming_link_spec.rb FIX: ignore invalid usernames in incoming link tracker 2018-09-04 12:28:32 +10:00
incoming_links_report_spec.rb DEV: correct heisentest, run report at consistent time 2019-02-25 14:17:52 +11:00
invite_redeemer_spec.rb FEATURE: Activate users invited via email when invite is redeemed 2018-12-11 00:09:53 +01:00
invite_spec.rb FEATURE: remove all expired invitations by default 2019-03-07 15:28:39 +05:30
javascript_cache_spec.rb FIX: extracted theme JavaScripts for multisite (#6502) 2018-10-18 17:05:34 +11:00
locale_site_setting_spec.rb FEATURE: Allow plugins to register a new locale 2018-01-25 14:57:41 +01:00
mailing_list_mode_site_setting_spec.rb Remove daily mailing mode option as it doesn't scale. 2017-05-05 12:21:50 +08:00
notification_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
optimized_image_spec.rb FIX: Destroy OptimizedImage record even if Upload record is invalid. 2019-03-22 16:47:06 +08:00
permalink_spec.rb
plugin_store_spec.rb FEATURE: Added method to get multiple values at once from PluginStore. (#6225) 2018-08-01 18:42:40 +02:00
post_action_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
post_action_type_spec.rb
post_analyzer_spec.rb FIX: Don't allow links with no href 2018-03-28 12:32:16 -04:00
post_detail_spec.rb
post_mover_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
post_reply_key_spec.rb Revert "FIX: Partial reply key search in email sent logs." 2019-01-10 10:05:56 +08:00
post_reply_spec.rb
post_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
post_timing_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
post_upload_spec.rb
quoted_post_spec.rb FIX: on rebakes should not recreate quoted_posts records 2019-04-03 16:17:15 +11:00
remote_theme_spec.rb FIX: Imported themes should set their color scheme automatically 2019-01-31 17:45:11 +00:00
report_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
reviewable_flagged_post_spec.rb FIX: Reviewable counts were not updating properly 2019-04-04 16:07:34 -04:00
reviewable_history_spec.rb FIX: Don't log a second pending action 2019-04-01 17:07:47 -04:00
reviewable_queued_post_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
reviewable_score_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
reviewable_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
reviewable_user_spec.rb FIX: Deleting Users should work nicely with Reviewable Users 2019-04-03 16:42:39 -04:00
s3_region_site_setting_spec.rb add 'us-east-2' S3 region 2017-07-10 15:36:38 +02:00
screened_email_spec.rb FEATURE: remove the timecop gem 2017-07-24 12:11:10 -04:00
screened_ip_address_spec.rb FIX: error when trying to block an IP address. Return a message when IP address matches an existing screened IP address, including ranges. 2018-03-19 14:34:43 -04:00
screened_url_spec.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
search_log_spec.rb FIX: Admin search logs should filter by date instead of timestamp. 2019-03-29 11:50:25 +08:00
site_setting_spec.rb FIX: Properly support defaults for upload site settings. 2019-03-13 16:36:57 +08:00
site_spec.rb FIX: unable to create new categories 2019-02-15 10:24:29 +11:00
skipped_email_log_spec.rb PERF: Split skipped email logs into a seperate table. 2018-07-24 13:14:37 +08:00
stylesheet_cache_spec.rb FIX: correctly keep stylesheet cache entries 2018-09-14 12:54:11 +10:00
tag_group_spec.rb FIX: tags in a 'visible by everyone but usable only by staff' group weren't visible by everyone 2018-05-16 09:48:19 +02:00
tag_spec.rb FEATURE: Add button to delete unused tags (#6587) 2018-11-12 16:24:34 +00:00
tag_user_spec.rb REFACTOR: Move queue_jobs out of SiteSetting 2019-03-14 10:47:38 -04:00
theme_field_spec.rb FIX: retranspile theme JS when settings YAML changes (#7131) 2019-03-08 17:49:06 +03:00
theme_spec.rb FIX: Sanitize theme settings properly before injecting into stylesheets (#7031) 2019-03-08 08:58:06 +00:00
top_menu_item_spec.rb correct specs 2018-04-26 17:24:16 +10:00
top_topic_spec.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
topic_allowed_user_spec.rb
topic_converter_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
topic_embed_spec.rb FIX: drop title updates through RSS feeds 2018-08-28 16:25:04 +10:00
topic_featured_users_spec.rb DEV: Rails 5.2 upgrade and global gem upgrade 2018-06-07 14:21:33 +10:00
topic_invite_spec.rb
topic_link_click_spec.rb FIX: URLs containing two # would fail to work 2018-12-11 18:03:13 +11:00
topic_link_spec.rb Revert "FIX: trim trailing slash from topic links" 2019-01-03 17:29:22 +05:30
topic_list_spec.rb FEATURE: replace PM tags dropdown with a dedicated tags page 2018-03-13 13:06:58 +05:30
topic_participants_summary_spec.rb FEATURE: Add recipient avatars in PM topic list even if they not yet replied 2019-01-25 19:41:49 +05:30
topic_posters_summary_spec.rb
topic_spec.rb DEV: Add missing test cases for Topic.for_digest and Topic.secured. 2019-04-05 09:00:48 +08:00
topic_tag_spec.rb REFACTOR: New spec tests and code improvement 2018-02-22 20:27:02 +05:30
topic_timer_spec.rb REFACTOR: Move queue_jobs out of SiteSetting 2019-03-14 10:47:38 -04:00
topic_tracking_state_spec.rb Enable Lint/ShadowingOuterLocalVariable for Rubocop. 2018-09-04 10:16:42 +08:00
topic_user_spec.rb REFACTOR: Move queue_jobs out of SiteSetting 2019-03-14 10:47:38 -04:00
topic_view_item_spec.rb TEST: TopicViewItem ip logging test 2018-06-12 12:43:56 +10:00
translation_override_spec.rb FIX: Translation overrides for flag types didn't expire cache 2018-03-16 22:10:19 +01:00
trust_level3_requirements_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
unsubscribe_key_spec.rb
upload_spec.rb FIX: Upload#migrate_to_new_scheme should not migrate system uploads. 2019-03-14 12:45:03 +08:00
user_action_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
user_api_key_spec.rb FIX: add support for missing verbs in user api key 2019-02-13 15:49:43 +11:00
user_archived_message_spec.rb FEATURE: Live updates for user's messages page. 2018-03-06 18:15:21 +08:00
user_auth_token_spec.rb FIX: Do not check for suspicious login when impersonating. (#6534) 2018-11-12 15:34:12 +01:00
user_avatar_spec.rb FIX: Job exception: undefined method `email' for nil:NilClass 2019-03-08 13:39:56 -05:00
user_badge.rb
user_email_spec.rb FEATURE: Secondary emails support. 2018-07-16 11:09:49 +08:00
user_export_spec.rb FIX: clean up user export csv upload records in scheduled job (#7309) 2019-04-03 13:31:19 +05:30
user_field_spec.rb UX: make name optional for confirmation user field (#7149) 2019-03-13 18:40:43 +01:00
user_history_spec.rb FIX: Staff action records now also accepts action_name as filter (#7256) 2019-03-27 21:29:15 +01:00
user_open_id_spec.rb
user_option_spec.rb FEATURE: add more granular user option levels for email notifications (#7143) 2019-03-15 10:55:11 -04:00
user_profile_spec.rb DEV: Fix failing tests. 2019-03-11 11:12:11 +08:00
user_profile_view_spec.rb Style fix for test 2018-05-25 15:54:14 +10:00
user_search_spec.rb FEATURE: autocomplete usernames early in topic based on participation 2019-02-20 13:34:43 +11:00
user_second_factor_spec.rb FEATURE: Second factor backup 2018-06-28 10:12:32 +02:00
user_spec.rb FIX: Reviewables should not be created for users until they are active 2019-04-03 15:25:00 -04:00
user_stat_spec.rb PERF: Keep track of when a users first unread is 2019-04-05 12:44:45 +11:00
user_summary_spec.rb FEATURE: New 'Reviewable' model to make reviewable items generic 2019-03-28 12:45:10 -04:00
user_visit_spec.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
username_validator_spec.rb
watched_word_spec.rb FIX: don't downcase watched words on input since it can break the watched_words_regular_expressions setting 2018-01-09 16:51:59 -05:00
web_crawler_request_spec.rb FEATURE: control which web crawlers can access using a whitelist or blacklist 2018-03-22 15:41:02 -04:00
web_hook_event_spec.rb FEATURE: Retain the latest 30 days of WebHookEvent records by default. 2017-11-08 14:11:01 +08:00
web_hook_spec.rb FIX: Reviewables should not be created for users until they are active 2019-04-03 15:25:00 -04:00