私のテストでは、スタブの最初の呼び出しで 1 つのオブジェクトを返し、次の呼び出しで別のオブジェクトを返す必要があります。record() ブロックの他のモック オブジェクト フレームワークでこれを見たことがありますが、FakeItEasy でそれを行う方法がわかりませんでした。FakeItEasy は当店で義務付けられているフレームワークであり、AutoFixture を使用してフェイクを生成しています。
NextCallを見てみましたが、戻り値を指定できないようです。
これが私がやりたいことのアイデアです:
ReceiveMessageResponse queueResponse1 = fixture.Create<ReceiveMessageResponse>();
ReceiveMessageResponse queueResponse2 = fixture.Create<ReceiveMessageResponse>(seed);
A.CallTo(() => sqsClient.ReceiveMessage(null)).WithAnyArguments().Returns(queueResponse1);
//The following should happen the second time...
A.CallTo(() => sqsClient.ReceiveMessage(null)).WithAnyArguments().Returns(queueResponse2);
どんな助けでも大歓迎です。