From d6f2a531aab1976ac38890ed03b51506da5c7500 Mon Sep 17 00:00:00 2001 From: Maikel Linke Date: Tue, 16 Apr 2024 15:34:24 +1000 Subject: [PATCH] Don't pass invalid auth method "None" to net-smtp It's our magic word to not pass username and password on. --- lib/spree/core/mail_settings.rb | 8 +++++++- spec/lib/spree/core/mail_settings_spec.rb | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/spree/core/mail_settings.rb b/lib/spree/core/mail_settings.rb index 2c8261b246..07d8dbee7a 100644 --- a/lib/spree/core/mail_settings.rb +++ b/lib/spree/core/mail_settings.rb @@ -38,7 +38,13 @@ module Spree { address: Config.mail_host, domain: Config.mail_domain, port: Config.mail_port, - authentication: Config.mail_auth_type } + authentication: } + end + + def authentication + return unless need_authentication? + + Config.mail_auth_type.presence end def need_authentication? diff --git a/spec/lib/spree/core/mail_settings_spec.rb b/spec/lib/spree/core/mail_settings_spec.rb index 4039addaf2..d1a2fc99b4 100644 --- a/spec/lib/spree/core/mail_settings_spec.rb +++ b/spec/lib/spree/core/mail_settings_spec.rb @@ -23,7 +23,7 @@ module Spree it { expect(ActionMailer::Base.smtp_settings[:address]).to eq "smtp.example.com" } it { expect(ActionMailer::Base.smtp_settings[:domain]).to eq "example.com" } it { expect(ActionMailer::Base.smtp_settings[:port]).to eq 123 } - it { expect(ActionMailer::Base.smtp_settings[:authentication]).to eq "None" } + it { expect(ActionMailer::Base.smtp_settings[:authentication]).to eq nil } it { expect(ActionMailer::Base.smtp_settings[:enable_starttls_auto]).to be_truthy } it "doesnt touch user name config" do