Bonsoir à tous,
pour le fun et pour voir ce que donne le TDD/BDD, j'écris un petit site
web pour gérer ses bouquins.
J'ai un notifier Action Mailer pour pouvoir activer un utilisateur et
aussi remettre le password à zéro.

Cela me donne cela :
class Notifier < ActionMailer::Base
  default_url_options[:host] = "127.0.0.1"

  def password_reset_instructions(user)
    subject       "Password Reset Instructions"
    from          "MyLibrary Notifier <[email protected]>"
    recipients    user.email
    sent_on       Time.now
    body          :edit_password_reset_url =>
edit_password_reset_url(user.perishable_token)
  end

  def activation_instructions(user)
    subject       "Activation Instructions"
    from          "MyLibrary Notifier <[email protected]>"
    recipients    user.email
    sent_on       Time.now
    body          :account_activation_url =>
register_url(user.perishable_token)
  end

  def activation_confirmation(user)
    subject       "Activation Complete"
    from          "MyLibrary Notifier <[email protected]>"
    recipients    user.email
    sent_on       Time.now
    body          :root_url => root_url
  end

end


j'ai bien dans app/view/notifier les trois fichiers erb


Sous Rspec, je fais entre autres les tests suivants (pas sur qu'ils
soient intelligents mais bon c'est une autre histoire) :
  it "should send a mail when asking for password reset instructions" do
    user = Factory :user
    init_mail_size = ActionMailer::Base.deliveries.size
    Notifier.password_reset_instructions(user)
    ActionMailer::Base.deliveries.size.should == init_mail_size + 1
  end

  it "should send a mail for activation instructions" do
    user = Factory :user
    init_mail_size = ActionMailer::Base.deliveries.size
    Notifier.deliver_activation_instructions(user)
    ActionMailer::Base.deliveries.size.should == init_mail_size + 1
  end


Problème : le premier plante au test et pas le second !
Vous auriez une super idée ?

Merci d'avance,

Sylvain
-- 
Posted via http://www.ruby-forum.com/.

--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]
-~----------~----~----~----~------~----~------~--~---

Répondre à