mirror of
https://github.com/redmine/redmine.git
synced 2025-10-26 00:36:14 +02:00
Remove unused setting 'Blind carbon copy recipients (bcc)' (#30820).
git-svn-id: http://svn.redmine.org/redmine/trunk@21130 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -697,13 +697,6 @@ class Mailer < ActionMailer::Base
|
||||
redmine_headers 'Sender' => @author.login
|
||||
end
|
||||
|
||||
# Blind carbon copy recipients
|
||||
if Setting.bcc_recipients?
|
||||
headers[:bcc] = [headers[:to], headers[:cc]].flatten.uniq.reject(&:blank?)
|
||||
headers[:to] = nil
|
||||
headers[:cc] = nil
|
||||
end
|
||||
|
||||
if @message_id_object
|
||||
headers[:message_id] = "<#{self.class.message_id_for(@message_id_object, @user)}>"
|
||||
end
|
||||
|
||||
@@ -4,8 +4,6 @@
|
||||
<div class="box tabular settings">
|
||||
<p><%= setting_text_field :mail_from, :size => 60 %></p>
|
||||
|
||||
<p><%= setting_check_box :bcc_recipients %></p>
|
||||
|
||||
<p><%= setting_check_box :plain_text_mail %></p>
|
||||
|
||||
<p><%= setting_check_box :show_status_changes_in_mail_subject %></p>
|
||||
|
||||
@@ -421,7 +421,6 @@ en:
|
||||
setting_bulk_download_max_size: Maximum total size for bulk download
|
||||
setting_issues_export_limit: Issues export limit
|
||||
setting_mail_from: Emission email address
|
||||
setting_bcc_recipients: Blind carbon copy recipients (bcc)
|
||||
setting_plain_text_mail: Plain text mail (no HTML)
|
||||
setting_host_name: Host name and path
|
||||
setting_text_formatting: Text formatting
|
||||
|
||||
@@ -92,8 +92,6 @@ search_results_per_page:
|
||||
default: 10
|
||||
mail_from:
|
||||
default: redmine@example.net
|
||||
bcc_recipients:
|
||||
default: 1
|
||||
plain_text_mail:
|
||||
default: 0
|
||||
text_formatting:
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
class RemoveBccRecipientsSetting < ActiveRecord::Migration[6.1]
|
||||
def change
|
||||
Setting.where(:name => 'bcc_recipients').delete_all
|
||||
end
|
||||
end
|
||||
@@ -445,7 +445,7 @@ class AccountControllerTest < Redmine::ControllerTest
|
||||
end
|
||||
end
|
||||
mail = ActionMailer::Base.deliveries.last
|
||||
assert_equal ['jsmith@somenet.foo'], mail.bcc
|
||||
assert_equal ['jsmith@somenet.foo'], mail.to
|
||||
end
|
||||
|
||||
def test_lost_password_using_additional_email_address_should_send_email_to_the_address
|
||||
@@ -463,7 +463,7 @@ class AccountControllerTest < Redmine::ControllerTest
|
||||
end
|
||||
end
|
||||
mail = ActionMailer::Base.deliveries.last
|
||||
assert_equal ['anotherAddress@foo.bar'], mail.bcc
|
||||
assert_equal ['anotherAddress@foo.bar'], mail.to
|
||||
end
|
||||
|
||||
def test_lost_password_for_unknown_user_should_fail
|
||||
|
||||
@@ -107,7 +107,7 @@ class AdminControllerTest < Redmine::ControllerTest
|
||||
mail = ActionMailer::Base.deliveries.last
|
||||
assert_not_nil mail
|
||||
user = User.find(1)
|
||||
assert_equal [user.mail], mail.bcc
|
||||
assert_equal [user.mail], mail.to
|
||||
end
|
||||
|
||||
def test_test_email_failure_should_display_the_error
|
||||
|
||||
@@ -172,8 +172,8 @@ class EmailAddressesControllerTest < Redmine::ControllerTest
|
||||
assert_select 'a[href^=?]', 'http://localhost:3000/my/account', :text => 'My account'
|
||||
end
|
||||
# The old email address should be notified about a new address for security purposes
|
||||
assert [mail.bcc, mail.cc].flatten.include?(User.find(2).mail)
|
||||
assert [mail.bcc, mail.cc].flatten.include?('something@example.fr')
|
||||
assert mail.to.include?(User.find(2).mail)
|
||||
assert mail.to.include?('something@example.fr')
|
||||
end
|
||||
|
||||
def test_update
|
||||
@@ -230,7 +230,7 @@ class EmailAddressesControllerTest < Redmine::ControllerTest
|
||||
assert_mail_body_match I18n.t(:mail_body_security_notification_notify_disabled, value: 'another@somenet.foo'), mail
|
||||
|
||||
# The changed address should be notified for security purposes
|
||||
assert [mail.bcc, mail.cc].flatten.include?('another@somenet.foo')
|
||||
assert mail.to.include?('another@somenet.foo')
|
||||
end
|
||||
|
||||
def test_destroy
|
||||
@@ -300,6 +300,6 @@ class EmailAddressesControllerTest < Redmine::ControllerTest
|
||||
assert_mail_body_match I18n.t(:mail_body_security_notification_remove, field: I18n.t(:field_mail), value: 'another@somenet.foo'), mail
|
||||
|
||||
# The removed address should be notified for security purposes
|
||||
assert [mail.bcc, mail.cc].flatten.include?('another@somenet.foo')
|
||||
assert mail.to.include?('another@somenet.foo')
|
||||
end
|
||||
end
|
||||
|
||||
@@ -4332,9 +4332,9 @@ class IssuesControllerTest < Redmine::ControllerTest
|
||||
# Watchers notified
|
||||
assert_equal 3, ActionMailer::Base.deliveries.size
|
||||
mail = ActionMailer::Base.deliveries[1]
|
||||
assert [mail.bcc, mail.cc].flatten.include?(User.find(3).mail)
|
||||
assert [mail.to].flatten.include?(User.find(3).mail)
|
||||
mail = ActionMailer::Base.deliveries[2]
|
||||
assert [mail.bcc, mail.cc].flatten.include?(User.find(8).mail)
|
||||
assert [mail.to].flatten.include?(User.find(8).mail)
|
||||
end
|
||||
|
||||
def test_post_create_subissue
|
||||
|
||||
@@ -281,34 +281,32 @@ class IssuesCustomFieldsVisibilityTest < Redmine::ControllerTest
|
||||
|
||||
ActionMailer::Base.deliveries.clear
|
||||
@request.session[:user_id] = 1
|
||||
with_settings :bcc_recipients => '1' do
|
||||
assert_difference 'Issue.count' do
|
||||
post(
|
||||
:create,
|
||||
:params => {
|
||||
:project_id => 1,
|
||||
:issue => {
|
||||
:tracker_id => 1,
|
||||
:status_id => 1,
|
||||
:subject => 'New issue',
|
||||
:priority_id => 5,
|
||||
:custom_field_values => {
|
||||
@field1.id.to_s => 'Value0',
|
||||
@field2.id.to_s => 'Value1',
|
||||
@field3.id.to_s => 'Value2'
|
||||
},
|
||||
:watcher_user_ids => users_to_test.keys.map(&:id)
|
||||
}
|
||||
assert_difference 'Issue.count' do
|
||||
post(
|
||||
:create,
|
||||
:params => {
|
||||
:project_id => 1,
|
||||
:issue => {
|
||||
:tracker_id => 1,
|
||||
:status_id => 1,
|
||||
:subject => 'New issue',
|
||||
:priority_id => 5,
|
||||
:custom_field_values => {
|
||||
@field1.id.to_s => 'Value0',
|
||||
@field2.id.to_s => 'Value1',
|
||||
@field3.id.to_s => 'Value2'
|
||||
},
|
||||
:watcher_user_ids => users_to_test.keys.map(&:id)
|
||||
}
|
||||
)
|
||||
assert_response 302
|
||||
end
|
||||
}
|
||||
)
|
||||
assert_response 302
|
||||
end
|
||||
|
||||
assert_equal users_to_test.keys.size, ActionMailer::Base.deliveries.size
|
||||
# tests that each user receives 1 email with the custom fields he is allowed to see only
|
||||
users_to_test.each do |user, fields|
|
||||
mails = ActionMailer::Base.deliveries.select {|m| m.bcc.include? user.mail}
|
||||
mails = ActionMailer::Base.deliveries.select {|m| m.to.include? user.mail}
|
||||
assert_equal 1, mails.size
|
||||
mail = mails.first
|
||||
@fields.each_with_index do |field, i|
|
||||
@@ -330,26 +328,24 @@ class IssuesCustomFieldsVisibilityTest < Redmine::ControllerTest
|
||||
end
|
||||
ActionMailer::Base.deliveries.clear
|
||||
@request.session[:user_id] = 1
|
||||
with_settings :bcc_recipients => '1' do
|
||||
put(
|
||||
:update,
|
||||
:params => {
|
||||
:id => @issue.id,
|
||||
:issue => {
|
||||
:custom_field_values => {
|
||||
@field1.id.to_s => 'NewValue0',
|
||||
@field2.id.to_s => 'NewValue1',
|
||||
@field3.id.to_s => 'NewValue2'
|
||||
}
|
||||
put(
|
||||
:update,
|
||||
:params => {
|
||||
:id => @issue.id,
|
||||
:issue => {
|
||||
:custom_field_values => {
|
||||
@field1.id.to_s => 'NewValue0',
|
||||
@field2.id.to_s => 'NewValue1',
|
||||
@field3.id.to_s => 'NewValue2'
|
||||
}
|
||||
}
|
||||
)
|
||||
assert_response 302
|
||||
end
|
||||
}
|
||||
)
|
||||
assert_response 302
|
||||
assert_equal users_to_test.keys.size, ActionMailer::Base.deliveries.size
|
||||
# tests that each user receives 1 email with the custom fields he is allowed to see only
|
||||
users_to_test.each do |user, fields|
|
||||
mails = ActionMailer::Base.deliveries.select {|m| m.bcc.include? user.mail}
|
||||
mails = ActionMailer::Base.deliveries.select {|m| m.to.include? user.mail}
|
||||
assert_equal 1, mails.size
|
||||
mail = mails.first
|
||||
@fields.each_with_index do |field, i|
|
||||
@@ -371,22 +367,20 @@ class IssuesCustomFieldsVisibilityTest < Redmine::ControllerTest
|
||||
end
|
||||
ActionMailer::Base.deliveries.clear
|
||||
@request.session[:user_id] = 1
|
||||
with_settings :bcc_recipients => '1' do
|
||||
put(
|
||||
:update,
|
||||
:params => {
|
||||
:id => @issue.id,
|
||||
:issue => {
|
||||
:custom_field_values => {
|
||||
@field2.id.to_s => 'NewValue1', @field3.id.to_s => 'NewValue2'
|
||||
}
|
||||
put(
|
||||
:update,
|
||||
:params => {
|
||||
:id => @issue.id,
|
||||
:issue => {
|
||||
:custom_field_values => {
|
||||
@field2.id.to_s => 'NewValue1', @field3.id.to_s => 'NewValue2'
|
||||
}
|
||||
}
|
||||
)
|
||||
assert_response 302
|
||||
end
|
||||
}
|
||||
)
|
||||
assert_response 302
|
||||
users_to_test.each do |user, fields|
|
||||
mails = ActionMailer::Base.deliveries.select {|m| m.bcc.include? user.mail}
|
||||
mails = ActionMailer::Base.deliveries.select {|m| m.to.include? user.mail}
|
||||
if (fields & [@field2, @field3]).any?
|
||||
assert_equal 1, mails.size, "User #{user.id} was not notified"
|
||||
else
|
||||
|
||||
@@ -159,11 +159,10 @@ class MessagesControllerTest < Redmine::ControllerTest
|
||||
assert_mail_body_match 'Message body', mail
|
||||
end
|
||||
|
||||
bcc_email_addresses = mails.map(&:bcc).flatten
|
||||
# author
|
||||
assert_includes bcc_email_addresses, 'jsmith@somenet.foo'
|
||||
assert_equal ['jsmith@somenet.foo'], mails[0].to
|
||||
# project member
|
||||
assert_includes bcc_email_addresses, 'dlopper@somenet.foo'
|
||||
assert_equal ['dlopper@somenet.foo'], mails[1].to
|
||||
end
|
||||
|
||||
def test_get_edit
|
||||
|
||||
@@ -506,8 +506,8 @@ class MyControllerTest < Redmine::ControllerTest
|
||||
assert_select 'a[href^=?]', 'http://localhost:3000/my/account', :text => 'My account'
|
||||
end
|
||||
# The old email address should be notified about the change for security purposes
|
||||
assert [mail.bcc, mail.cc].flatten.include?(User.find(2).mail)
|
||||
assert [mail.bcc, mail.cc].flatten.include?('foobar@example.com')
|
||||
assert mail.to.include?(User.find(2).mail)
|
||||
assert mail.to.include?('foobar@example.com')
|
||||
end
|
||||
|
||||
def test_my_account_notify_about_high_priority_issues_preference
|
||||
|
||||
@@ -78,14 +78,12 @@ class SettingsControllerTest < Redmine::ControllerTest
|
||||
post :edit, :params => {
|
||||
:settings => {
|
||||
:mail_from => 'functional@test.foo',
|
||||
:bcc_recipients => '0',
|
||||
:notified_events => %w(issue_added issue_updated news_added),
|
||||
:emails_footer => 'Test footer'
|
||||
}
|
||||
}
|
||||
assert_redirected_to '/settings'
|
||||
assert_equal 'functional@test.foo', Setting.mail_from
|
||||
assert !Setting.bcc_recipients?
|
||||
assert_equal %w(issue_added issue_updated news_added), Setting.notified_events
|
||||
assert_equal 'Test footer', Setting.emails_footer
|
||||
end
|
||||
@@ -174,9 +172,8 @@ class SettingsControllerTest < Redmine::ControllerTest
|
||||
assert_select 'a[href^=?]', 'http://localhost:3000/settings'
|
||||
end
|
||||
# All admins should receive this
|
||||
recipients = [mail.bcc, mail.cc].flatten
|
||||
User.active.where(admin: true).each do |admin|
|
||||
assert_include admin.mail, recipients
|
||||
assert_include admin.mail, mail.to
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -283,25 +283,20 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
end
|
||||
|
||||
def test_create
|
||||
with_settings :bcc_recipients => '1' do
|
||||
assert_difference 'User.count' do
|
||||
assert_difference 'ActionMailer::Base.deliveries.size' do
|
||||
post(
|
||||
:create,
|
||||
:params => {
|
||||
:user => {
|
||||
:firstname => 'John',
|
||||
:lastname => 'Doe',
|
||||
:login => 'jdoe',
|
||||
:password => 'secret123',
|
||||
:password_confirmation => 'secret123',
|
||||
:mail => 'jdoe@gmail.com',
|
||||
:mail_notification => 'none'
|
||||
},
|
||||
:send_information => '1'
|
||||
}
|
||||
)
|
||||
end
|
||||
assert_difference 'User.count' do
|
||||
assert_difference 'ActionMailer::Base.deliveries.size' do
|
||||
post :create, :params => {
|
||||
:user => {
|
||||
:firstname => 'John',
|
||||
:lastname => 'Doe',
|
||||
:login => 'jdoe',
|
||||
:password => 'secret123',
|
||||
:password_confirmation => 'secret123',
|
||||
:mail => 'jdoe@gmail.com',
|
||||
:mail_notification => 'none'
|
||||
},
|
||||
:send_information => '1'
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
@@ -317,7 +312,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
|
||||
mail = ActionMailer::Base.deliveries.last
|
||||
assert_not_nil mail
|
||||
assert_equal [user.mail], mail.bcc
|
||||
assert_equal [user.mail], mail.to
|
||||
assert_mail_body_match 'secret', mail
|
||||
end
|
||||
|
||||
@@ -455,7 +450,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
User.where(admin: true, status: Principal::STATUS_ACTIVE).each do |admin|
|
||||
assert_not_nil(
|
||||
ActionMailer::Base.deliveries.detect do |mail|
|
||||
[mail.bcc, mail.cc].flatten.include?(admin.mail)
|
||||
[mail.to].flatten.include?(admin.mail)
|
||||
end
|
||||
)
|
||||
end
|
||||
@@ -463,6 +458,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
|
||||
def test_create_non_admin_should_not_send_security_notification
|
||||
ActionMailer::Base.deliveries.clear
|
||||
|
||||
post :create, :params => {
|
||||
:user => {
|
||||
:firstname => 'Edgar',
|
||||
@@ -474,6 +470,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
:admin => '0'
|
||||
}
|
||||
}
|
||||
|
||||
assert_nil ActionMailer::Base.deliveries.last
|
||||
end
|
||||
|
||||
@@ -481,6 +478,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
with_settings :gravatar_enabled => '1' do
|
||||
get :edit, :params => {:id => 2}
|
||||
end
|
||||
|
||||
assert_response :success
|
||||
assert_select 'h2>a+img.gravatar'
|
||||
assert_select 'input[name=?][value=?]', 'user[login]', 'jsmith'
|
||||
@@ -496,7 +494,9 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
|
||||
def test_edit_should_be_denied_for_anonymous
|
||||
assert User.find(6).anonymous?
|
||||
|
||||
get :edit, :params => {:id => 6}
|
||||
|
||||
assert_response 404
|
||||
end
|
||||
|
||||
@@ -505,16 +505,19 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
field.update_attribute :text_formatting, 'full'
|
||||
|
||||
get :edit, :params => {:id => 2}
|
||||
|
||||
assert_response :success
|
||||
end
|
||||
|
||||
def test_update
|
||||
ActionMailer::Base.deliveries.clear
|
||||
|
||||
put :update, :params => {
|
||||
:id => 2,
|
||||
:user => {:firstname => 'Changed', :mail_notification => 'only_assigned'},
|
||||
:pref => {:hide_mail => '1', :comments_sorting => 'desc'}
|
||||
}
|
||||
|
||||
user = User.find(2)
|
||||
assert_equal 'Changed', user.firstname
|
||||
assert_equal 'only_assigned', user.mail_notification
|
||||
@@ -539,6 +542,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
:id => 2,
|
||||
:user => {:group_ids => ['10']}
|
||||
}
|
||||
|
||||
user = User.find(2)
|
||||
assert_equal [10], user.group_ids
|
||||
end
|
||||
@@ -550,84 +554,81 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
u.status = User::STATUS_REGISTERED
|
||||
u.save!
|
||||
ActionMailer::Base.deliveries.clear
|
||||
with_settings :bcc_recipients => '1' do
|
||||
put(
|
||||
:update,
|
||||
:params => {
|
||||
:id => u.id,
|
||||
:user => {:status => User::STATUS_ACTIVE}
|
||||
}
|
||||
)
|
||||
end
|
||||
|
||||
put(
|
||||
:update,
|
||||
:params => {
|
||||
:id => u.id,
|
||||
:user => {:status => User::STATUS_ACTIVE}
|
||||
}
|
||||
)
|
||||
|
||||
assert u.reload.active?
|
||||
mail = ActionMailer::Base.deliveries.last
|
||||
assert_not_nil mail
|
||||
assert_equal ['foo.bar@somenet.foo'], mail.bcc
|
||||
assert_equal ['foo.bar@somenet.foo'], mail.to
|
||||
assert_mail_body_match ll('fr', :notice_account_activated), mail
|
||||
end
|
||||
|
||||
def test_update_with_password_change_should_send_a_notification
|
||||
ActionMailer::Base.deliveries.clear
|
||||
with_settings :bcc_recipients => '1' do
|
||||
put(
|
||||
:update,
|
||||
:params => {
|
||||
:id => 2,
|
||||
:user => {
|
||||
:password => 'newpass123',
|
||||
:password_confirmation => 'newpass123'
|
||||
},
|
||||
:send_information => '1'
|
||||
}
|
||||
)
|
||||
end
|
||||
|
||||
put(
|
||||
:update,
|
||||
:params => {
|
||||
:id => 2,
|
||||
:user => {
|
||||
:password => 'newpass123',
|
||||
:password_confirmation => 'newpass123'
|
||||
},
|
||||
:send_information => '1'
|
||||
}
|
||||
)
|
||||
u = User.find(2)
|
||||
assert u.check_password?('newpass123')
|
||||
|
||||
mail = ActionMailer::Base.deliveries.last
|
||||
assert_not_nil mail
|
||||
assert_equal [u.mail], mail.bcc
|
||||
assert_equal [u.mail], mail.to
|
||||
assert_mail_body_match 'newpass123', mail
|
||||
end
|
||||
|
||||
def test_update_with_password_change_by_admin_should_send_a_security_notification
|
||||
with_settings :bcc_recipients => '0' do
|
||||
ActionMailer::Base.deliveries.clear
|
||||
user = User.find_by(login: 'jsmith')
|
||||
ActionMailer::Base.deliveries.clear
|
||||
user = User.find_by(login: 'jsmith')
|
||||
|
||||
put :update, :params => {
|
||||
:id => user.id,
|
||||
:user => {:password => 'newpass123', :password_confirmation => 'newpass123'}
|
||||
}
|
||||
put :update, :params => {
|
||||
:id => user.id,
|
||||
:user => {:password => 'newpass123', :password_confirmation => 'newpass123'}
|
||||
}
|
||||
|
||||
assert_equal 1, ActionMailer::Base.deliveries.size
|
||||
mail = ActionMailer::Base.deliveries.last
|
||||
assert_equal [user.mail], mail.to
|
||||
assert_match 'Security notification', mail.subject
|
||||
assert_mail_body_match 'Your password has been changed.', mail
|
||||
end
|
||||
assert_equal 1, ActionMailer::Base.deliveries.size
|
||||
mail = ActionMailer::Base.deliveries.last
|
||||
assert_equal [user.mail], mail.to
|
||||
assert_match 'Security notification', mail.subject
|
||||
assert_mail_body_match 'Your password has been changed.', mail
|
||||
end
|
||||
|
||||
def test_update_with_generate_password_should_email_the_password
|
||||
ActionMailer::Base.deliveries.clear
|
||||
with_settings :bcc_recipients => '1' do
|
||||
put(
|
||||
:update,
|
||||
:params => {
|
||||
:id => 2,
|
||||
:user => {
|
||||
:generate_password => '1',
|
||||
:password => '',
|
||||
:password_confirmation => ''
|
||||
},
|
||||
:send_information => '1'
|
||||
}
|
||||
)
|
||||
end
|
||||
|
||||
put(
|
||||
:update,
|
||||
:params => {
|
||||
:id => 2,
|
||||
:user => {
|
||||
:generate_password => '1',
|
||||
:password => '',
|
||||
:password_confirmation => ''
|
||||
},
|
||||
:send_information => '1'
|
||||
}
|
||||
)
|
||||
|
||||
mail = ActionMailer::Base.deliveries.last
|
||||
assert_not_nil mail
|
||||
u = User.find(2)
|
||||
assert_equal [u.mail], mail.bcc
|
||||
assert_equal [u.mail], mail.to
|
||||
m = mail_body(mail).match(/Password: ([a-zA-Z0-9]+)/)
|
||||
assert m
|
||||
password = m[1]
|
||||
@@ -720,7 +721,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
User.where(admin: true, status: Principal::STATUS_ACTIVE).each do |admin|
|
||||
assert_not_nil(
|
||||
ActionMailer::Base.deliveries.detect do |mail|
|
||||
[mail.bcc, mail.cc].flatten.include?(admin.mail)
|
||||
[mail.to].flatten.include?(admin.mail)
|
||||
end
|
||||
)
|
||||
end
|
||||
@@ -750,7 +751,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
User.where(admin: true, status: Principal::STATUS_ACTIVE).each do |admin|
|
||||
assert_not_nil(
|
||||
ActionMailer::Base.deliveries.detect do |mail|
|
||||
[mail.bcc, mail.cc].flatten.include?(admin.mail)
|
||||
[mail.to].flatten.include?(admin.mail)
|
||||
end
|
||||
)
|
||||
end
|
||||
@@ -780,7 +781,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
User.where(admin: true, status: Principal::STATUS_ACTIVE).each do |admin|
|
||||
assert_not_nil(
|
||||
ActionMailer::Base.deliveries.detect do |mail|
|
||||
[mail.bcc, mail.cc].flatten.include?(admin.mail)
|
||||
[mail.to].flatten.include?(admin.mail)
|
||||
end
|
||||
)
|
||||
end
|
||||
@@ -816,7 +817,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
User.where(admin: true, status: Principal::STATUS_ACTIVE).each do |admin|
|
||||
assert_not_nil(
|
||||
ActionMailer::Base.deliveries.detect do |mail|
|
||||
[mail.bcc, mail.cc].flatten.include?(admin.mail)
|
||||
[mail.to].flatten.include?(admin.mail)
|
||||
end
|
||||
)
|
||||
end
|
||||
@@ -928,7 +929,7 @@ class UsersControllerTest < Redmine::ControllerTest
|
||||
User.where(admin: true, status: Principal::STATUS_ACTIVE).each do |admin|
|
||||
assert_not_nil(
|
||||
ActionMailer::Base.deliveries.detect do |mail|
|
||||
[mail.bcc, mail.cc].flatten.include?(admin.mail)
|
||||
[mail.to].flatten.include?(admin.mail)
|
||||
end
|
||||
)
|
||||
end
|
||||
|
||||
@@ -2686,7 +2686,7 @@ class IssueTest < ActiveSupport::TestCase
|
||||
issue.assigned_to = nil
|
||||
issue.save!
|
||||
|
||||
assert_include [user.mail], ActionMailer::Base.deliveries.map(&:bcc)
|
||||
assert_include [user.mail], ActionMailer::Base.deliveries.map(&:to)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -324,7 +324,7 @@ class MailerTest < ActiveSupport::TestCase
|
||||
user.pref.save
|
||||
User.current = user
|
||||
Mailer.deliver_news_added(news.reload)
|
||||
assert_equal 1, last_email.bcc.size
|
||||
assert_equal 1, last_email.to.size
|
||||
|
||||
# nobody to notify
|
||||
user.pref.no_self_notified = true
|
||||
@@ -430,8 +430,8 @@ class MailerTest < ActiveSupport::TestCase
|
||||
issue = Issue.find(1)
|
||||
assert Mailer.deliver_issue_add(issue)
|
||||
|
||||
assert mail = ActionMailer::Base.deliveries.find {|m| m.bcc.include?('dlopper@somenet.foo')}
|
||||
assert mail.bcc.include?('otheremail@somenet.foo')
|
||||
assert mail = ActionMailer::Base.deliveries.find {|m| m.to.include?('dlopper@somenet.foo')}
|
||||
assert mail.to.include?('otheremail@somenet.foo')
|
||||
end
|
||||
|
||||
test "#issue_add should not notify project members that are not allow to view the issue" do
|
||||
@@ -650,8 +650,8 @@ class MailerTest < ActiveSupport::TestCase
|
||||
def test_version_file_added
|
||||
attachements = [Attachment.find_by_container_type('Version')]
|
||||
assert Mailer.deliver_attachments_added(attachements)
|
||||
assert_not_nil last_email.bcc
|
||||
assert last_email.bcc.any?
|
||||
assert_not_nil last_email.to
|
||||
assert last_email.to.any?
|
||||
assert_select_email do
|
||||
assert_select "a[href=?]", "http://localhost:3000/projects/ecookbook/files"
|
||||
end
|
||||
@@ -660,8 +660,8 @@ class MailerTest < ActiveSupport::TestCase
|
||||
def test_project_file_added
|
||||
attachements = [Attachment.find_by_container_type('Project')]
|
||||
assert Mailer.deliver_attachments_added(attachements)
|
||||
assert_not_nil last_email.bcc
|
||||
assert last_email.bcc.any?
|
||||
assert_not_nil last_email.to
|
||||
assert last_email.to.any?
|
||||
assert_select_email do
|
||||
assert_select "a[href=?]", "http://localhost:3000/projects/ecookbook/files"
|
||||
end
|
||||
@@ -735,7 +735,7 @@ class MailerTest < ActiveSupport::TestCase
|
||||
Mailer.reminders(:days => days)
|
||||
assert_equal 1, ActionMailer::Base.deliveries.size
|
||||
mail = last_email
|
||||
assert mail.bcc.include?('dlopper@somenet.foo')
|
||||
assert mail.to.include?('dlopper@somenet.foo')
|
||||
assert_mail_body_match 'Bug #3: Error 281 when updating a recipe (5 days late)', mail
|
||||
assert_mail_body_match 'View all issues (2 open)', mail
|
||||
url =
|
||||
@@ -763,7 +763,7 @@ class MailerTest < ActiveSupport::TestCase
|
||||
Mailer.reminders(:days => 42)
|
||||
assert_equal 1, ActionMailer::Base.deliveries.size
|
||||
mail = last_email
|
||||
assert mail.bcc.include?('dlopper@somenet.foo')
|
||||
assert mail.to.include?('dlopper@somenet.foo')
|
||||
assert_mail_body_match(
|
||||
'Bug #3: Error 281 when updating a recipe (En retard de 5 jours)',
|
||||
mail
|
||||
@@ -783,7 +783,7 @@ class MailerTest < ActiveSupport::TestCase
|
||||
Mailer.reminders(:days => 42)
|
||||
assert_equal 1, ActionMailer::Base.deliveries.size
|
||||
mail = last_email
|
||||
assert mail.bcc.include?('dlopper@somenet.foo')
|
||||
assert mail.to.include?('dlopper@somenet.foo')
|
||||
assert_mail_body_no_match 'Closed issue', mail
|
||||
end
|
||||
end
|
||||
@@ -795,7 +795,7 @@ class MailerTest < ActiveSupport::TestCase
|
||||
Mailer.reminders(:days => 42, :users => ['3'])
|
||||
assert_equal 1, ActionMailer::Base.deliveries.size # No mail for dlopper
|
||||
mail = last_email
|
||||
assert mail.bcc.include?('dlopper@somenet.foo')
|
||||
assert mail.to.include?('dlopper@somenet.foo')
|
||||
assert_mail_body_match 'Bug #3: Error 281 when updating a recipe (5 days late)', mail
|
||||
end
|
||||
|
||||
@@ -828,7 +828,7 @@ class MailerTest < ActiveSupport::TestCase
|
||||
)
|
||||
assert_mail_body_match 'Assigned to group (Due in 5 days)', mail
|
||||
assert_mail_body_match(
|
||||
"View all issues (#{mail.bcc.include?('dlopper@somenet.foo') ? 3 : 2} open)",
|
||||
"View all issues (#{mail.to.include?('dlopper@somenet.foo') ? 3 : 2} open)",
|
||||
mail
|
||||
)
|
||||
end
|
||||
@@ -1125,7 +1125,7 @@ class MailerTest < ActiveSupport::TestCase
|
||||
|
||||
# Returns an array of email addresses to which emails were sent
|
||||
def recipients
|
||||
ActionMailer::Base.deliveries.map(&:bcc).flatten.sort
|
||||
ActionMailer::Base.deliveries.map(&:to).flatten.sort
|
||||
end
|
||||
|
||||
def last_email
|
||||
@@ -1143,6 +1143,6 @@ class MailerTest < ActiveSupport::TestCase
|
||||
end
|
||||
|
||||
def destination_user(mail)
|
||||
EmailAddress.where(:address => [mail.to, mail.cc, mail.bcc].flatten).map(&:user).first
|
||||
EmailAddress.where(:address => [mail.to, mail.cc].flatten).map(&:user).first
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user