我正在關注Hartl Rails教程,v5.0.1,並在Mailer測試中發現它(大概)需要指定的編碼。Rails 5.1郵件編碼錯誤
相關的測試條款(我得到任何行類似的錯誤):
assert_match user.reset_token, mail.body.encoded
assert_match CGI.escape(user.email), mail.body.encoded
產生的錯誤味精(部分):
Failure:
UserMailerTest#test_password_reset
[...demo/test/mailers/user_mailer_test.rb:30]:
Expected /6qyclXtvAeFin0htTK7t7g/ to match # encoding: US-ASCII
請注意,我用Rails 5.1。 1在我的本地回購。郵件模板使用默認的編碼,無論它們是什麼。
錯誤消息包含電子郵件模板的一長串字符串;我可以看到「charset = UTF-8」和「Content-Transfer-Encoding:7bit」。
MailerTest文件還檢查用戶令牌和CGI轉義的電子郵件地址相同的組合用於帳戶激活測試用例不存在問題。
有什麼建議嗎?至此,Hartl教程還沒有深入研究編碼。
請分享您正在測試的郵件程序文件(我假設它是'user_mailer.rb')及其模板(例如'some_mail.html.erb'和'some_mail.txt.erb')。 – Gerry
https://pastebin.com/67GS6Rwg –
它更好地編輯你的問題,並在那裏添加代碼,而不是提供一個外部鏈接。 – Gerry