Gibt es eine Möglichkeit mit Rhino Mocks eine Eigenschaft eines Stubs zu setzen, wenn eine Methode aufgerufen wird.
In etwa so: (Gefälschter Code in Fettdruck)
callMonitor.Expect (x = & gt; x.HangUp ()). SetProperty (callMonitor.InACall = false) ;
Die HangUp-Methode gibt void zurück und ich kann das nicht wirklich ändern. Aber ich will, dass mein Stub weiß, dass der Anruf beendet wurde, als HangUp angerufen wurde.
Sie können die Methode "WhenCalled" verwenden, um Ihren eigenen Code auszuführen, wenn ein Stub aufgerufen wird. ziemlich sicher, dass es auch mit Mocks funktionieren sollte. Laut der Dokumentation ist WhenCalled ein Ersatz / Upgrade für Callback.
%Vor%Einige Informationen am Ende dieses Beitrags: Ссылка
Es könnte einige Bedingungen geben, unter denen Sie dies tun müssten, aber im Allgemeinen würde ich erwarten, dass Sie einfach Ihren Mock / Stub so instrumentieren, dass er als Reaktion auf Ihren Code die richtigen Werte zurückgibt. Die einzigen Ausnahmen, an die ich denken kann, sind teilweise Mocks, bei denen Sie einen Teil einer Klasse testen und die anderen Teile verspotten wollen.
Es ist ziemlich einfach, eine Eigenschaft zu propagieren.
%Vor% Wenn callMonitor
ein Stub ist, können Sie die Eigenschaft direkt festlegen.
Tags und Links c# unit-testing rhino-mocks