Don’t close issues on original project from a fork
Signed-off-by: Paco Guzman <pacoguzmanp@gmail.com>
This commit is contained in:
parent
8890376f0f
commit
fa54a8e984
2 changed files with 14 additions and 1 deletions
|
@ -22,7 +22,9 @@ module Gitlab
|
|||
|
||||
@extractor.analyze(closing_statements.join(" "))
|
||||
|
||||
@extractor.issues
|
||||
@extractor.issues.reject do |issue|
|
||||
@extractor.project.forked_from?(issue.project) # Don't extract issues on original project
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -3,10 +3,12 @@ require 'spec_helper'
|
|||
describe Gitlab::ClosingIssueExtractor, lib: true do
|
||||
let(:project) { create(:project) }
|
||||
let(:project2) { create(:project) }
|
||||
let(:forked_project) { Projects::ForkService.new(project, project.creator).execute }
|
||||
let(:issue) { create(:issue, project: project) }
|
||||
let(:issue2) { create(:issue, project: project2) }
|
||||
let(:reference) { issue.to_reference }
|
||||
let(:cross_reference) { issue2.to_reference(project) }
|
||||
let(:fork_cross_reference) { issue.to_reference(forked_project) }
|
||||
|
||||
subject { described_class.new(project, project.creator) }
|
||||
|
||||
|
@ -278,6 +280,15 @@ describe Gitlab::ClosingIssueExtractor, lib: true do
|
|||
end
|
||||
end
|
||||
|
||||
context "with a cross-project fork reference" do
|
||||
subject { described_class.new(forked_project, forked_project.creator) }
|
||||
|
||||
it do
|
||||
message = "Closes #{fork_cross_reference}"
|
||||
expect(subject.closed_by_message(message)).to be_empty
|
||||
end
|
||||
end
|
||||
|
||||
context "with an invalid URL" do
|
||||
it do
|
||||
message = "Closes https://google.com#{urls.namespace_project_issue_path(issue2.project.namespace, issue2.project, issue2)}"
|
||||
|
|
Loading…
Reference in a new issue