0
0
Fork 0

Fix wrongful matching of last period in extended usernames

Fix anchor tags in some wikipedia URLs being matches as a hashtag
This commit is contained in:
Eugen Rochko 2017-03-05 18:08:19 +01:00
parent 5f4e402204
commit 4fb95c91fb
4 changed files with 20 additions and 3 deletions

View file

@ -178,7 +178,6 @@ RSpec.describe Account, type: :model do
end
end
describe 'MENTION_RE' do
subject { Account::MENTION_RE }
@ -190,6 +189,14 @@ RSpec.describe Account, type: :model do
expect(subject.match('@alice Hey how are you?')[1]).to eq 'alice'
end
it 'matches full usernames' do
expect(subject.match('@alice@example.com')[1]).to eq 'alice@example.com'
end
it 'matches full usernames with a dot at the end' do
expect(subject.match('Hello @alice@example.com.')[1]).to eq 'alice@example.com'
end
it 'matches dot-prepended usernames' do
expect(subject.match('.@alice I want everybody to see this')[1]).to eq 'alice'
end

View file

@ -1,5 +1,15 @@
require 'rails_helper'
RSpec.describe Tag, type: :model do
describe 'HASHTAG_RE' do
subject { Tag::HASHTAG_RE }
it 'does not match URLs with anchors with non-hashtag characters' do
expect(subject.match('Check this out https://medium.com/@alice/some-article#.abcdef123')).to be_nil
end
it 'does not match URLs with hashtag-like anchors' do
expect(subject.match('https://en.wikipedia.org/wiki/Ghostbusters_(song)#Lawsuit')).to be_nil
end
end
end