私は現在応答の配列を作成する関数があります。あなたは私のコードで見ることができるように、私はTask.WhenAllを実行していますダウンの下にこれは私のarrayOfRequests内の各オブジェクトを取得し、arrayOfRequestsでEACHオブジェクトに対する応答を返す私のFunctionThatCreatesResponseを通してそれを実行しますどのようにMoq a Task.WhenAll()
var arrayOfRequests = new [] { RequestObject1, RequestObject2, RequestObject3 }
var arrayOfResponses = await Task.WhenAll(arrayOfRequests.Select(req => FunctionThatCreatesResponse(req)));
private async Task<ResponseObject> FunctionThatCreatesResponse(RequestObject req)
{
// The response will be created here and returned
}
にはどうすればarrayOfResponsesを定義し、事前に戻すためにtask.WhenAll()を模擬することができますか?
の線に沿って何か:
var task = new Mock<Task>();
task.Setup(t => t.WhenAll()).ReturnsAsync(arrayOfResponses);
Task.FromResultはオプションですか? –
@SirRufoどうしたのですか?あなたの思考の列車の例を教えてください。 – Lostaunaum
テスト中のコードをさらに表示する必要がありますが、今はテストで何をしようとしているのか分かりません。例えば、RequestObject1、RequestObject2、RequestObject3がどこから来たのか、あるいは 'arrayOfResponses'自体を模倣する必要があるかどうかを示す必要があります。それはあなたが模擬するのに必要な場所であり、仕事ではありません。 –