mirror of
https://github.com/discourse/discourse.git
synced 2025-05-22 22:43:33 +08:00
DEV: Remove full group refreshes from tests (#25414)
We have all these calls to Group.refresh_automatic_groups! littered throughout the tests. Including tests that are seemingly unrelated to groups. This is because automatic group memberships aren't fabricated when making a vanilla user. There are two places where you'd want to use this: You have fabricated a user that needs a certain trust level (which is now based on group membership.) You need the system user to have a certain trust level. In the first case, we can pass refresh_auto_groups: true to the fabricator instead. This is a more lightweight operation that only considers a single user, instead of all users in all groups. The second case is no longer a thing after #25400.
This commit is contained in:
@ -633,10 +633,16 @@ RSpec.describe Search do
|
||||
end
|
||||
|
||||
context "with personal-direct and group_messages flags" do
|
||||
let!(:current) { Fabricate(:user, admin: true, username: "current_user") }
|
||||
let!(:participant) { Fabricate(:user, username: "participant_1") }
|
||||
let!(:participant_2) { Fabricate(:user, username: "participant_2") }
|
||||
let!(:non_participant) { Fabricate(:user, username: "non_participant") }
|
||||
let!(:current) do
|
||||
Fabricate(:user, admin: true, username: "current_user", refresh_auto_groups: true)
|
||||
end
|
||||
let!(:participant) { Fabricate(:user, username: "participant_1", refresh_auto_groups: true) }
|
||||
let!(:participant_2) do
|
||||
Fabricate(:user, username: "participant_2", refresh_auto_groups: true)
|
||||
end
|
||||
let!(:non_participant) do
|
||||
Fabricate(:user, username: "non_participant", refresh_auto_groups: true)
|
||||
end
|
||||
|
||||
let(:group) do
|
||||
group = Fabricate(:group, has_messages: true)
|
||||
@ -646,7 +652,6 @@ RSpec.describe Search do
|
||||
end
|
||||
|
||||
def create_pm(users:, group: nil)
|
||||
Group.refresh_automatic_groups!
|
||||
pm = Fabricate(:private_message_post_one_user, user: users.first).topic
|
||||
users[1..-1].each do |u|
|
||||
pm.invite(users.first, u.username)
|
||||
|
Reference in New Issue
Block a user