mirror of
https://github.com/meineerde/redmine.git
synced 2025-12-19 23:11:12 +00:00
Option to send email notification on "Target version updated" (#17840).
Patch by Yuichi HARADA. git-svn-id: http://svn.redmine.org/redmine/trunk@18595 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
d182e73643
commit
16c580a2f8
@ -308,7 +308,8 @@ class Journal < ActiveRecord::Base
|
|||||||
(Setting.notified_events.include?('issue_note_added') && notes.present?) ||
|
(Setting.notified_events.include?('issue_note_added') && notes.present?) ||
|
||||||
(Setting.notified_events.include?('issue_status_updated') && new_status.present?) ||
|
(Setting.notified_events.include?('issue_status_updated') && new_status.present?) ||
|
||||||
(Setting.notified_events.include?('issue_assigned_to_updated') && detail_for_attribute('assigned_to_id').present?) ||
|
(Setting.notified_events.include?('issue_assigned_to_updated') && detail_for_attribute('assigned_to_id').present?) ||
|
||||||
(Setting.notified_events.include?('issue_priority_updated') && new_value_for('priority_id').present?)
|
(Setting.notified_events.include?('issue_priority_updated') && new_value_for('priority_id').present?) ||
|
||||||
|
(Setting.notified_events.include?('issue_fixed_version_updated') && detail_for_attribute('fixed_version_id').present?)
|
||||||
)
|
)
|
||||||
Mailer.deliver_issue_edit(self)
|
Mailer.deliver_issue_edit(self)
|
||||||
end
|
end
|
||||||
|
|||||||
@ -588,6 +588,7 @@ en:
|
|||||||
label_issue_status_updated: Status updated
|
label_issue_status_updated: Status updated
|
||||||
label_issue_assigned_to_updated: Assignee updated
|
label_issue_assigned_to_updated: Assignee updated
|
||||||
label_issue_priority_updated: Priority updated
|
label_issue_priority_updated: Priority updated
|
||||||
|
label_issue_fixed_version_updated: Target version updated
|
||||||
label_document: Document
|
label_document: Document
|
||||||
label_document_new: New document
|
label_document_new: New document
|
||||||
label_document_plural: Documents
|
label_document_plural: Documents
|
||||||
|
|||||||
@ -16,6 +16,7 @@ module Redmine
|
|||||||
notifications << Notifiable.new('issue_status_updated', 'issue_updated')
|
notifications << Notifiable.new('issue_status_updated', 'issue_updated')
|
||||||
notifications << Notifiable.new('issue_assigned_to_updated', 'issue_updated')
|
notifications << Notifiable.new('issue_assigned_to_updated', 'issue_updated')
|
||||||
notifications << Notifiable.new('issue_priority_updated', 'issue_updated')
|
notifications << Notifiable.new('issue_priority_updated', 'issue_updated')
|
||||||
|
notifications << Notifiable.new('issue_fixed_version_updated', 'issue_updated')
|
||||||
notifications << Notifiable.new('news_added')
|
notifications << Notifiable.new('news_added')
|
||||||
notifications << Notifiable.new('news_comment_added')
|
notifications << Notifiable.new('news_comment_added')
|
||||||
notifications << Notifiable.new('document_added')
|
notifications << Notifiable.new('document_added')
|
||||||
|
|||||||
@ -22,12 +22,12 @@ require File.expand_path('../../test_helper', __FILE__)
|
|||||||
class JournalObserverTest < ActiveSupport::TestCase
|
class JournalObserverTest < ActiveSupport::TestCase
|
||||||
fixtures :issues, :issue_statuses, :journals, :journal_details, :projects,
|
fixtures :issues, :issue_statuses, :journals, :journal_details, :projects,
|
||||||
:projects_trackers, :trackers, :enabled_modules, :enumerations,
|
:projects_trackers, :trackers, :enabled_modules, :enumerations,
|
||||||
:users, :email_addresses, :roles, :members, :member_roles
|
:users, :user_preferences, :email_addresses, :roles, :members, :member_roles,
|
||||||
|
:versions
|
||||||
|
|
||||||
def setup
|
def setup
|
||||||
User.current = nil
|
User.current = nil
|
||||||
ActionMailer::Base.deliveries.clear
|
ActionMailer::Base.deliveries.clear
|
||||||
@journal = Journal.find 1
|
|
||||||
end
|
end
|
||||||
|
|
||||||
# context: issue_updated notified_events
|
# context: issue_updated notified_events
|
||||||
@ -174,4 +174,28 @@ class JournalObserverTest < ActiveSupport::TestCase
|
|||||||
end
|
end
|
||||||
assert_equal 0, ActionMailer::Base.deliveries.size
|
assert_equal 0, ActionMailer::Base.deliveries.size
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_create_should_send_email_notification_with_issue_fixed_version_updated
|
||||||
|
with_settings :notified_events => %w(issue_fixed_version_updated) do
|
||||||
|
user = User.find_by_login('jsmith')
|
||||||
|
issue = issues(:issues_001)
|
||||||
|
issue.init_journal(user)
|
||||||
|
issue.fixed_version = versions(:versions_003)
|
||||||
|
|
||||||
|
assert issue.save
|
||||||
|
assert_equal 2, ActionMailer::Base.deliveries.size
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_create_should_not_send_email_notification_without_issue_fixed_version_updated
|
||||||
|
with_settings :notified_events => [] do
|
||||||
|
user = User.find_by_login('jsmith')
|
||||||
|
issue = issues(:issues_001)
|
||||||
|
issue.init_journal(user)
|
||||||
|
issue.fixed_version = versions(:versions_003)
|
||||||
|
|
||||||
|
assert issue.save
|
||||||
|
assert_equal 0, ActionMailer::Base.deliveries.size
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user