2011-05-17 127 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);