private async Task ClientSendHelperAsync(ValueHttpRequest client, Uri serverUri, int testIdx, TestHeadersSink requestHeaders, List <string> requestContent, TestHeadersSink?requestTrailingHeaders) { long contentLength = requestContent.Sum(x => (long)x.Length); client.ConfigureRequest(contentLength, hasTrailingHeaders: requestTrailingHeaders != null); client.WriteRequest(HttpMethod.Post, serverUri); client.WriteHeader("Content-Length", contentLength.ToString(CultureInfo.InvariantCulture)); client.WriteHeader("Test-Index", testIdx.ToString(CultureInfo.InvariantCulture)); client.WriteHeaders(requestHeaders); foreach (string content in requestContent) { await client.WriteContentAsync(content); } if (requestTrailingHeaders != null) { client.WriteTrailingHeaders(requestTrailingHeaders); } await client.CompleteRequestAsync(); }