Je voudrais mettre en place une valeur de retourComment effacer les attentes précédentes sur un objet?
_stubRepository.Stub(Contains(null)).IgnoreArguments().Return(true);
mais dans un test spécifique, passer outre cette attente de retourner faux.
Quelque chose comme:
_stubRepository.ClearExpectations(); //<- this does not exist, I'm just making something up
_stubRepository.Stub(Contains(null)).IgnoreArguments().Return(false);
avis, je ne veux pas l'attente de revenir faux sur le deuxième appel, je veux remplacer la première attente.
Ceci aiderait grandement à simplifier mon scénario de test.
En interne Rhino Mock parle, en utilisant Repeat. Tout crée une attente répétable, qui surpasse les attentes normales pendant la lecture. Je recommande d'utiliser BackToRecord, cependant. –
Ah, tout compris, sauf pour l'appel Replay(). –
Ceci est une chose que seuls les gens utilisant RhinoMocks connaissent depuis 3.4 ou plus. RhinoMocks a travaillé avec Record-Replay, ce qui signifie qu'une simulation doit être explicitement configurée en mode Replay. Avec 3,5, heureusement que cela a disparu, les mocks sont toujours en mode replay (au moins pour le code personnalisé). Jusqu'à ce que vous reveniez en mode d'enregistrement - sauf pour effacer les attentes, je ne vois aucune raison de le faire. Je voulais déjà écrire un patch pour ces deux lignes pour réinitialiser confortablement les attentes. –