diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2015-10-17 09:08:18 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2015-10-17 09:08:18 +0000 |
commit | 1ccdf38fdde16421905f8419bb83f0e923bd16bc (patch) | |
tree | eee2033d7563c5398692a45a7a16f987bdd552fd /test/unit/mail_handler_test.rb | |
parent | af3c91d02aff6593de4847390df59795597bb181 (diff) | |
download | redmine-1ccdf38fdde16421905f8419bb83f0e923bd16bc.tar.gz redmine-1ccdf38fdde16421905f8419bb83f0e923bd16bc.zip |
Mail Handler: add support for allow_override=all (#20543).
git-svn-id: http://svn.redmine.org/redmine/trunk@14681 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'test/unit/mail_handler_test.rb')
-rw-r--r-- | test/unit/mail_handler_test.rb | 49 |
1 files changed, 44 insertions, 5 deletions
diff --git a/test/unit/mail_handler_test.rb b/test/unit/mail_handler_test.rb index 40026b2d1..4a16eb7f9 100644 --- a/test/unit/mail_handler_test.rb +++ b/test/unit/mail_handler_test.rb @@ -40,10 +40,9 @@ class MailHandlerTest < ActiveSupport::TestCase Setting.clear_cache end - def test_add_issue + def test_add_issue_with_specific_overrides ActionMailer::Base.deliveries.clear lft1 = new_issue_lft - # This email contains: 'Project: onlinestore' issue = submit_email('ticket_on_given_project.eml', :allow_override => ['status', 'start_date', 'due_date', 'assigned_to', 'fixed_version', 'estimated_hours', 'done_ratio'] ) @@ -74,6 +73,46 @@ class MailHandlerTest < ActiveSupport::TestCase assert mail.subject.include?('New ticket on a given project') end + def test_add_issue_with_all_overrides + ActionMailer::Base.deliveries.clear + lft1 = new_issue_lft + issue = submit_email('ticket_on_given_project.eml', :allow_override => 'all') + assert issue.is_a?(Issue) + assert !issue.new_record? + issue.reload + assert_equal Project.find(2), issue.project + assert_equal issue.project.trackers.first, issue.tracker + assert_equal IssueStatus.find_by_name('Resolved'), issue.status + assert issue.description.include?('Lorem ipsum dolor sit amet, consectetuer adipiscing elit.') + assert_equal '2010-01-01', issue.start_date.to_s + assert_equal '2010-12-31', issue.due_date.to_s + assert_equal User.find_by_login('jsmith'), issue.assigned_to + assert_equal Version.find_by_name('Alpha'), issue.fixed_version + assert_equal 2.5, issue.estimated_hours + assert_equal 30, issue.done_ratio + end + + def test_add_issue_without_overrides_should_ignore_attributes + WorkflowRule.delete_all + issue = submit_email('ticket_on_given_project.eml') + assert issue.is_a?(Issue) + assert !issue.new_record? + issue.reload + assert_equal Project.find(2), issue.project + assert_equal 'New ticket on a given project', issue.subject + assert issue.description.include?('Lorem ipsum dolor sit amet, consectetuer adipiscing elit.') + assert_equal User.find_by_login('jsmith'), issue.author + + assert_equal issue.project.trackers.first, issue.tracker + assert_equal 'New', issue.status.name + assert_not_equal '2010-01-01', issue.start_date.to_s + assert_nil issue.due_date + assert_nil issue.assigned_to + assert_nil issue.fixed_version + assert_nil issue.estimated_hours + assert_equal 0, issue.done_ratio + end + def test_add_issue_with_default_tracker # This email contains: 'Project: onlinestore' issue = submit_email( @@ -86,9 +125,9 @@ class MailHandlerTest < ActiveSupport::TestCase assert_equal 'Support request', issue.tracker.name end - def test_add_issue_with_status + def test_add_issue_with_status_override # This email contains: 'Project: onlinestore' and 'Status: Resolved' - issue = submit_email('ticket_on_given_project.eml') + issue = submit_email('ticket_on_given_project.eml', :allow_override => ['status']) assert issue.is_a?(Issue) assert !issue.new_record? issue.reload @@ -185,7 +224,7 @@ class MailHandlerTest < ActiveSupport::TestCase def test_add_issue_with_custom_fields issue = submit_email('ticket_with_custom_fields.eml', - :issue => {:project => 'onlinestore'}, :allow_override => ['database', 'Searchable field'] + :issue => {:project => 'onlinestore'}, :allow_override => ['database', 'Searchable_field'] ) assert issue.is_a?(Issue) assert !issue.new_record? |