0

私は次のモックを作成しようとしています

var checkComponent = MockRepository.GenerateStub<IController>();

checkComponent.Stub(r => r.GetSelector().Select(new Position(3,6,1))).Return(true);

私はそれ r.GetSelector()がnullを返していることを取得しています。

私が作成しようとしているモックを作成する方法はありますか?

ありがとう。

4

1 に答える 1

3

r.GetSelector() が null を返していることがわかりました。

これは、checkComponent( rStub() 呼び出しで) が実際の実装ではないためです。これは、IController基本的にインターフェイスを実装する RhinoMock プロキシ オブジェクトIControllerです。

私が作成しようとしているモックを作成する方法はありますか?

が呼び出されたときに何を返す必要があるかGetSelector()を指定する必要があります。メソッドの期待値を指定する必要がある場合は、シナリオに Mock を使用してください。

var componentMock = MockRepository.GenerateMock<IController>();
var selectorMock = MockRepository.GenerateMock<ISelector>();

// if you need - specify concrete arguments to return true
selectorMock.Expect(x => x.Select(null)).IgnoreArguments().Return(true).Repeat.Any();
componentMock.Expect(x => x.GetSelector()).Return(selectorMock).Repeat.Any();
于 2012-04-22T11:04:38.137 に答える