diff options
Diffstat (limited to 'spec/lib/banzai/filter')
-rw-r--r-- | spec/lib/banzai/filter/emoji_filter_spec.rb | 14 | ||||
-rw-r--r-- | spec/lib/banzai/filter/normalize_source_filter_spec.rb | 26 |
2 files changed, 40 insertions, 0 deletions
diff --git a/spec/lib/banzai/filter/emoji_filter_spec.rb b/spec/lib/banzai/filter/emoji_filter_spec.rb index d78763b6939..9005b4401b7 100644 --- a/spec/lib/banzai/filter/emoji_filter_spec.rb +++ b/spec/lib/banzai/filter/emoji_filter_spec.rb @@ -21,6 +21,20 @@ RSpec.describe Banzai::Filter::EmojiFilter do expect(doc.to_html).to match Regexp.escape(exp) end + it 'ignores unicode versions of trademark, copyright, and registered trademark' do + exp = act = '<p>™ © ®</p>' + doc = filter(act) + expect(doc.to_html).to match Regexp.escape(exp) + end + + it 'replaces name versions of trademark, copyright, and registered trademark' do + doc = filter('<p>:tm: :copyright: :registered:</p>') + + expect(doc.css('gl-emoji')[0].text).to eq '™' + expect(doc.css('gl-emoji')[1].text).to eq '©' + expect(doc.css('gl-emoji')[2].text).to eq '®' + end + it 'correctly encodes the URL' do doc = filter('<p>:+1:</p>') expect(doc.css('gl-emoji').first.text).to eq '👍' diff --git a/spec/lib/banzai/filter/normalize_source_filter_spec.rb b/spec/lib/banzai/filter/normalize_source_filter_spec.rb new file mode 100644 index 00000000000..8eaeec0e7b0 --- /dev/null +++ b/spec/lib/banzai/filter/normalize_source_filter_spec.rb @@ -0,0 +1,26 @@ +# frozen_string_literal: true + +require 'spec_helper' + +RSpec.describe Banzai::Filter::NormalizeSourceFilter do + include FilterSpecHelper + + it 'removes the UTF8 BOM from the beginning of the text' do + content = "\xEF\xBB\xBF---" + + output = filter(content) + + expect(output).to match '---' + end + + it 'does not remove those characters from anywhere else in the text' do + content = <<~MD + \xEF\xBB\xBF--- + \xEF\xBB\xBF--- + MD + + output = filter(content) + + expect(output).to match "---\n\xEF\xBB\xBF---\n" + end +end |