Skip to content
Snippets Groups Projects
Unverified Commit 6f475e92 authored by Mario Sebastián Celi Calderón's avatar Mario Sebastián Celi Calderón Committed by GitLab
Browse files

Check commit message for issue close pattern setting

We were not checking the project setting for auto closing issues
if the closing pattern was located in a commit's message.

Changelog: fixed
parent ade4233c
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -67,6 +67,7 @@ def issues_to_close(project, commit, user)
Gitlab::ClosingIssueExtractor
.new(project, user)
.closed_by_message(commit.safe_message)
.reject { |issue| issue.is_a?(Issue) && !issue.autoclose_by_merged_closing_merge_request? }
end
 
def update_issue_metrics(commit, author)
Loading
Loading
Loading
Loading
@@ -5,7 +5,8 @@
RSpec.describe ProcessCommitWorker, feature_category: :source_code_management do
let_it_be(:user) { create(:user) }
 
let(:project) { create(:project, :public, :repository) }
let(:auto_close_issues) { true }
let(:project) { create(:project, :public, :repository, autoclose_referenced_issues: auto_close_issues) }
let(:issue) { create(:issue, project: project, author: user) }
let(:commit) { project.commit }
 
Loading
Loading
@@ -115,6 +116,31 @@
end
end
end
context 'when project has issue auto close disabled' do
let(:auto_close_issues) { false }
it 'does not close related issues' do
expect { perform }.to not_change { Issues::CloseWorker.jobs.size }
end
context 'when issue is an external issue' do
let(:issue) { ExternalIssue.new('JIRA-123', project) }
let(:project) do
create(
:project,
:with_jira_integration,
:public,
:repository,
autoclose_referenced_issues: auto_close_issues
)
end
it 'closes issues that should be closed per the commit message' do
expect { perform }.to change { Issues::CloseWorker.jobs.size }.by(1)
end
end
end
end
 
context 'when commit has no issue references' do
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment