docbrown/spec/mailers/application_mailer_spec.rb
Mac Siri 842e6880b8
Routine rubocop fix on /spec (#19217)
* Softrun rubocop

* Hardrun rubocop (-A)

* Change a rubocop rule

* Add missing cops

* Undo & redo rubocop -A
2023-03-21 09:55:26 -04:00

34 lines
1.2 KiB
Ruby

require "rails_helper"
RSpec.describe ApplicationMailer do
let(:user) { create(:user) }
let(:email) { VerificationMailer.with(user_id: user.id).account_ownership_verification_email }
describe "#set_perform_deliveries" do
it "changes perform_deliveries from true to false if smtp is not enabled" do
expect { email.deliver_now }.to change(described_class, :perform_deliveries).from(true).to(false)
end
it "changes perform_deliveries from false to true if smtp is enabled" do
described_class.perform_deliveries = false
allow(ForemInstance).to receive(:smtp_enabled?).and_return(true)
expect { email.deliver_now }.to change(described_class, :perform_deliveries).from(false).to(true)
end
end
describe "#set_delivery_options" do
after do
Settings::SMTP.clear_cache
end
it "sets proper SMTP credential during callback" do
Settings::SMTP.address = "smtp.google.com"
Settings::SMTP.user_name = Faker::Internet.username
Settings::SMTP.password = Faker::Internet.password
email.deliver_now
expect(described_class.deliveries.last.delivery_method.settings).to eq(Settings::SMTP.settings)
end
end
end