我正在嘗試使用StructureMap自帶的MoqAutoMocker類,但找不到應該如何使用它的任何示例。我所要做的就是example at the StructureMap site that uses RhinoMocks。如何使用StructureMap 2.5.3附帶的MoqAutoMocker?
我想要做的是使用Get方法獲取對自動模擬/注入依賴關係之一的引用。根據上面的鏈接,我應該可以做這樣的事情
// This retrieves the mock object for IMockedService
autoMocker.Get<IMockedService>().AssertWasCalled(s => s.Go());
說明了如何使用AssertWasCalled,這inidcates,get函數返回RhinoMocks模擬對象的引用?當我使用MoqAutoMocker時,同樣的代碼不適用於我。
我有一個SignInController類,它依賴於構造函數中的ISecurityService。使用像RhinoAutoMocker的MoqAutoMocker在本例中使用,我想我應該能夠做到這一點...
var autoMocker = new MoqAutoMocker<SignInController>();
autoMocker.Get<ISecurityService>().Setup(ss => ss.ValidateLogin
(It.IsAny<string>(), It.IsAny<string>())).Returns(true);
但問題是,我從來沒有訪問設置方法。在這種情況下,對autoMocker.Get的調用似乎返回ISecurityService的一個實例,而不是模擬<ISecurityService>
有沒有人成功使用MoqAutoMocker這種方式?我只是做錯了嗎?
我有完全相同的問題。你弄明白了嗎? – Sunit 2009-09-02 20:10:35