Это должно быть легко, поэтому я, должно быть, что-то упускаю (очень вероятно, так как я впервые использую Rhino Mock)
Я просто хочу, чтобы мой код мог звонить helm.CurrentEnterprise
любое количество раз, но вместо этого я получаю:
System.InvalidOperationException occurred
Message=Previous method 'IHelm.get_CurrentEnterprise();' requires a return value or an exception to throw.
Source=Rhino.Mocks
StackTrace:
at Rhino.Mocks.Impl.RecordMockState.AssertPreviousMethodIsClose()
at Rhino.Mocks.Impl.RecordMockState.MethodCall(IInvocation invocation, MethodInfo method, Object[] args)
at Rhino.Mocks.MockRepository.MethodCall(IInvocation invocation, Object proxy, MethodInfo method, Object[] args)
at Rhino.Mocks.Impl.RhinoInterceptor.Intercept(IInvocation invocation)
at Castle.DynamicProxy.AbstractInvocation.Proceed()
at IHelmProxy44ecadd4f07244fd96c5849febe94a58.get_CurrentEnterprise()
at KSS.PS3.Testing.UnitTests.ModelOptions.RuleGroupTreeViewTest.AsUsedByRuleGroupModalOptionEditor() in D:\dev\5.0.0\main\Application\Testing\Tests\UnitTests\ModelOptions\RuleGroupTreeView.cs:line 54
InnerException:
Это мой код:
MockRepository mocks = new MockRepository();
IHelm helm = mocks.Stub<IHelm>();
helm.Stub(x => x.CurrentEnterprise).Return(enterprise).Repeat.Any();
var a2 = helm.CurrentEnterprise;
var a2a = helm.CurrentEnterprise; // <- the exception comes from here
var a2aa = helm.CurrentEnterprise;