public HTTPContent(PDUStreamReader reader, TransferCoding coding, string contentLen = "0") { var sb = new StringBuilder(); switch (coding) { case TransferCoding.CHUNKED: ParseChunk(reader, sb); break; default: var readed = 0; var dLen = Convert.ToInt32(contentLen); var dt = new char[dLen]; while (true) { var len = reader.Read(dt, readed, dLen - readed); readed += len; if (readed == dLen) { break; } if (len == 0) { break; } } sb.Append(dt); break; } this.Content = Encoding.GetEncoding(437).GetBytes(sb.ToString()); }
public void TestParseTransferEncodingMultipleValues(string value1, string value2, TransferCoding expectedTransferEncodingOptions) { var transferEncoding = new StringValues(new[] { value1, value2 }); var transferEncodingOptions = HttpHeaders.GetFinalTransferCoding(transferEncoding); Assert.Equal(expectedTransferEncodingOptions, transferEncodingOptions); }
public void TestParseTransferEncoding(string transferEncoding, TransferCoding expectedTransferEncodingOptions) { var transferEncodingOptions = HttpHeaders.GetFinalTransferCoding(transferEncoding); Assert.Equal(expectedTransferEncodingOptions, transferEncodingOptions); }