作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
如果我有一个 Rhino Mock 对象,它已经像这样声明了一个 stub 调用:
mockEmploymentService.Stub(x => x.GetEmployment(999)).Return(employment);
无论如何我可以删除这个调用以用不同的东西替换它,例如:
mockEmploymentService.Stub(x => x.GetEmployment(999)).Return(null);
我问的原因是我想设置一些通用模拟以用于多个单元测试,然后允许每个单元测试在必要时定制调用。
最佳答案
我使用这个扩展方法来清除 stub 的行为(或模拟的行为+期望):
public static class RhinoExtensions
{
/// <summary>
/// Clears the behavior already recorded in a Rhino Mocks stub.
/// </summary>
public static void ClearBehavior<T>(this T stub)
{
stub.BackToRecord(BackToRecordOptions.All);
stub.Replay();
}
}
我从 this other stackoverflow answer 中找到的,或者可能是 this one .
关于c# - 如何用不同的 stub 调用替换已声明的 stub 调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2469597/
我是一名优秀的程序员,十分优秀!