mirror of
https://github.com/discourse/discourse.git
synced 2025-05-26 11:32:11 +08:00
DEV: Automatically update groups for test users with explicit TL (#25415)
For performance reasons we don't automatically add fabricated users to trust level auto-groups. However, when explicitly passing a trust level to the fabricator, in 99% of cases it means that trust level is relevant for the test, and we need the groups. This change makes it so that when a trust level is explicitly passed to the fabricator, the auto-groups are refreshed. There's no longer a need to also pass refresh_auto_groups: true, which means clearer tests, fewer mistakes, and less confusion.
This commit is contained in:
@ -2,15 +2,15 @@
|
||||
|
||||
RSpec.describe PostAction do
|
||||
it "triggers the 'flag_reviewed' event when there was at least one flag" do
|
||||
admin = Fabricate(:admin, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[4])
|
||||
|
||||
post = Fabricate(:post)
|
||||
events = DiscourseEvent.track_events { PostDestroyer.new(admin, post).destroy }
|
||||
events = DiscourseEvent.track_events { PostDestroyer.new(user, post).destroy }
|
||||
expect(events.map { |e| e[:event_name] }).to_not include(:flag_reviewed)
|
||||
|
||||
flagged_post = Fabricate(:post)
|
||||
PostActionCreator.spam(admin, flagged_post)
|
||||
events = DiscourseEvent.track_events { PostDestroyer.new(admin, flagged_post).destroy }
|
||||
PostActionCreator.spam(user, flagged_post)
|
||||
events = DiscourseEvent.track_events { PostDestroyer.new(user, flagged_post).destroy }
|
||||
expect(events.map { |e| e[:event_name] }).to include(:flag_reviewed)
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user