Merge branch 'master' of dev.gitlab.org:gitlab/gitlabhq
This commit is contained in:
commit
66dd61ef0f
|
@ -10,6 +10,17 @@ class Redcarpet::Render::GitlabHTML < Redcarpet::Render::HTML
|
|||
super options
|
||||
end
|
||||
|
||||
# If project has issue number 39, apostrophe will be linked in
|
||||
# regular text to the issue as Redcarpet will convert apostrophe to
|
||||
# #39;
|
||||
# We replace apostrophe with right single quote before Redcarpet
|
||||
# does the processing and put the apostrophe back in postprocessing.
|
||||
# This only influences regular text, code blocks are untouched.
|
||||
def normal_text(text)
|
||||
return text unless text.present?
|
||||
text.gsub("'", "’")
|
||||
end
|
||||
|
||||
def block_code(code, language)
|
||||
# New lines are placed to fix an rendering issue
|
||||
# with code wrapped inside <h1> tag for next case:
|
||||
|
@ -44,6 +55,7 @@ class Redcarpet::Render::GitlabHTML < Redcarpet::Render::HTML
|
|||
end
|
||||
|
||||
def postprocess(full_document)
|
||||
full_document.gsub!("’", "'")
|
||||
unless @template.instance_variable_get("@project_wiki") || @project.nil?
|
||||
full_document = h.create_relative_links(full_document)
|
||||
end
|
||||
|
|
|
@ -530,6 +530,24 @@ describe GitlabMarkdownHelper do
|
|||
markdown(actual).should match(%r{<li>light by <a.+>@#{member.user.username}</a></li>})
|
||||
end
|
||||
|
||||
it "should not link the apostrophe to issue 39" do
|
||||
project.team << [user, :master]
|
||||
project.issues.stub(:where).with(iid: '39').and_return([issue])
|
||||
|
||||
actual = "Yes, it is @#{member.user.username}'s task."
|
||||
expected = /Yes, it is <a.+>@#{member.user.username}<\/a>'s task/
|
||||
markdown(actual).should match(expected)
|
||||
end
|
||||
|
||||
it "should not link the apostrophe to issue 39 in code blocks" do
|
||||
project.team << [user, :master]
|
||||
project.issues.stub(:where).with(iid: '39').and_return([issue])
|
||||
|
||||
actual = "Yes, `it is @#{member.user.username}'s task.`"
|
||||
expected = /Yes, <code>it is @gfm\'s task.<\/code>/
|
||||
markdown(actual).should match(expected)
|
||||
end
|
||||
|
||||
it "should handle references in <em>" do
|
||||
actual = "Apply _!#{merge_request.iid}_ ASAP"
|
||||
|
||||
|
|
Loading…
Reference in New Issue