mirror of
https://github.com/discourse/discourse.git
synced 2025-05-29 01:31:35 +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:
@ -67,7 +67,7 @@ RSpec.describe UserApiKeysController do
|
||||
SiteSetting.user_api_key_allowed_groups = Group::AUTO_GROUPS[:trust_level_2]
|
||||
SiteSetting.allowed_user_api_auth_redirects = args[:auth_redirect]
|
||||
|
||||
user = Fabricate(:user, trust_level: 1, moderator: true, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[1], moderator: true)
|
||||
|
||||
sign_in(user)
|
||||
|
||||
@ -79,7 +79,7 @@ RSpec.describe UserApiKeysController do
|
||||
SiteSetting.user_api_key_allowed_groups = Group::AUTO_GROUPS[:trust_level_2]
|
||||
SiteSetting.allowed_user_api_auth_redirects = args[:auth_redirect]
|
||||
|
||||
user = Fabricate(:user, trust_level: 1, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[1])
|
||||
sign_in(user)
|
||||
|
||||
post "/user-api-key.json", params: args
|
||||
@ -91,7 +91,7 @@ RSpec.describe UserApiKeysController do
|
||||
SiteSetting.allowed_user_api_auth_redirects = args[:auth_redirect]
|
||||
SiteSetting.allow_user_api_key_scopes = "write"
|
||||
|
||||
user = Fabricate(:user, trust_level: 0, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[0])
|
||||
sign_in(user)
|
||||
|
||||
post "/user-api-key.json", params: args
|
||||
@ -156,7 +156,7 @@ RSpec.describe UserApiKeysController do
|
||||
args[:scopes] = "push,read"
|
||||
args[:push_url] = "https://push.it/here"
|
||||
|
||||
user = Fabricate(:user, trust_level: 0, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[0])
|
||||
sign_in(user)
|
||||
|
||||
post "/user-api-key.json", params: args
|
||||
@ -189,7 +189,7 @@ RSpec.describe UserApiKeysController do
|
||||
args[:scopes] = "push,notifications,message_bus,session_info,one_time_password"
|
||||
args[:push_url] = "https://push.it/here"
|
||||
|
||||
user = Fabricate(:user, trust_level: 0, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[0])
|
||||
sign_in(user)
|
||||
|
||||
post "/user-api-key.json", params: args
|
||||
@ -235,7 +235,7 @@ RSpec.describe UserApiKeysController do
|
||||
end
|
||||
|
||||
it "will just show the payload if no redirect" do
|
||||
user = Fabricate(:user, trust_level: 0, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[0])
|
||||
sign_in(user)
|
||||
|
||||
args.delete(:auth_redirect)
|
||||
@ -252,7 +252,7 @@ RSpec.describe UserApiKeysController do
|
||||
end
|
||||
|
||||
it "will just show the JSON payload if no redirect" do
|
||||
user = Fabricate(:user, trust_level: 0, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[0])
|
||||
sign_in(user)
|
||||
|
||||
args.delete(:auth_redirect)
|
||||
@ -282,7 +282,7 @@ RSpec.describe UserApiKeysController do
|
||||
SiteSetting.user_api_key_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||
SiteSetting.allowed_user_api_auth_redirects = args[:auth_redirect] + "/*"
|
||||
|
||||
user = Fabricate(:user, trust_level: 0, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[0])
|
||||
sign_in(user)
|
||||
|
||||
query_str = "/?param1=val1"
|
||||
@ -320,7 +320,7 @@ RSpec.describe UserApiKeysController do
|
||||
SiteSetting.user_api_key_allowed_groups = Group::AUTO_GROUPS[:trust_level_2]
|
||||
SiteSetting.allowed_user_api_auth_redirects = otp_args[:auth_redirect]
|
||||
|
||||
user = Fabricate(:user, trust_level: 1, moderator: true, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[1], moderator: true)
|
||||
|
||||
sign_in(user)
|
||||
|
||||
@ -332,7 +332,7 @@ RSpec.describe UserApiKeysController do
|
||||
SiteSetting.user_api_key_allowed_groups = Group::AUTO_GROUPS[:trust_level_2]
|
||||
SiteSetting.allowed_user_api_auth_redirects = otp_args[:auth_redirect]
|
||||
|
||||
user = Fabricate(:user, trust_level: 1, refresh_auto_groups: true)
|
||||
user = Fabricate(:user, trust_level: TrustLevel[1])
|
||||
sign_in(user)
|
||||
|
||||
post "/user-api-key/otp", params: otp_args
|
||||
|
Reference in New Issue
Block a user