2016-03-12 3 views
0

Я следил за документацией (http://guides.rubyonrails.org/testing.html#testing-your-mailers) до некоторого успеха. В настоящее время я тестирую тело письма с помощью прибора (как описано). В моем письме есть встроенные вложения (изображения).Тестирование тела HTML с встроенными вложениями Рельсы

Мой тест (см. Ниже) работает по большей части, хотя проблема, с которой я сталкиваюсь, заключается в том, когда он сравнивает выводимый HTML с HTML, который у меня есть в приборе. Поскольку вложения кодируются, каждый сгенерированное сообщение имеет другой источник изображения (который терпит неудачу испытания, как HTML отличается (то есть).):

- Made with <img src=\"cid:[email protected]\" width=\"10\" height=\"10\" > in Toronto, Canada 
+ Made with <img src=\"cid:[email protected]\" width=\"10\" height=\"10\" /> in Toronto, Canada 

Есть ли способ, чтобы проверить HTML тела успешно? Есть ли способ, чтобы закодированная строка была одинаковой каждый раз?

Заранее благодарен!

require 'test_helper' 

class LeadMailerTest < ActionMailer::TestCase 
    test "confirmation_email" do 
    email = LeadMailer.confirmation_email(leads(:lead), 'Varsity Heights').deliver_now 
    assert_not ActionMailer::Base.deliveries.empty? 
    assert_equal ['[email protected]'], email.from 
    assert_equal ['[email protected]'], email.to 
    assert_equal 'Your request for a showing at Varsity Heights is confirmed.', email.subject 
    assert_equal read_fixture('confirmation_email').join, email.html_part.body.to_s 
    end 
end 

ответ

0

Для тех, кто наткнуться на это, я в конечном итоге с помощью assert_select_email делать, то индивидуально утверждать каждый элемент (и только наличие образа, за исключением ссылки.

 Смежные вопросы

  • Нет связанных вопросов^_^