0

このインターフェースをモックしたい:

interface IA {
  IB DoSomething(IC arg)
}

次のような実装をシミュレートする方法で:

class A : IA {
    public IB DoSomething(IC arg) { return new B(arg); }
}

どうやってやるの?他の同様の質問から、次のようなものになるはずです:

MockRepository.GenerateMock<IA>().Expect(x => x.DoSomething(null)).IgnoreArguments().Callback<IC>(arg => new B(arg))

しかし、私はそれを機能させることができません。RhinoMocks 3.6 を使用しています

4

2 に答える 2

1
var mock = MockRepository.GenerateMock<IA>();
mock
  .Stub(x => x.DoSomething(Arg<IC>.Is.Anything)
  // return a new instance of B each time
  .WhenCalled(call => call.ReturnValue = new B((IC)call.Arguments[0]))
  // make rhino mock validation happy
  .Return(null);
于 2013-08-08T14:19:28.810 に答える