diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2017-02-22 19:35:11 +0100 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2017-02-22 19:35:11 +0100 |
commit | 3202bdd74416035f81170e978129bbffb3151ed2 (patch) | |
tree | 7bccc38101a8b412927ed4c054912728e577f648 /spec | |
parent | c96fd24f48c388116b6a1b42cc0be693aa428d0f (diff) |
Fix #555 - Use a better URL parser
Diffstat (limited to 'spec')
-rw-r--r-- | spec/lib/formatter_spec.rb | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/spec/lib/formatter_spec.rb b/spec/lib/formatter_spec.rb index 0db1634e9..4b003b8e5 100644 --- a/spec/lib/formatter_spec.rb +++ b/spec/lib/formatter_spec.rb @@ -17,8 +17,38 @@ RSpec.describe Formatter do end it 'contains a link' do - expect(subject).to match('<a rel="nofollow noopener" target="_blank" href="http://google.com"><span class="invisible">http://</span><span class="">google.com</span><span class="invisible"></span></a>') + expect(subject).to match('<a href="http://google.com" rel="nofollow noopener" target="_blank"><span class="invisible">http://</span><span class="">google.com</span><span class="invisible"></span></a>') end + +=begin + it 'matches a stand-alone medium URL' do + expect(subject.match('https://hackernoon.com/the-power-to-build-communities-a-response-to-mark-zuckerberg-3f2cac9148a4')[0]).to eq 'https://hackernoon.com/the-power-to-build-communities-a-response-to-mark-zuckerberg-3f2cac9148a4' + end + + it 'matches a stand-alone google URL' do + expect(subject.match('http://google.com')[0]).to eq 'http://google.com' + end + + it 'matches a URL without trailing period' do + expect(subject.match('http://www.mcmansionhell.com/post/156408871451/50-states-of-mcmansion-hell-scottsdale-arizona. ')[0]).to eq 'http://www.mcmansionhell.com/post/156408871451/50-states-of-mcmansion-hell-scottsdale-arizona' + end + + it 'matches a URL without closing paranthesis' do + expect(subject.match('(http://google.com/)')[0]).to eq 'http://google.com' + end + + it 'matches a URL without exclamation point' do + expect(subject.match('http://www.google.com! ')[0]).to eq 'http://www.google.com' + end + + it 'matches a URL with a query string' do + expect(subject.match('https://www.ruby-toolbox.com/search?utf8=%E2%9C%93&q=autolink')[0]).to eq 'https://www.ruby-toolbox.com/search?utf8=%E2%9C%93&q=autolink' + end + + it 'matches a URL with parenthesis in it' do + expect(subject.match('https://en.wikipedia.org/wiki/Diaspora_(software)')[0]).to eq 'https://en.wikipedia.org/wiki/Diaspora_(software)' + end +=end end describe '#reformat' do |