Fixes syntax highlighting broken by r1930 (#2143).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@1993 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
077723c90a
commit
9ae6e60c26
|
@ -1051,7 +1051,11 @@ class RedCloth3 < String
|
||||||
else
|
else
|
||||||
htmlesc( aftertag, :NoQuotes ) if aftertag
|
htmlesc( aftertag, :NoQuotes ) if aftertag
|
||||||
line = "<redpre##{ @pre_list.length }>"
|
line = "<redpre##{ @pre_list.length }>"
|
||||||
@pre_list << "#{ $3.gsub(/<(#{ OFFTAGS })[^>]*>/, '<\\1>') }#{ aftertag }"
|
$3.match(/<#{ OFFTAGS }([^>]*)>/)
|
||||||
|
tag = $1
|
||||||
|
$2.to_s.match(/(class\=\S+)/i)
|
||||||
|
tag << " #{$1}" if $1
|
||||||
|
@pre_list << "<#{ tag }>#{ aftertag }"
|
||||||
end
|
end
|
||||||
elsif $1 and codepre > 0
|
elsif $1 and codepre > 0
|
||||||
if codepre - used_offtags.length > 0
|
if codepre - used_offtags.length > 0
|
||||||
|
|
|
@ -192,8 +192,9 @@ class ApplicationHelperTest < HelperTestCase
|
||||||
"<pre><div>content</div></pre>" => "<pre><div>content</div></pre>",
|
"<pre><div>content</div></pre>" => "<pre><div>content</div></pre>",
|
||||||
"HTML comment: <!-- no comments -->" => "<p>HTML comment: <!-- no comments --></p>",
|
"HTML comment: <!-- no comments -->" => "<p>HTML comment: <!-- no comments --></p>",
|
||||||
"<!-- opening comment" => "<p><!-- opening comment</p>",
|
"<!-- opening comment" => "<p><!-- opening comment</p>",
|
||||||
# remove attributes
|
# remove attributes except class
|
||||||
"<pre class='foo'>some text</pre>" => "<pre>some text</pre>",
|
"<pre class='foo'>some text</pre>" => "<pre class='foo'>some text</pre>",
|
||||||
|
"<pre onmouseover='alert(1)'>some text</pre>" => "<pre>some text</pre>",
|
||||||
}
|
}
|
||||||
to_test.each { |text, result| assert_equal result, textilizable(text) }
|
to_test.each { |text, result| assert_equal result, textilizable(text) }
|
||||||
end
|
end
|
||||||
|
@ -207,6 +208,21 @@ class ApplicationHelperTest < HelperTestCase
|
||||||
to_test.each { |text, result| assert_equal result, textilizable(text) }
|
to_test.each { |text, result| assert_equal result, textilizable(text) }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def syntax_highlight
|
||||||
|
raw = <<-RAW
|
||||||
|
<pre><code class="ruby">
|
||||||
|
# Some ruby code here
|
||||||
|
</pre></code>
|
||||||
|
RAW
|
||||||
|
|
||||||
|
expected = <<-EXPECTED
|
||||||
|
<pre><code class="ruby CodeRay"><span class="no">1</span> <span class="c"># Some ruby code here</span>
|
||||||
|
</pre></code>
|
||||||
|
EXPECTED
|
||||||
|
|
||||||
|
assert_equal expected.gsub(%r{[\r\n\t]}, ''), textilizable(raw).gsub(%r{[\r\n\t]}, '')
|
||||||
|
end
|
||||||
|
|
||||||
def test_wiki_links_in_tables
|
def test_wiki_links_in_tables
|
||||||
to_test = {"|[[Page|Link title]]|[[Other Page|Other title]]|\n|Cell 21|[[Last page]]|" =>
|
to_test = {"|[[Page|Link title]]|[[Other Page|Other title]]|\n|Cell 21|[[Last page]]|" =>
|
||||||
'<tr><td><a href="/wiki/ecookbook/Page" class="wiki-page new">Link title</a></td>' +
|
'<tr><td><a href="/wiki/ecookbook/Page" class="wiki-page new">Link title</a></td>' +
|
||||||
|
|
Loading…
Reference in New Issue