Commit b3314704 authored by Douwe Maan's avatar Douwe Maan Committed by Valery Sizov

Update ExternalIssueReferenceFilter.

parent 0f30be02
......@@ -23,6 +23,18 @@ module Gitlab
end
end
def self.referenced_by(node)
project = Project.find(node.attr("data-project")) rescue nil
return unless project
id = node.attr("data-external-issue")
external_issue = ExternalIssue.new(id, project)
return unless external_issue
{ external_issue: external_issue }
end
def call
# Early return if the project isn't using an external tracker
return doc if project.nil? || project.default_issues_tracker?
......@@ -43,15 +55,13 @@ module Gitlab
project = context[:project]
self.class.references_in(text) do |match, id|
issue = ExternalIssue.new(id, project)
push_result(:external_issue, issue)
ExternalIssue.new(id, project)
url = url_for_issue(id, project, only_path: context[:only_path])
title = escape_once("Issue in #{project.external_issue_tracker.title}")
klass = reference_class(:issue)
data = data_attribute(project: project.id)
data = data_attribute(project: project.id, external_issue: id)
%(<a href="#{url}" #{data}
title="#{title}"
......
......@@ -78,7 +78,7 @@ module Gitlab::Markdown
it 'adds to the results hash' do
ext = JiraIssue.new(reference, project)
result = pipeline_result("Issue #{reference}")
result = reference_pipeline_result("Issue #{reference}")
expect(result[:references][:external_issue]).not_to be_empty
expect(result[:references][:external_issue]).to eq [ext]
end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment