【问题标题】:Stub return value for all inputs in Rhino MocksRhino Mocks 中所有输入的存根返回值
【发布时间】:2011-11-21 21:01:22
【问题描述】:

我正在使用 rhino 模拟来存根方法的返回值。但是,我想为传入的任何参数返回相同的虚拟值。

如何在不预先注册每个输入以返回相同输出的情况下执行此操作?

【问题讨论】:

  • 感谢您的回答。一切都很好,所以我选择了前一个。

标签: .net rhino-mocks


【解决方案1】:

你会使用MyClass.Expect(x=>x.MyMethod(someArg)).Return(stubValue).IgnoreArguments()

【讨论】:

    【解决方案2】:

    _testHelper 是帮助程序类,您从 GetMethodValue() 返回一个虚拟值。您必须在 _testHelper 类中编写 GetMethodValue()。

    SetupResult.For(_Repository.MethodName(null)).IgnoreArguments().Return(_testHelper.GetMethodNameResultValue());
    

    【讨论】:

      【解决方案3】:

      你可以使用IgnoreArguments()约束,如下所示:

      mockedInstance.Expect(instance => instance.MethodCall(null))
                    .IgnoreArguments()
                    .Return(preDefinedValue)
                    .Repeat()
                    .Any();
      

      同样通过指定Repeat().Any() preDefinedValue 将在每次调用方法时返回。

      更多示例请参见Rhino Mocks wiki

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-28
        • 2011-02-24
        • 2012-12-04
        • 2011-10-23
        相关资源
        最近更新 更多