From c0cd6df7a2d1fc321ac163fb1f33c45476035c9a Mon Sep 17 00:00:00 2001 From: "Z.J. van de Weg" Date: Mon, 28 Nov 2016 13:18:06 +0100 Subject: Accept `issue new` as command to create an issue Now only `/trigger issue create` is a valid command, but our UI shows Issue new everywhere. The default now will be `/trigger issue new`. The help message is adjusted to reflect this. Fixes: gitlab-org/gitlab-ce#25025 --- changelogs/unreleased/zj-issue-new-over-issue-create.yml | 4 ++++ lib/gitlab/chat_commands/issue_create.rb | 4 ++-- spec/lib/gitlab/chat_commands/issue_create_spec.rb | 7 +++++++ 3 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 changelogs/unreleased/zj-issue-new-over-issue-create.yml diff --git a/changelogs/unreleased/zj-issue-new-over-issue-create.yml b/changelogs/unreleased/zj-issue-new-over-issue-create.yml new file mode 100644 index 00000000000..9dd463e4efa --- /dev/null +++ b/changelogs/unreleased/zj-issue-new-over-issue-create.yml @@ -0,0 +1,4 @@ +--- +title: Accept issue new as command to create an issue +merge_request: +author: diff --git a/lib/gitlab/chat_commands/issue_create.rb b/lib/gitlab/chat_commands/issue_create.rb index 99c1382af44..1dba85c1b51 100644 --- a/lib/gitlab/chat_commands/issue_create.rb +++ b/lib/gitlab/chat_commands/issue_create.rb @@ -4,11 +4,11 @@ module Gitlab def self.match(text) # we can not match \n with the dot by passing the m modifier as than # the title and description are not seperated - /\Aissue\s+create\s+(?[^\n]*)\n*(?<description>(.|\n)*)/.match(text) + /\Aissue\s+(new|create)\s+(?<title>[^\n]*)\n*(?<description>(.|\n)*)/.match(text) end def self.help_message - 'issue create <title>\n<description>' + 'issue new <title>\n<description>' end def self.allowed?(project, user) diff --git a/spec/lib/gitlab/chat_commands/issue_create_spec.rb b/spec/lib/gitlab/chat_commands/issue_create_spec.rb index dd07cff9243..6c71e79ff6d 100644 --- a/spec/lib/gitlab/chat_commands/issue_create_spec.rb +++ b/spec/lib/gitlab/chat_commands/issue_create_spec.rb @@ -57,5 +57,12 @@ describe Gitlab::ChatCommands::IssueCreate, service: true do expect(match[:title]).to eq('my title') expect(match[:description]).to eq('description') end + + it 'matches the alias new' do + match = described_class.match("issue new my title") + + expect(match).not_to be_nil + expect(match[:title]).to eq('my title') + end end end -- cgit v1.2.1