2011-05-17 128 views
2

我似乎無法使用Rhino Mocks模擬HttpServerUtilityBase。嘲笑HttpServerUtilityBase

_mocks = new MockRepository(); 
_mockHttpContext = _mocks.DynamicMock<HttpContextBase>(); 
_mockHttpUtilityBase = _mocks.Stub<HttpServerUtilityBase>(); 
_mockHttpContext.Stub(c => c.Server).Return(_mockHttpUtilityBase); 

var Server = _mockHttpContext.Server; 

但服務器設置爲空。我究竟做錯了什麼?

回答

0

你在HTTP上下文中運行嗎?否則,c.Server無效,因此爲空。

+0

對不起。更新了代碼。 不在HttpContext中運行,但我期待存根調用返回我的mockHttpUtilityBase對象 – 2011-05-17 15:44:20

0

您需要將模擬對象_mockHttpUtilityBase的屬性暴露給Mocked HttpContextBase。爲此,請將第4行替換爲以下內容:

_mockHttpContext.Stub(c => c.Server).Return(_mockHttpUtilityBase.object);