2019-04-30 08:27:42 +08:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2015-10-11 17:41:23 +08:00
|
|
|
require 'rails_helper'
|
2015-09-24 11:37:53 +08:00
|
|
|
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"
|
|
|
|
|
2017-03-13 22:02:20 +08:00
|
|
|
t '\\\\mnt\\c', "\\\\mnt\\c"
|
|
|
|
|
2015-09-24 11:37:53 +08:00
|
|
|
t ERB::Util.html_escape('<img src="test.png"> yay'), "<img src=“test.png”> yay"
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|