You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
882 B

  1. # frozen_string_literal: true
  2. require 'rails_helper'
  3. require Rails.root.join('app', 'lib', 'sanitize_config.rb')
  4. describe Sanitize::Config do
  5. describe '::MASTODON_STRICT' do
  6. subject { Sanitize::Config::MASTODON_STRICT }
  7. it 'converts h1 to p' do
  8. expect(Sanitize.fragment('<h1>Foo</h1>', subject)).to eq '<p>Foo</p>'
  9. end
  10. it 'converts ul to p' do
  11. expect(Sanitize.fragment('<p>Check out:</p><ul><li>Foo</li><li>Bar</li></ul>', subject)).to eq '<p>Check out:</p><p>Foo<br>Bar</p>'
  12. end
  13. it 'converts p inside ul' do
  14. expect(Sanitize.fragment('<ul><li><p>Foo</p><p>Bar</p></li><li>Baz</li></ul>', subject)).to eq '<p>Foo<br>Bar<br>Baz</p>'
  15. end
  16. it 'converts ul inside ul' do
  17. expect(Sanitize.fragment('<ul><li>Foo</li><li><ul><li>Bar</li><li>Baz</li></ul></li></ul>', subject)).to eq '<p>Foo<br>Bar<br>Baz</p>'
  18. end
  19. end
  20. end