diff options
author | Yorick Peterse <yorickpeterse@gmail.com> | 2016-07-18 13:37:23 +0000 |
---|---|---|
committer | Yorick Peterse <yorickpeterse@gmail.com> | 2016-07-18 13:37:23 +0000 |
commit | f6c6e91d9ff81bddac8a0143d96b09b396000a46 (patch) | |
tree | 0c81ef5f508f14976b1a87ef1406b63d747b539d /spec | |
parent | 4e898b9b5e1a782d226212ba6227a8ddcb5177ae (diff) | |
parent | 0c2da7f7348095ae6babeee230484f7f9c59ea62 (diff) | |
download | gitlab-ce-f6c6e91d9ff81bddac8a0143d96b09b396000a46.tar.gz |
Merge branch '18593-avoid-parse_html-when-rinku-didnt-do-anything' into 'master'
Don't parse Rinku returned value to DocFragment when didn't change original html string.
See merge request !5311
Diffstat (limited to 'spec')
-rw-r--r-- | spec/lib/banzai/filter/autolink_filter_spec.rb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/spec/lib/banzai/filter/autolink_filter_spec.rb b/spec/lib/banzai/filter/autolink_filter_spec.rb index 84c2ddf444e..dca7f997570 100644 --- a/spec/lib/banzai/filter/autolink_filter_spec.rb +++ b/spec/lib/banzai/filter/autolink_filter_spec.rb @@ -15,6 +15,16 @@ describe Banzai::Filter::AutolinkFilter, lib: true do expect(filter(act).to_html).to eq exp end + context 'when the input contains no links' do + it 'does not parse_html back the rinku returned value' do + act = HTML::Pipeline.parse('<p>This text contains no links to autolink</p>') + + expect_any_instance_of(described_class).not_to receive(:parse_html) + + filter(act).to_html + end + end + context 'Rinku schemes' do it 'autolinks http' do doc = filter("See #{link}") @@ -58,6 +68,16 @@ describe Banzai::Filter::AutolinkFilter, lib: true do expect(filter(act).to_html).to eq exp end end + + context 'when the input contains link' do + it 'does parse_html back the rinku returned value' do + act = HTML::Pipeline.parse("<p>See #{link}</p>") + + expect_any_instance_of(described_class).to receive(:parse_html).at_least(:once).and_call_original + + filter(act).to_html + end + end end context 'other schemes' do |