mirror of
https://github.com/discourse/discourse.git
synced 2025-06-17 13:55:06 +08:00
DEV: simplify username suggester (#14531)
This PR doesn't change any behavior, but just removes code that wasn't in use. This is a pretty dangerous place to change, since it gets called during user's registration. At the same time the refactoring is very straightforward, it's clear that this code wasn't doing any work (it still needs to be double-checked during review though). Also, the test coverage of UserNameSuggester is good.
This commit is contained in:

committed by
GitHub

parent
69f0f48dc0
commit
19d95c64af
@ -265,27 +265,6 @@ describe DiscourseSingleSignOn do
|
||||
expect(add_group4.usernames).to eq(user.username)
|
||||
end
|
||||
|
||||
it 'can override username properly when only the case changes' do
|
||||
SiteSetting.auth_overrides_username = true
|
||||
|
||||
sso = new_discourse_sso
|
||||
sso.username = "testuser"
|
||||
sso.name = "test user"
|
||||
sso.email = "test@test.com"
|
||||
sso.external_id = "100"
|
||||
sso.bio = "This **is** the bio"
|
||||
sso.suppress_welcome_message = true
|
||||
|
||||
# create the original user
|
||||
user = sso.lookup_or_create_user(ip_address)
|
||||
expect(user.username).to eq "testuser"
|
||||
|
||||
# change the username case
|
||||
sso.username = "TestUser"
|
||||
user = sso.lookup_or_create_user(ip_address)
|
||||
expect(user.username).to eq "TestUser"
|
||||
end
|
||||
|
||||
it 'behaves properly when auth_overrides_username is set but username is missing or blank' do
|
||||
SiteSetting.auth_overrides_username = true
|
||||
|
||||
@ -347,6 +326,46 @@ describe DiscourseSingleSignOn do
|
||||
expect(admin.name).to eq "Louis C.K."
|
||||
end
|
||||
|
||||
it 'can override username properly when only the case changes' do
|
||||
SiteSetting.auth_overrides_username = true
|
||||
|
||||
sso = new_discourse_sso
|
||||
sso.username = "testuser"
|
||||
sso.name = "test user"
|
||||
sso.email = "test@test.com"
|
||||
sso.external_id = "100"
|
||||
sso.bio = "This **is** the bio"
|
||||
sso.suppress_welcome_message = true
|
||||
|
||||
# create the original user
|
||||
user = sso.lookup_or_create_user(ip_address)
|
||||
expect(user.username).to eq "testuser"
|
||||
|
||||
# change the username case
|
||||
sso.username = "TestUser"
|
||||
user = sso.lookup_or_create_user(ip_address)
|
||||
expect(user.username).to eq "TestUser"
|
||||
end
|
||||
|
||||
it 'do not override username when a new username after fixing is the same' do
|
||||
SiteSetting.auth_overrides_username = true
|
||||
|
||||
sso = new_discourse_sso
|
||||
sso.username = "testuser"
|
||||
sso.name = "test user"
|
||||
sso.email = "test@test.com"
|
||||
sso.external_id = "100"
|
||||
|
||||
# create the original user
|
||||
user = sso.lookup_or_create_user(ip_address)
|
||||
expect(user.username).to eq "testuser"
|
||||
|
||||
# change the username case
|
||||
sso.username = "testuserგამარჯობა"
|
||||
user = sso.lookup_or_create_user(ip_address)
|
||||
expect(user.username).to eq "testuser"
|
||||
end
|
||||
|
||||
it "doesn't use email as a source for username suggestions by default" do
|
||||
sso = new_discourse_sso
|
||||
sso.external_id = "100"
|
||||
|
Reference in New Issue
Block a user