首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >犀牛如何嘲弄?

犀牛如何嘲弄?
EN

Stack Overflow用户
提问于 2013-10-08 11:22:57
回答 2查看 166关注 0票数 2

我想知道犀牛如何找到我想存根的方法。下面的示例是方法GetUserByName的存根

代码语言:javascript
复制
var stubUserRepository = MockRepository.GenerateStub<IUserRepository>();
stubUserRepository.Stub(x => x.GetUserByName("ayende")).Return(theUserObject);

在下面的示例中,我只是向Framework转发了一个委托。

我认为这是在使用方法签名。我说的对吗?

它是用反射的吗?如果是,怎么做?

在哪里我能找到它?它是如何工作的?

我正在使用C#和时间。我想知道背后的概念和C#应用的东西。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-08 13:20:00

Stub调用设置一个可选的Expect调用。传递给Stub的函数(在本例中为x => x.GetUserByName("ayende"))实际上是针对模拟对象(即城堡DynamicProxy对象)执行的。该呼叫将被截获并记录在MockRepository中,并带有其参数,作为期望。IMethodOptions<>对象是从保存的有关调用的数据中生成的,并返回数据,然后调用Return(theUserObject)

您可以使用类似dotPeek的东西来更详细地分解和检查Rhino.Mocks.dll;相关代码在RhinoMocksExtensions.cs中,在Rhino.Mocks名称空间中。

票数 2
EN

Stack Overflow用户

发布于 2013-10-09 19:12:42

我只想加入伟大的克里斯的答案,Rhino Mock源代码链接

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19246396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档