Rspec 3.0 Comment simuler une méthode de remplacement du paramètre, mais avec pas de valeur de retour?

J'ai beaucoup cherché et juste ne peut pas comprendre cela, il semble bien que de base. Voici une façon simplifiée exemple de ce que je veux faire.

Créer une méthode simple qui fait quelque chose, mais ne retourne rien, comme:

class Test
  def test_method(param)
    puts param
  end
  test_method("hello")
end

Mais dans mon rspec test j'ai besoin de passer un paramètre différent, comme "au revoir" au lieu de "bonjour." Je sais que cela a à voir avec les talons et se moque, et je l'ai regarder sur la documentation, mais ne peut pas le comprendre: https://relishapp.com/rspec/rspec-mocks/v/3-0/docs/method-stubs

Si je fais:

@test = Test.new
allow(@test).to_receive(:test_method).with("goodbye")

il me dit d'éteindre une valeur par défaut mais je ne peux pas comprendre comment le faire correctement.

Message d'erreur:

received :test_method with unexpected arguments
  expected: ("hello")
  got: ("goodbye")
Please stub a default value first if message might be received with other args as well.     

Je suis à l'aide de rspec 3.0, et appeler quelque chose comme

@test.stub(:test_method)

n'est pas autorisé.

Votre message d'erreur semble être l'inverse de votre talon.

OriginalL'auteur user3060126 | 2014-04-18