test/markup_test.rb in gitlab-markup-1.6.3 vs test/markup_test.rb in gitlab-markup-1.6.4
- old
+ new
@@ -19,11 +19,12 @@
def assert_html_equal(expected, actual, msg = nil)
assertion = Proc.new do
expected_doc = Nokogiri::HTML(expected) {|config| config.noblanks}
actual_doc = Nokogiri::HTML(actual) {|config| config.noblanks}
- expected_doc.search('//text()').each {|node| node.content = normalize_html node.content}
- actual_doc.search('//text()').each {|node| node.content = normalize_html node.content}
+ # Normalize content of text nodes, excluding preformatted nodes
+ expected_doc.search('//text()[not(ancestor::pre)]').each {|node| node.content = normalize_html node.content}
+ actual_doc.search('//text()[not(ancestor::pre)]').each {|node| node.content = normalize_html node.content}
ignore_changes = {"+" => Regexp.union(/^\s*id=".*"\s*$/), "-" => nil}
expected_doc.diff(actual_doc) do |change, node|
if change != ' ' && !node.blank? then
break unless node.to_html =~ ignore_changes[change]