require 'rails_helper'
require 'html_prettify'
describe HtmlPrettify do
def t(source, expected)
expect(HtmlPrettify.render(source)).to eq(expected)
end
it 'correctly prettifies html' do
t "<p>All's well!</p>", "<p>All’s well!</p>"
t "<p>Eatin' Lunch'.</p>", "<p>Eatin’ Lunch’.</p>"
t "<p>a 1/4. is a fraction but not 1/4/2000</p>", "<p>a ¼. is a fraction but not 1/4/2000</p>"
t "<p>Well that'll be the day</p>", "<p>Well that’ll be the day</p>"
t %(<p>"Quoted text"</p>), %(<p>“Quoted text”</p>)
t "<p>I've been meaning to tell you ..</p>", "<p>I’ve been meaning to tell you ..</p>"
t "<p>single `backticks` in HTML should be preserved</p>", "<p>single `backticks` in HTML should be preserved</p>"
t "<p>double hyphen -- ndash --- mdash</p>", "<p>double hyphen – ndash — mdash</p>"
t "a long time ago...", "a long time ago…"
t "is 'this a mistake'?", "is ‘this a mistake’?"
t ERB::Util.html_escape("'that went well'"), "‘that went well’"
t '"that went well"', "“that went well”"
t ERB::Util.html_escape('"that went well"'), "“that went well”"
t 'src="test.png"> yay', "src=“test.png”> yay"
t ERB::Util.html_escape('<img src="test.png"> yay'), "<img src=“test.png”> yay"