Add coverage for UnreservedUsernameValidator
(#25590)
This commit is contained in:
parent
1084703417
commit
19900f647e
2 changed files with 122 additions and 30 deletions
|
@ -11,16 +11,31 @@ class UnreservedUsernameValidator < ActiveModel::Validator
|
|||
|
||||
private
|
||||
|
||||
def pam_controlled?
|
||||
return false unless Devise.pam_authentication && Devise.pam_controlled_service
|
||||
|
||||
Rpam2.account(Devise.pam_controlled_service, @username).present?
|
||||
def reserved_username?
|
||||
pam_username_reserved? || settings_username_reserved?
|
||||
end
|
||||
|
||||
def reserved_username?
|
||||
return true if pam_controlled?
|
||||
return false unless Setting.reserved_usernames
|
||||
def pam_username_reserved?
|
||||
pam_controlled? && pam_reserves_username?
|
||||
end
|
||||
|
||||
def pam_controlled?
|
||||
Devise.pam_authentication && Devise.pam_controlled_service
|
||||
end
|
||||
|
||||
def pam_reserves_username?
|
||||
Rpam2.account(Devise.pam_controlled_service, @username)
|
||||
end
|
||||
|
||||
def settings_username_reserved?
|
||||
settings_has_reserved_usernames? && settings_reserves_username?
|
||||
end
|
||||
|
||||
def settings_has_reserved_usernames?
|
||||
Setting.reserved_usernames.present?
|
||||
end
|
||||
|
||||
def settings_reserves_username?
|
||||
Setting.reserved_usernames.include?(@username.downcase)
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue