Change moderation search an account using the username with @ (#24242)
parent
ab740f464a
commit
bc75e62ca6
|
@ -55,7 +55,7 @@ class AccountFilter
|
|||
when 'by_domain'
|
||||
Account.where(domain: value.to_s.strip)
|
||||
when 'username'
|
||||
Account.matches_username(value.to_s.strip)
|
||||
Account.matches_username(value.to_s.strip.delete_prefix('@'))
|
||||
when 'display_name'
|
||||
Account.matches_display_name(value.to_s.strip)
|
||||
when 'email'
|
||||
|
|
|
@ -44,4 +44,23 @@ describe AccountFilter do
|
|||
expect(filter.results).to match_array [remote_account_one]
|
||||
end
|
||||
end
|
||||
|
||||
describe 'with username' do
|
||||
let!(:local_account) { Fabricate(:account, domain: nil, username: 'validUserName') }
|
||||
|
||||
it 'works with @ at the beginning of the username' do
|
||||
filter = described_class.new(username: '@validUserName')
|
||||
expect(filter.results).to match_array [local_account]
|
||||
end
|
||||
|
||||
it 'does not work with more than one @ at the beginning of the username' do
|
||||
filter = described_class.new(username: '@@validUserName')
|
||||
expect(filter.results).to_not match_array [local_account]
|
||||
end
|
||||
|
||||
it 'does not work with @ outside the beginning of the username' do
|
||||
filter = described_class.new(username: 'validUserName@')
|
||||
expect(filter.results).to_not match_array [local_account]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Reference in New Issue