public async Task Upload(HttpClientTestContext ctx, CancellationToken cancellationToken) { var uri = Server.GetUri(Upload_Handler); var upload = new RandomDataStream(UploadSize); var request = new HttpRequestMessage(HttpMethod.Post, uri); request.Content = new StreamContent(upload); HttpResponseMessage response; var task = ctx.Client.SendAsync(request, cancellationToken); if (ctx.ThreadingMode == ThreadingMode.MainThread) { response = await task; } else { response = await task.ConfigureAwait(false); if (ctx.ThreadingMode == ThreadingMode.ThreadPool) { await Task.Yield(); } } ctx.AutoDispose(response); Server.CheckException(response); ctx.Assert(response.IsSuccessStatusCode, Is.True, "#100"); }
public async Task Upload (HttpClientTestContext ctx, CancellationToken cancellationToken) { var uri = Server.GetUri (Upload_Handler); var upload = new RandomDataStream (UploadSize); var request = new HttpRequestMessage (HttpMethod.Post, uri); request.Content = new StreamContent (upload); HttpResponseMessage response; var task = ctx.Client.SendAsync (request, cancellationToken); if (ctx.ThreadingMode == ThreadingMode.MainThread) response = await task; else { response = await task.ConfigureAwait (false); if (ctx.ThreadingMode == ThreadingMode.ThreadPool) await Task.Yield (); } ctx.AutoDispose (response); Server.CheckException (response); ctx.Assert (response.IsSuccessStatusCode, Is.True, "#100"); }