Commit 281643a1bfd6f4da88a278bfce20133c80105de5
1 parent
603e04bc
Exists in
spb-stable
and in
2 other branches
Add feature spec.
Showing
3 changed files
with
21 additions
and
3 deletions
Show diff stats
features/project/issues/issues.feature
| @@ -68,6 +68,12 @@ Feature: Project Issues | @@ -68,6 +68,12 @@ Feature: Project Issues | ||
| 68 | And I leave a comment with a header containing "Comment with a header" | 68 | And I leave a comment with a header containing "Comment with a header" |
| 69 | Then The comment with the header should not have an ID | 69 | Then The comment with the header should not have an ID |
| 70 | 70 | ||
| 71 | + @javascript | ||
| 72 | + Scenario: Blocks inside comments should not build relative links | ||
| 73 | + Given I visit issue page "Release 0.4" | ||
| 74 | + And I leave a comment with code block | ||
| 75 | + Then The code block should be unchanged | ||
| 76 | + | ||
| 71 | Scenario: Issues on empty project | 77 | Scenario: Issues on empty project |
| 72 | Given empty project "Empty Project" | 78 | Given empty project "Empty Project" |
| 73 | When I visit empty project page | 79 | When I visit empty project page |
features/steps/project/issues.rb
| @@ -163,4 +163,16 @@ class ProjectIssues < Spinach::FeatureSteps | @@ -163,4 +163,16 @@ class ProjectIssues < Spinach::FeatureSteps | ||
| 163 | project = Project.find_by(name: 'Empty Project') | 163 | project = Project.find_by(name: 'Empty Project') |
| 164 | visit project_issues_path(project) | 164 | visit project_issues_path(project) |
| 165 | end | 165 | end |
| 166 | + | ||
| 167 | + step 'I leave a comment with code block' do | ||
| 168 | + within(".js-main-target-form") do | ||
| 169 | + fill_in "note[note]", with: "```\nCommand [1]: /usr/local/bin/git , see [text](doc/text)\n```" | ||
| 170 | + click_button "Add Comment" | ||
| 171 | + sleep 0.05 | ||
| 172 | + end | ||
| 173 | + end | ||
| 174 | + | ||
| 175 | + step 'The code block should be unchanged' do | ||
| 176 | + page.should have_content("```\nCommand [1]: /usr/local/bin/git , see [text](doc/text)\n```") | ||
| 177 | + end | ||
| 166 | end | 178 | end |
lib/redcarpet/render/gitlab_html.rb
| @@ -6,8 +6,6 @@ class Redcarpet::Render::GitlabHTML < Redcarpet::Render::HTML | @@ -6,8 +6,6 @@ class Redcarpet::Render::GitlabHTML < Redcarpet::Render::HTML | ||
| 6 | def initialize(template, options = {}) | 6 | def initialize(template, options = {}) |
| 7 | @template = template | 7 | @template = template |
| 8 | @project = @template.instance_variable_get("@project") | 8 | @project = @template.instance_variable_get("@project") |
| 9 | - @ref = @template.instance_variable_get("@ref") | ||
| 10 | - @request_path = @template.instance_variable_get("@path") | ||
| 11 | @options = options.dup | 9 | @options = options.dup |
| 12 | super options | 10 | super options |
| 13 | end | 11 | end |
| @@ -46,7 +44,9 @@ class Redcarpet::Render::GitlabHTML < Redcarpet::Render::HTML | @@ -46,7 +44,9 @@ class Redcarpet::Render::GitlabHTML < Redcarpet::Render::HTML | ||
| 46 | end | 44 | end |
| 47 | 45 | ||
| 48 | def postprocess(full_document) | 46 | def postprocess(full_document) |
| 49 | - full_document = h.create_relative_links(full_document) | 47 | + unless @template.instance_variable_get("@project_wiki") || @project.nil? |
| 48 | + full_document = h.create_relative_links(full_document) | ||
| 49 | + end | ||
| 50 | h.gfm(full_document) | 50 | h.gfm(full_document) |
| 51 | end | 51 | end |
| 52 | end | 52 | end |