@@ -707,11 +707,13 class RedCloth3 < String | |||||
707 | atts = pba( atts ) |
|
707 | atts = pba( atts ) | |
708 |
|
708 | |||
709 | # pass to prefix handler |
|
709 | # pass to prefix handler | |
|
710 | replacement = nil | |||
710 | if respond_to? "textile_#{ tag }", true |
|
711 | if respond_to? "textile_#{ tag }", true | |
711 |
|
|
712 | replacement = method( "textile_#{ tag }" ).call( tag, atts, cite, content ) | |
712 | elsif respond_to? "textile_#{ tagpre }_", true |
|
713 | elsif respond_to? "textile_#{ tagpre }_", true | |
713 |
|
|
714 | replacement = method( "textile_#{ tagpre }_" ).call( tagpre, num, atts, cite, content ) | |
714 | end |
|
715 | end | |
|
716 | text.gsub!( $& ) { replacement } if replacement | |||
715 | end |
|
717 | end | |
716 | end |
|
718 | end | |
717 |
|
719 |
@@ -64,12 +64,18 class Redmine::WikiFormatting::TextileFormatterTest < HelperTestCase | |||||
64 | '@<Location /redmine>@' => '<code><Location /redmine></code>' |
|
64 | '@<Location /redmine>@' => '<code><Location /redmine></code>' | |
65 | ) |
|
65 | ) | |
66 | end |
|
66 | end | |
67 |
|
67 | |||
68 | def test_escaping |
|
68 | def test_escaping | |
69 | assert_html_output( |
|
69 | assert_html_output( | |
70 | 'this is a <script>' => 'this is a <script>' |
|
70 | 'this is a <script>' => 'this is a <script>' | |
71 | ) |
|
71 | ) | |
72 | end |
|
72 | end | |
|
73 | ||||
|
74 | def test_use_of_backslashes_followed_by_numbers_in_headers | |||
|
75 | assert_html_output({ | |||
|
76 | 'h1. 2009\02\09' => '<h1>2009\02\09</h1>' | |||
|
77 | }, false) | |||
|
78 | end | |||
73 |
|
79 | |||
74 | def test_double_dashes_should_not_strikethrough |
|
80 | def test_double_dashes_should_not_strikethrough | |
75 | assert_html_output( |
|
81 | assert_html_output( | |
@@ -88,9 +94,9 class Redmine::WikiFormatting::TextileFormatterTest < HelperTestCase | |||||
88 |
|
94 | |||
89 | private |
|
95 | private | |
90 |
|
96 | |||
91 | def assert_html_output(to_test) |
|
97 | def assert_html_output(to_test, expect_paragraph = true) | |
92 | to_test.each do |text, expected| |
|
98 | to_test.each do |text, expected| | |
93 | assert_equal "<p>#{expected}</p>", @formatter.new(text).to_html, "Formatting the following text failed:\n===\n#{text}\n===\n" |
|
99 | assert_equal(( expect_paragraph ? "<p>#{expected}</p>" : expected ), @formatter.new(text).to_html, "Formatting the following text failed:\n===\n#{text}\n===\n") | |
94 | end |
|
100 | end | |
95 | end |
|
101 | end | |
96 | end |
|
102 | end |
General Comments 0
You need to be logged in to leave comments.
Login now