mirror of
https://github.com/meineerde/redmine.git
synced 2025-12-24 01:11:12 +00:00
Special character like quote breaks wiki links (#22967).
Patch by Marius BALTEANU. git-svn-id: http://svn.redmine.org/redmine/trunk@17490 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
04c8246b23
commit
e501cb3481
@ -780,6 +780,7 @@ module ApplicationHelper
|
||||
link_project = project
|
||||
esc, all, page, title = $1, $2, $3, $5
|
||||
if esc.nil?
|
||||
page = CGI.unescapeHTML(page)
|
||||
if page =~ /^\#(.+)$/
|
||||
anchor = sanitize_anchor_name($1)
|
||||
url = "##{anchor}"
|
||||
|
||||
@ -822,6 +822,25 @@ RAW
|
||||
to_test.each { |text, result| assert_equal "<p>#{result}</p>", textilizable(text) }
|
||||
end
|
||||
|
||||
def test_wiki_links_with_special_characters_should_work_in_textile
|
||||
to_test = wiki_links_with_special_characters
|
||||
|
||||
@project = Project.find(1)
|
||||
with_settings :text_formatting => 'textile' do
|
||||
to_test.each { |text, result| assert_equal "<p>#{result}</p>", textilizable(text) }
|
||||
end
|
||||
end
|
||||
|
||||
def test_wiki_links_with_special_characters_should_work_in_markdown
|
||||
to_test = wiki_links_with_special_characters
|
||||
|
||||
@project = Project.find(1)
|
||||
with_settings :text_formatting => 'markdown' do
|
||||
to_test.each { |text, result| assert_equal "<p>#{result}</p>", textilizable(text).strip }
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
def test_wiki_links_within_local_file_generation_context
|
||||
to_test = {
|
||||
# link to a page
|
||||
@ -1723,6 +1742,33 @@ RAW
|
||||
assert_equal '<span class="hours hours-int">0</span><span class="hours hours-dec">.75</span>', html_hours('0.75')
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def wiki_links_with_special_characters
|
||||
return {
|
||||
'[[Jack & Coke]]' =>
|
||||
link_to("Jack & Coke",
|
||||
"/projects/ecookbook/wiki/Jack_&_Coke",
|
||||
:class => "wiki-page new"),
|
||||
'[[a "quoted" name]]' =>
|
||||
link_to("a \"quoted\" name",
|
||||
"/projects/ecookbook/wiki/A_%22quoted%22_name",
|
||||
:class => "wiki-page new"),
|
||||
'[[le français, c\'est super]]' =>
|
||||
link_to("le français, c\'est super",
|
||||
"/projects/ecookbook/wiki/Le_fran%C3%A7ais_c'est_super",
|
||||
:class => "wiki-page new"),
|
||||
'[[broken < less]]' =>
|
||||
link_to("broken < less",
|
||||
"/projects/ecookbook/wiki/Broken_%3C_less",
|
||||
:class => "wiki-page new"),
|
||||
'[[broken > more]]' =>
|
||||
link_to("broken > more",
|
||||
"/projects/ecookbook/wiki/Broken_%3E_more",
|
||||
:class => "wiki-page new"),
|
||||
}
|
||||
end
|
||||
|
||||
def test_export_csv_encoding_select_tag_should_return_nil_when_general_csv_encoding_is_UTF8
|
||||
with_locale 'az' do
|
||||
assert_equal l(:general_csv_encoding), 'UTF-8'
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user