2

パラメータとして渡されたリストにスタブ インスタンスをプッシュする関数 Foo を持つ Moq を使用してスタブを作成したいと考えています。このメソッドを使用しCallback<>()てリストを取得できますが、そこからスタブ インスタンスにアクセスすることはできませんか?

これは私がこれまでに得たものです:

var stubPattern = new Mock<IBar>();
stubPattern.Setup(stub => stub.Foo(It.IsAny<List<IBar>>()))
    .Callback<List<IBar>>(list => list.Add(stubInstance); // stubInstance not valid

Moqでこのようなことをすることは可能ですか?

4

1 に答える 1

5

モック インスタンス自体を取得する場合は、Objectプロパティを使用できます。

stubPattern.Setup(stub => stub.Foo(It.IsAny<List<IBar>>()))
           .Callback<List<IBar>>(list => list.Add(stubPattern.Object);
于 2013-08-12T10:55:37.137 に答える