mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-25 16:19:40 +02:00
46 lines
1.5 KiB
Ruby
46 lines
1.5 KiB
Ruby
|
require "test_helper"
|
||
|
|
||
|
class ApplicationMailerTest < ActionMailer::TestCase
|
||
|
setup do
|
||
|
class TestMailer < ApplicationMailer
|
||
|
def test_email
|
||
|
mail(to: "testto@email.com", from: "testfrom@email.com", subject: "Test email subject", body: "Test email body")
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
test "should use self host settings when self host enabled" do
|
||
|
ENV["SELF_HOSTING_ENABLED"] = "true"
|
||
|
|
||
|
smtp_host = "smtp.example.com"
|
||
|
smtp_port = 466
|
||
|
smtp_username = "user@example.com"
|
||
|
smtp_password = "password"
|
||
|
email_sender = "notification@example.com"
|
||
|
|
||
|
smtp_settings_from_settings = { address: smtp_host,
|
||
|
port: smtp_port,
|
||
|
user_name: smtp_username,
|
||
|
password: smtp_password }
|
||
|
|
||
|
Setting.stubs(:smtp_host).returns(smtp_host)
|
||
|
Setting.stubs(:smtp_port).returns(smtp_port)
|
||
|
Setting.stubs(:smtp_username).returns(smtp_username)
|
||
|
Setting.stubs(:smtp_password).returns(smtp_password)
|
||
|
Setting.stubs(:email_sender).returns(email_sender)
|
||
|
|
||
|
TestMailer.test_email.deliver_now
|
||
|
assert_emails 1
|
||
|
assert_equal smtp_settings_from_settings, ActionMailer::Base.deliveries.first.delivery_method.settings.slice(:address, :port, :user_name, :password)
|
||
|
end
|
||
|
|
||
|
test "should use regular env settings when self host disabled" do
|
||
|
ENV["SELF_HOSTING_ENABLED"] = "false"
|
||
|
|
||
|
TestMailer.test_email.deliver_now
|
||
|
|
||
|
assert_emails 1
|
||
|
assert_nil ActionMailer::Base.deliveries.first.delivery_method.settings[:address]
|
||
|
end
|
||
|
end
|