discourse/spec/lib
Isaac Janzen e5349e43af
DEV: Update group moderator behavior to better mimic staff (#19618)
# Context
When a topic is reviewable by a group we give those group moderators some admin abilities including the ability to delete a topic.

# Problem
There are two main problems:

1. Currently when a group moderator deletes a topic they are redirected to root (not the same for staff)
2. Viewing the categories deleted topics (`c/foo/1/?status=deleted`) does not display the deleted topic to the group moderator (not the same for staff).

# Fix
If the `deleted_by` user is part a group that matches the `reviewable_by_group` on a topic then don't redirect. This is the default interaction for staff to give them the ability to do things like restore the topic in case it was accidentally deleted.

To render the deleted topics as expected for the group moderator I am utilizing [the guardian scope of `guardian.can_see_deleted_topics?` for said category](https://github.com/discourse/discourse/pull/19618/files#diff-288e61b8bacdb29d9c2e05b42da6837b0036dcf1867332d977ca7c5e74a44297R802-R803)
2022-12-29 10:07:03 -06:00
..
auth DEV: Update rubocop (#18754) 2022-10-26 09:05:15 +08:00
backup_restore FIX: Backup/Restore didn't use correct Redis namespace in multisite (#18060) 2022-08-24 01:43:42 +02:00
common_passwords DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
compression SECURITY: Prevent arbitrary file write when decompressing files (#18421) 2022-09-29 20:00:38 +02:00
concern DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
content_security_policy Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
email DEV: Remove enable_whispers site setting (#19196) 2022-12-16 18:42:51 +02:00
file_store DEV: Fix mocha deprecations (#18828) 2022-11-02 10:47:59 +01:00
final_destination FIX: Gracefully handle DNS issued from SSRF lookup when inline oneboxing (#19631) 2022-12-28 10:30:20 +08:00
freedom_patches DEV: update to patched discourse-seed-fu (#18493) 2022-10-07 09:16:04 +11:00
guardian SECURITY: Restrict unlisted topic creation (#19259) 2022-12-01 10:26:35 +00:00
highlight_js Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
i18n FIX: Use correct plural rules for Russian (#19467) 2022-12-14 18:56:46 +01:00
imap DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
import Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
middleware FEATURE: Track API and user API requests (#19186) 2022-11-29 13:07:42 +02:00
migration Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
onebox FEATURE: Onebox for Embed Motoko (#19293) 2022-12-16 09:59:40 -05:00
plugin DEV: Pass in site guardian for `Plugin::Instance.register_site_categories_callback` (#19430) 2022-12-13 07:49:13 +08:00
pretty_text FIX: Server-side hashtag lookups of secure categories for a user (#19377) 2022-12-09 10:34:25 +10:00
rate_limiter DEV: Automatically require 'rails_helper' in all specs (#16077) 2022-03-01 17:50:50 +00:00
scheduler Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
second_factor DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
seed_data FEATURE: Default Composer Category Site Setting (#18967) 2022-11-14 11:09:57 -07:00
site_settings DEV: Fix mocha deprecations (#18828) 2022-11-02 10:47:59 +01:00
stylesheet DEV: Remove use of deprecated methods (#19486) 2022-12-15 22:08:05 -03:00
svg_sprite DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
theme_store FIX: Don't update url in GitImporter (#19273) 2022-12-01 10:50:06 -06:00
topic_query DEV: Remove usages of enable_personal_messages (#18437) 2022-10-05 10:50:20 +10:00
validators DEV: Remove remaining hardcoded ids (#18735) 2022-10-25 15:29:09 +08:00
webauthn Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
wizard UX: Wizard Step Enhancements (#19487) 2022-12-19 17:24:09 -07:00
admin_confirmation_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
admin_user_index_query_spec.rb FEATURE: Introduce personal_message_enabled_groups setting (#18042) 2022-09-26 13:58:40 +10:00
archetype_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
bookmark_manager_spec.rb FIX: Remove user_option saving for bookmark auto delete pref (#19476) 2022-12-16 08:50:31 +10:00
bookmark_query_spec.rb DEV: Remove enable_whispers site setting (#19196) 2022-12-16 18:42:51 +02:00
bookmark_reminder_notification_handler_spec.rb FEATURE: Promote polymorphic bookmarks to default and migrate (#16729) 2022-05-23 10:07:15 +10:00
browser_detection_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
cache_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
category_badge_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
category_guardian_spec.rb DEV: permission type for private category fabricator (#19601) 2022-12-23 11:18:29 +08:00
composer_messages_finder_spec.rb FEATURE: add composer warning when user haven't been seen in a long time (#18340) 2022-09-27 22:06:40 +05:30
content_buffer_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
content_security_policy_spec.rb FEATURE: Optionally allow a separate `s3_asset_cdn_url` to be specified (#19284) 2022-12-08 10:36:20 +00:00
cooked_post_processor_spec.rb PERF: stop downloading images from post processor and lean on uploads 2022-11-25 12:40:31 +11:00
crawler_detection_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
current_user_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
db_helper_spec.rb DEV: Automatically require 'rails_helper' in all specs (#16077) 2022-03-01 17:50:50 +00:00
directory_helper_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
discourse_diff_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
discourse_event_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
discourse_hub_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
discourse_js_processor_spec.rb DEV: Update terser (#19109) 2022-11-24 17:15:46 +01:00
discourse_plugin_registry_spec.rb DEV: Fix mocha deprecations (#18828) 2022-11-02 10:47:59 +01:00
discourse_redis_spec.rb DEV: Update redis gem to 4.8.0 (#19350) 2022-12-08 06:48:44 +08:00
discourse_sourcemapping_url_processor_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
discourse_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
discourse_tagging_spec.rb FIX: When filtering tags for visibility, respect tag group permissions (#19152) 2022-11-22 12:55:57 -06:00
discourse_updates_spec.rb DEV: Stop leaking state in dashboard controller specs (#19608) 2022-12-23 15:41:30 +03:00
distributed_cache_spec.rb DEV: Make the first argument to the top-level describe a constant in specs 2022-08-08 18:07:49 +02:00
distributed_memoizer_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
distributed_mutex_spec.rb DEV: Fake sleeping in distributed mutex tests (#19472) 2022-12-14 15:11:46 -06:00
email_cook_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
email_updater_spec.rb FEATURE: Add setting to always confirm old email (#18417) 2022-09-30 00:49:17 +03:00
ember_cli_spec.rb DEV: Add test for EmberCli#ember_version (#18140) 2022-08-30 20:33:08 +01:00
encodings_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
enum_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
excerpt_parser_spec.rb FIX: Handle null svg class for excerpt parsing (#19276) 2022-12-01 10:56:16 +10:00
feed_element_installer_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
feed_item_accessor_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
file_helper_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
filter_best_posts_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
final_destination_spec.rb SECURITY: Expand and improve SSRF Protections (#18815) 2022-11-01 16:33:17 +00:00
flag_settings_spec.rb DEV: Automatically require 'rails_helper' in all specs (#16077) 2022-03-01 17:50:50 +00:00
gaps_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
git_url_spec.rb SECURITY: Expand and improve SSRF Protections (#18815) 2022-11-01 16:33:17 +00:00
global_path_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
group_email_credentials_check_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
guardian_spec.rb FIX: TL0 could not message group with everyone messageable_level (#19525) 2022-12-20 13:11:14 +10:00
has_errors_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
hijack_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
html_prettify_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
html_to_markdown_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
image_sizer_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
inline_oneboxer_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
js_locale_helper_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
json_error_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
letter_avatar_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
message_id_service_spec.rb FEATURE: Overhaul email threading (#17996) 2022-09-26 09:14:24 +10:00
method_profiler_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
mini_sql_multisite_connection_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
mobile_detection_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
new_post_manager_spec.rb DEV: Remove usages of enable_personal_messages (#18437) 2022-10-05 10:50:20 +10:00
new_post_result_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
onebox_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
oneboxer_spec.rb FIX: Allow svg in oneboxer in certain cases (#19253) 2022-11-30 12:42:15 +10:00
onpdiff_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
pbkdf2_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
pinned_check_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
plain_text_to_markdown_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
post_action_creator_spec.rb FEATURE: Introduce personal_message_enabled_groups setting (#18042) 2022-09-26 13:58:40 +10:00
post_action_destroyer_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
post_creator_spec.rb DEV: Remove enable_whispers site setting (#19196) 2022-12-16 18:42:51 +02:00
post_destroyer_spec.rb DEV: Remove enable_whispers site setting (#19196) 2022-12-16 18:42:51 +02:00
post_jobs_enqueuer_spec.rb DEV: Automatically require 'rails_helper' in all specs (#16077) 2022-03-01 17:50:50 +00:00
post_locker_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
post_merger_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
post_revisor_spec.rb FEATURE: API to customize server side composer errors handling in the client side (#19107) 2022-11-21 13:11:29 -03:00
presence_channel_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
pretty_text_spec.rb FIX: Remove console warning for "nohighlight" (#19447) 2022-12-13 13:43:31 -05:00
promotion_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
quote_comparer_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
rate_limiter_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
retrieve_title_spec.rb FIX: Gracefully handle DNS issued from SSRF lookup when inline oneboxing (#19631) 2022-12-28 10:30:20 +08:00
rtl_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
s3_cors_rulesets_spec.rb DEV: Automatically require 'rails_helper' in all specs (#16077) 2022-03-01 17:50:50 +00:00
s3_helper_spec.rb PERF: Update `s3:expire_missing_assets` to delete in batches (#18908) 2022-11-07 12:53:14 +00:00
s3_inventory_multisite_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
s3_inventory_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
score_calculator_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
scss_checker_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
search_spec.rb DEV: Remove enable_whispers site setting (#19196) 2022-12-16 18:42:51 +02:00
secure_session_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
shrink_uploaded_image_spec.rb FIX: Shrinking images where smaller image upload exists (#18965) 2022-11-10 12:43:56 +01:00
sidebar_section_links_updater_spec.rb DEV: Centralise logic for updating sidebar section links (#19275) 2022-12-01 09:32:35 +08:00
site_icon_manager_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
site_setting_extension_multisite_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
site_setting_extension_spec.rb DEV: Migrate sidebar site settings (#19336) 2022-12-08 09:44:29 +08:00
slug_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
spam_handler_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
suggested_topics_builder_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
system_message_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
text_cleaner_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
text_sentinel_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
theme_flag_modifier_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
theme_javascript_compiler_spec.rb DEV: Support colocation under `/admin` namespace in themes/plugins (#19353) 2022-12-07 14:24:03 +00:00
theme_settings_manager_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
theme_settings_parser_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
timeline_lookup_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
tiny_japanese_segmenter_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
topic_creator_spec.rb SECURITY: Restrict unlisted topic creation (#19259) 2022-12-01 10:26:35 +00:00
topic_publisher_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
topic_query_spec.rb DEV: Update group moderator behavior to better mimic staff (#19618) 2022-12-29 10:07:03 -06:00
topic_retriever_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
topic_upload_security_manager_spec.rb DEV: Rename secure_media to secure_uploads (#18376) 2022-09-29 09:24:33 +10:00
topic_view_spec.rb DEV: Remove enable_whispers site setting (#19196) 2022-12-16 18:42:51 +02:00
topics_bulk_action_spec.rb DEV: Remove enable_whispers site setting (#19196) 2022-12-16 18:42:51 +02:00
trashable_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
trust_level_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00
twitter_api_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
unread_spec.rb DEV: Remove enable_whispers site setting (#19196) 2022-12-16 18:42:51 +02:00
upload_creator_spec.rb DEV: Fix png optimization test flakyness (#19535) 2022-12-20 16:05:14 -03:00
upload_markdown_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
upload_recovery_spec.rb DEV: Rename secure_media to secure_uploads (#18376) 2022-09-29 09:24:33 +10:00
upload_security_spec.rb DEV: Rename secure_media to secure_uploads (#18376) 2022-09-29 09:24:33 +10:00
url_helper_spec.rb DEV: Rename secure_media to secure_uploads (#18376) 2022-09-29 09:24:33 +10:00
user_comm_screener_spec.rb FIX: Handle actor not having preferences in UserCommScreener (#17790) 2022-08-04 10:16:54 +10:00
user_lookup_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
user_name_suggester_spec.rb Add RSpec 4 compatibility (#17652) 2022-07-28 10:27:38 +08:00
version_spec.rb DEV: Use proper wording for contexts in specs 2022-08-04 11:05:02 +02:00