J'ai une classe qui a deux méthodes. Une méthode doit appeler l'autre méthode et dans mon test, je veux affirmer qu'elle a été appelée.Comment affirmer si une méthode a été appelée dans une autre méthode dans RhinoMocks?
public class Tasks : ITasks
{
public void MethodOne()
{
MethodTwo(1);
}
public int MethodTwo(int i)
{
return i + 1;
}
}
Je veux moquer tâches et faire quelque chose comme tasks.AssertWasCalled(x => x.MethodTwo(1))
. Doit MethodTwo être virtuel?
C'est juste un exemple de classe dans le but de simplifier la question. :) Dans le code réel, j'ai une classe de tâches (services d'application) qui vient de SharpArchitecture. Quoi qu'il en soit, je commence déjà à voir une mauvaise conception - cette méthode ne devrait pas être virtuelle si je ne vais pas hériter de cette classe, suivant l'exemple MethodTwo() est utilisé seulement par MethodOne() qui est un reste de mon précédent pensant, je suppose (je pensais qu'il serait utilisé par une autre classe), donc il devrait probablement être privé maintenant et les méthodes privées ne sont pas moquées/testées ... Merci pour le lien vers des simulacres partiels. :) –