2010-09-15 5 views
33

J'ai lu la question au What is the purpose of Verifiable() in Moq? et j'ai cette question dans mon esprit. Besoin de votre aide pour l'expliquer.Quel est le but de VerifyAll() dans Moq?

+2

Rappelez-vous que vous ne devriez pas empiler Affirme dans votre arrangement. Vous devriez affirmer. Ainsi, n'utilisez ni Verify ni VerifyAll - c'est une mauvaise façon d'y penser. http://stackoverflow.com/questions/980554/what-is-the-purpose-of-verifiable-in-moq/1728496#1728496 –

Répondre

41

VerifyAll() est de vérifier que toutes les attentes ont été satisfaites. Supposons que vous ayez:

myMock.Setup(m => m.DoSomething()).Returns(1); 
mySut.Do(); 
myMock.VerifyAll(); // Fail if DoSomething was not called 

HTH

+15

Ceci n'illustre pas très bien la différence entre V et VA (qui est ce que l'OP demandé), le fait? –

+1

Vous utilisez Vérifier lorsque vous pouvez utiliser la syntaxe AAA et lorsque vous n'avez pas besoin de configurer l'attente sur l'objet fantaisie. – ema

+0

Souhaitez-vous vérifier si VerifyAll fonctionne avec .Throws ()? –