У меня есть почтовая программа, которая передает такой аргумент:
AnimalMailer.daily_message(owner).deliver_later
Метод выглядит следующим образом:
AnimalMailer
class AnimalMailer < ApplicationMailer
def daily_message(owner)
mail(
to: "#{user.name}",
subject: "test",
content_type: "text/html",
date: Time.now.in_time_zone("Mountain Time (US & Canada)")
)
end
end
Я новичок в написании спецификаций, и мне было интересно, как мне передать владельца методу и протестировать его. У меня сейчас такая установка:
require "rails_helper"
RSpec.describe AnimalMailer, type: :mailer do
describe "monthly_animal_message" do
let(:user) { create(:user, :admin) }
it "renders the headers" do
expect(mail.subject).to eq("test")
expect(mail.to).to eq(user.name)
end
end
end