Bir actionmailer sınıfım ve ilişkili bir ek yüküm var, mükemmel çalışıyor. Benim birim testimde (varsayılan olarak en düşük raylar), e-posta gövdesi boş. Neden?Raylarda neden posta gövdem boş, yalnızca benim testimde?
benim mailler sınıfı:
class TermsMailer < ApplicationMailer
default from: "[email protected]"
def notice_email(user,filename)
@user = user
@file = filename
mail(to: "[email protected]", subject: 'Data downloaded')
end
end
benim test:
require 'test_helper'
class TermsMailerTest < ActionMailer::TestCase
test "notice" do
email = TermsMailer.notice_email(users(:me),'file.ext').deliver_now
assert_not ActionMailer::Base.deliveries.empty?
assert_equal ['[email protected]'], email.from
assert_equal ['[email protected]'], email.to
assert_equal 'Data downloaded', email.subject
assert_equal 'arbitrary garbage for comparison', email.body.to_s
end
end
bu postasının için görüşlerini boş değildir ve doğru içerikleri aslında e-postalar gönderilir. Peki e-posta gövdesi neden testimde boş?
'email.body.encoded' işlevini kullanın. Bunu bir cevap olarak gönderiyorum, ama neden bu değişikliği yapmak zorunda olduğumu hatırlamıyorum. – messanjah