mirror of
https://github.com/discourse/discourse.git
synced 2025-05-22 02:51:14 +08:00
allow magic login route emails even when emails are disabled
This commit is contained in:
@ -22,7 +22,7 @@ module Email
|
|||||||
end
|
end
|
||||||
|
|
||||||
def send
|
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
|
||||||
return if ActionMailer::Base::NullMail === (@message.message rescue nil)
|
return if ActionMailer::Base::NullMail === (@message.message rescue nil)
|
||||||
|
@ -4,12 +4,19 @@ require 'email/sender'
|
|||||||
describe Email::Sender do
|
describe Email::Sender do
|
||||||
|
|
||||||
it "doesn't deliver mail when mails are disabled" 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
|
Mail::Message.any_instance.expects(:deliver_now).never
|
||||||
message = Mail::Message.new(to: "hello@world.com" , body: "hello")
|
message = Mail::Message.new(to: "hello@world.com" , body: "hello")
|
||||||
expect(Email::Sender.new(message, :hello).send).to eq(nil)
|
expect(Email::Sender.new(message, :hello).send).to eq(nil)
|
||||||
end
|
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
|
it "doesn't deliver mail when the message is of type NullMail" do
|
||||||
Mail::Message.any_instance.expects(:deliver_now).never
|
Mail::Message.any_instance.expects(:deliver_now).never
|
||||||
message = ActionMailer::Base::NullMail.new
|
message = ActionMailer::Base::NullMail.new
|
||||||
|
Reference in New Issue
Block a user