保留Rhino Mocks中所有输入的Stub返回值

时间:2011-09-21 11:31:27

标签: .net rhino-mocks

我使用rhino mocks来隐藏方法的返回值。但是,我想为传入的任何参数返回相同的虚拟值。

如果不预先注册每个输入以返回相同的输出,我该怎么做?

3 个答案:

答案 0 :(得分:3)

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

答案 1 :(得分:3)

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

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

答案 2 :(得分:3)

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

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

同样,通过指定Repeat().Any() preDefinedValue,每次调用方法都会返回。

有关更多示例,请参阅Rhino Mocks wiki