mirror of
https://github.com/discourse/discourse.git
synced 2025-05-21 18:12:32 +08:00
FIX: sso override code not triggered when attaching to existing user
This commit is contained in:
@ -62,6 +62,35 @@ describe DiscourseSingleSignOn do
|
||||
expect(user).to_not be_nil
|
||||
end
|
||||
|
||||
it "can override name / email / username" do
|
||||
admin = Fabricate(:admin)
|
||||
|
||||
SiteSetting.sso_overrides_name = true
|
||||
SiteSetting.sso_overrides_email = true
|
||||
SiteSetting.sso_overrides_username = true
|
||||
|
||||
sso = DiscourseSingleSignOn.new
|
||||
sso.username = "bob%the$admin"
|
||||
sso.name = "Bob Admin"
|
||||
sso.email = admin.email
|
||||
sso.external_id = "A"
|
||||
|
||||
sso.lookup_or_create_user(ip_address)
|
||||
|
||||
admin.reload
|
||||
|
||||
expect(admin.name).to eq "Bob Admin"
|
||||
expect(admin.username).to eq "bob_the_admin"
|
||||
expect(admin.email).to eq admin.email
|
||||
|
||||
sso.email = "TEST@bob.com"
|
||||
|
||||
sso.lookup_or_create_user(ip_address)
|
||||
|
||||
admin.reload
|
||||
expect(admin.email).to eq("test@bob.com")
|
||||
end
|
||||
|
||||
it "can fill in data on way back" do
|
||||
sso = make_sso
|
||||
|
||||
|
Reference in New Issue
Block a user