2012-11-08 6 views
9

Ich verwende die Setup() Methode, um das Verhalten einer mocked Instanz einer Schnittstelle einzurichten.moq: Wie wird bei der Verwendung von Setup() die Gleichheit der Methodenparameter bestimmt?

Die Methode, die ich einrichte (nennen wir es DoSomething()) akzeptiert eine Instanz einer Klasse (nennen wir die Klasse Foo).

Foo foo = // Existing foo instance 
Mock<IMyInterface> mock = new Mock<IMyInterface>(); 
mock.Setup(x => x.DoSomething(foo)).Returns(1); 

Das Problem, das ich habe, ist, dass, wenn ich das Mock verwenden, ist es nie das Setup passt, so kehrt nie 1.

Kann jemand helfen? Wie bestimmt Moq, ob die Parameter, die für eine Setup-Methode bereitgestellt werden, gleich sind oder nicht?

Antwort

7

Die Antwort auf meine Frage ist, dass Moq .Equals verwendet, um festzustellen, ob die Parameter zum Einrichten von Methoden gleich sind.

+0

R # ist eine große Hilfe hier, da es automatisch Equals-Methode für Ihre Klasse generieren kann. –

Verwandte Themen