From 603ef5d49ed453cbb47b68d3af078529c6b834a1 Mon Sep 17 00:00:00 2001 From: Gabriel Gizotti <gabriel@gizotti.com> Date: Mon, 5 Dec 2016 21:29:17 +1000 Subject: [PATCH] Show either description or closes issues references on MergeRequest#merge_commit_message so closes issues references are not duplicated --- app/models/merge_request.rb | 14 ++++++++------ .../projects/merge_requests/widget/_open.html.haml | 8 +++----- spec/models/merge_request_spec.rb | 2 +- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index 48c30b08502..da293c3738f 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -633,18 +633,20 @@ class MergeRequest < ActiveRecord::Base issue.to_reference(target_project) end - message = "Merge branch '#{source_branch}' into '#{target_branch}'\n\n" - message << "#{title}\n\n" + message = [ + "Merge branch '#{source_branch}' into '#{target_branch}'", + title + ] - if closes_issues_references.present? + if !include_description && closes_issues_references.present? issue_text = 'issue'.pluralize(closes_issues_references.size) - message << "Closes #{issue_text} #{closes_issues_references.to_sentence}\n\n" + message << "Closes #{issue_text} #{closes_issues_references.to_sentence}" end - message << "#{description}\n\n" if include_description && description.present? + message << "#{description}" if include_description && description.present? message << "See merge request #{to_reference}" - message + message.join("\n\n") end def reset_merge_when_build_succeeds diff --git a/app/views/projects/merge_requests/widget/_open.html.haml b/app/views/projects/merge_requests/widget/_open.html.haml index 695359a48a3..f4aa1609a1b 100644 --- a/app/views/projects/merge_requests/widget/_open.html.haml +++ b/app/views/projects/merge_requests/widget/_open.html.haml @@ -30,7 +30,7 @@ - elsif @merge_request.can_be_merged? || resolved_conflicts = render 'projects/merge_requests/widget/open/accept' - - if mr_closes_issues.present? || mr_issues_mentioned_but_not_closing + - if mr_closes_issues.present? || mr_issues_mentioned_but_not_closing.present? .mr-widget-footer %span = icon('check') @@ -41,9 +41,7 @@ = mr_assign_issues_link - if mr_issues_mentioned_but_not_closing.present? #{"Issue".pluralize(mr_issues_mentioned_but_not_closing.size)} - = succeed '' do - != markdown issues_sentence(mr_issues_mentioned_but_not_closing), pipeline: :gfm, author: @merge_request.author - = succeed '' do - mentioned but will not closed. + != markdown issues_sentence(mr_issues_mentioned_but_not_closing), pipeline: :gfm, author: @merge_request.author + #{mr_issues_mentioned_but_not_closing.size > 1 ? 'are' : 'is'} mentioned but will not closed. diff --git a/spec/models/merge_request_spec.rb b/spec/models/merge_request_spec.rb index f74c89bba4d..1e9790cf644 100644 --- a/spec/models/merge_request_spec.rb +++ b/spec/models/merge_request_spec.rb @@ -425,7 +425,7 @@ describe MergeRequest, models: true do and_return(subject.target_branch) expect(subject.merge_commit_message) - .to match("Closed Issues: #{issue.to_reference}") + .to match("Closes issue #{issue.to_reference}") end it 'includes its reference in the body' do -- GitLab