mirror of
https://github.com/redmine/redmine.git
synced 2026-01-30 03:09:58 +01:00
Allow a default version to be set on the command line for incoming emails (#7346).
git-svn-id: http://svn.redmine.org/redmine/trunk@14789 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -62,7 +62,7 @@ class MailHandler < ActionMailer::Base
|
||||
# Use when receiving emails with rake tasks
|
||||
def self.extract_options_from_env(env)
|
||||
options = {:issue => {}}
|
||||
%w(project status tracker category priority).each do |option|
|
||||
%w(project status tracker category priority fixed_version).each do |option|
|
||||
options[:issue][option.to_sym] = env[option] if env[option]
|
||||
end
|
||||
%w(allow_override unknown_user no_permission_check no_account_notice default_group project_from_subaddress).each do |option|
|
||||
|
||||
@@ -93,6 +93,7 @@ class RedmineMailHandler
|
||||
opts.on("-t", "--tracker TRACKER", "name of the target tracker") {|v| self.issue_attributes['tracker'] = v}
|
||||
opts.on( "--category CATEGORY", "name of the target category") {|v| self.issue_attributes['category'] = v}
|
||||
opts.on( "--priority PRIORITY", "name of the target priority") {|v| self.issue_attributes['priority'] = v}
|
||||
opts.on( "--fixed-version VERSION","name of the target version") {|v| self.issue_attributes['fixed_version'] = v}
|
||||
opts.on( "--private", "create new issues as private") {|v| self.issue_attributes['is_private'] = '1'}
|
||||
opts.on("-o", "--allow-override ATTRS", "allow email content to set attributes values",
|
||||
"ATTRS is a comma separated list of attributes",
|
||||
|
||||
@@ -64,6 +64,7 @@ Issue attributes control options:
|
||||
tracker=TRACKER name of the target tracker
|
||||
category=CATEGORY name of the target category
|
||||
priority=PRIORITY name of the target priority
|
||||
fixed_version=VERSION name of the target version
|
||||
private create new issues as private
|
||||
allow_override=ATTRS allow email content to set attributes values
|
||||
ATTRS is a comma separated list of attributes
|
||||
|
||||
@@ -129,6 +129,17 @@ class MailHandlerTest < ActiveSupport::TestCase
|
||||
assert_equal 'Support request', issue.tracker.name
|
||||
end
|
||||
|
||||
def test_add_issue_with_default_version
|
||||
# This email contains: 'Project: onlinestore'
|
||||
issue = submit_email(
|
||||
'ticket_on_given_project.eml',
|
||||
:issue => {:fixed_version => 'Alpha'}
|
||||
)
|
||||
assert issue.is_a?(Issue)
|
||||
assert !issue.new_record?
|
||||
assert_equal 'Alpha', issue.reload.fixed_version.name
|
||||
end
|
||||
|
||||
def test_add_issue_with_status_override
|
||||
# This email contains: 'Project: onlinestore' and 'Status: Resolved'
|
||||
issue = submit_email('ticket_on_given_project.eml', :allow_override => ['status'])
|
||||
|
||||
Reference in New Issue
Block a user