Rails 5 et les tests de mailer

Les tests se passent dans le dossier test/mailers.

Créer un nouveau fichier avec le format suivant : nom_du_mailer_test.rb (ex : notification_test.rb)

Squelette du fichier :

require 'test_helper'

class NomDuMailerTest < ActionMailer::TestCase

end

/!\ Vérifier dans le fichier de config/test.rb, que la ligne suivante soit bien présente :

config.action_mailer.delivery_method = :test
  1. On crée le mail en appelant la méthode du mailer :
    email = MonMailer.envoi_mail('expediteur@example.com', 'destinataire@example.com', 'sujet')
  2. On envoie le mail et on teste qu’il est bien parti :
    assert_emails 1 do
      email.deliver_now
    end
  3. On teste l’expéditeur, le sujet, le destinataire …. :
    assert_equal ['expediteur@example.com'], email.from assert_equal ['destinataire@example.com'], email.to assert_equal 'sujet', email.subject

Pour plus d’informations sur les tests de mailers, et notamment l’utilisation avec des fixtures, aller lire l’article suivant : http://guides.rubyonrails.org/testing.html#testing-your-mailers.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.