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:
Ted Johansson
2024-01-25 14:28:26 +08:00
committed by GitHub
parent 74fd883a89
commit 57ea56ee05
64 changed files with 131 additions and 269 deletions

View File

@ -1,7 +1,8 @@
# frozen_string_literal: true
RSpec.describe TopicsBulkAction do
fab!(:topic)
fab!(:user) { Fabricate(:user, refresh_auto_groups: true) }
fab!(:topic) { Fabricate(:topic, user: user) }
describe "#dismiss_topics" do
fab!(:user) { Fabricate(:user, created_at: 1.days.ago, refresh_auto_groups: true) }
@ -156,10 +157,7 @@ RSpec.describe TopicsBulkAction do
context "when the user can edit the topic" do
context "with 'create_revision_on_bulk_topic_moves' setting enabled" do
before do
SiteSetting.create_revision_on_bulk_topic_moves = true
Group.refresh_automatic_groups!
end
before { SiteSetting.create_revision_on_bulk_topic_moves = true }
it "changes the category, creates a post revision and returns the topic_id" do
old_category_id = topic.category_id
@ -198,10 +196,7 @@ RSpec.describe TopicsBulkAction do
end
context "with 'create_revision_on_bulk_topic_moves' setting disabled" do
before do
SiteSetting.create_revision_on_bulk_topic_moves = false
Group.refresh_automatic_groups!
end
before { SiteSetting.create_revision_on_bulk_topic_moves = false }
it "changes the category, doesn't create a post revision and returns the topic_id" do
tba =
@ -421,7 +416,6 @@ RSpec.describe TopicsBulkAction do
SiteSetting.tagging_enabled = true
SiteSetting.min_trust_level_to_tag_topics = 0
topic.tags = [tag1, tag2]
Group.refresh_automatic_groups!
end
it "can change the tags, and can create new tags" do
@ -490,7 +484,6 @@ RSpec.describe TopicsBulkAction do
SiteSetting.tagging_enabled = true
SiteSetting.min_trust_level_to_tag_topics = 0
topic.tags = [tag1, tag2]
Group.refresh_automatic_groups!
end
it "can append new or existing tags" do
@ -561,7 +554,6 @@ RSpec.describe TopicsBulkAction do
SiteSetting.tagging_enabled = true
SiteSetting.min_trust_level_to_tag_topics = 0
topic.tags = [tag1, tag2]
Group.refresh_automatic_groups!
end
it "can remove all tags" do