How would you DRY up this RSpec code?
require "spec_helper"
describe InvoiceMailer do
let(:user) { create(:user) }
let(:student) { create(:student, user: user) }
let(:body) { "And I for one will join with anyone, don't care what color you are. As long as you want change this miserable condition that exists on this earth." }
subject(:mail) { InvoiceMailer.issue(student, body) }
describe "issue" do
subject(:mail) { InvoiceMailer.issue(student, body) }
it "renders the subject" do
expect(mail.subject).to eq "New Invoice!"
end
it "renders the receiver email" do
expect(mail.to).to eq [student.user.email]
end
it "renders the sender email" do
expect(mail.from).to eq ["info@test.com"]
end
end
describe "rescind" do
subject(:mail) { InvoiceMailer.rescind(student, body) }
it "renders the subject" do
expect(mail.subject).to eq "Invoice Rescinded!"
end
it "renders the receiver email" do
expect(mail.to).to eq [student.user.email]
end
it "renders the sender email" do
expect(mail.from).to eq ["info@test.com"]
end
end
end