allow magic login route emails even when emails are disabled

This commit is contained in:
Arpit Jalan 2016-04-08 10:53:16 +05:30
parent eafba0c0c0
commit c5794ab0f6
2 changed files with 9 additions and 2 deletions

View File

@ -22,7 +22,7 @@ module Email
end
def send
return if SiteSetting.disable_emails
return if SiteSetting.disable_emails && @email_type.to_s != "admin_login"
return if ActionMailer::Base::NullMail === @message
return if ActionMailer::Base::NullMail === (@message.message rescue nil)

View File

@ -4,12 +4,19 @@ require 'email/sender'
describe Email::Sender do
it "doesn't deliver mail when mails are disabled" do
SiteSetting.expects(:disable_emails).returns(true)
SiteSetting.disable_emails = true
Mail::Message.any_instance.expects(:deliver_now).never
message = Mail::Message.new(to: "hello@world.com" , body: "hello")
expect(Email::Sender.new(message, :hello).send).to eq(nil)
end
it "delivers mail when mails are disabled but the email_type is admin_login" do
SiteSetting.disable_emails = true
Mail::Message.any_instance.expects(:deliver_now).once
message = Mail::Message.new(to: "hello@world.com" , body: "hello")
Email::Sender.new(message, :admin_login).send
end
it "doesn't deliver mail when the message is of type NullMail" do
Mail::Message.any_instance.expects(:deliver_now).never
message = ActionMailer::Base::NullMail.new