1 write to _http1Connection
Microsoft.AspNetCore.Server.Kestrel.Core.Tests (1)
Http1\Http1ConnectionTestsBase.cs (1)
63_http1Connection = new TestHttp1Connection(_http1ConnectionContext);
207 references to _http1Connection
Microsoft.AspNetCore.Server.Kestrel.Core.Tests (207)
Http1\Http1ConnectionTests.cs (207)
30_http1Connection.Reset(); 40Assert.Equal(headerValue, _http1Connection.RequestHeaders[headerName]); 49_http1Connection.Reset(); 67_http1Connection.Reset(); 78_http1Connection.Reset(); 95_http1Connection.Initialize(_http1ConnectionContext); 118_http1Connection.Reset(); 129Assert.True(_http1Connection.TakeStartLine(ref reader)); 130Assert.False(_http1Connection.TakeMessageHeaders(ref reader, trailers: false)); 136Assert.Empty(_http1Connection.RequestHeaders); 144Assert.True(_http1Connection.TakeMessageHeaders(ref reader, trailers: false)); 150Assert.Single(_http1Connection.RequestHeaders); 151Assert.Equal("makethislargerthanthestartline", _http1Connection.RequestHeaders["Header"]); 157_http1Connection.Scheme = "https"; 160_http1Connection.Reset(); 163Assert.Equal("http", ((IFeatureCollection)_http1Connection).Get<IHttpRequestFeature>().Scheme); 169_http1Connection.MinRequestBodyDataRate = new MinDataRate(bytesPerSecond: 1, gracePeriod: TimeSpan.MaxValue); 171_http1Connection.Reset(); 173Assert.Same(_serviceContext.ServerOptions.Limits.MinRequestBodyDataRate, _http1Connection.MinRequestBodyDataRate); 179_http1Connection.MinResponseDataRate = new MinDataRate(bytesPerSecond: 1, gracePeriod: TimeSpan.MaxValue); 181_http1Connection.Reset(); 183Assert.Same(_serviceContext.ServerOptions.Limits.MinResponseDataRate, _http1Connection.MinResponseDataRate); 190var feature = ((IFeatureCollection)_http1Connection).Get<IHttpRequestIdentifierFeature>(); 192var requestProcessingTask = _http1Connection.ProcessRequestsAsync(new DummyApplication()); 252_http1Connection.StopProcessingNextRequest(ConnectionEndReason.AppShutdownTimeout); 259_http1Connection.TraceIdentifier = null; 260var id = _http1Connection.TraceIdentifier; 262Assert.Equal(id, _http1Connection.TraceIdentifier); 283Assert.Single(_http1Connection.RequestHeaders); 284Assert.Equal("value1", _http1Connection.RequestHeaders["Header-1"]); 286_http1Connection.Reset(); 295Assert.Single(_http1Connection.RequestHeaders); 296Assert.Equal("value2", _http1Connection.RequestHeaders["Header-2"]); 303await _http1Connection.WriteAsync(new ArraySegment<byte>(new byte[1])); 306Assert.True(_http1Connection.HasResponseStarted); 307Assert.Throws<InvalidOperationException>(() => ((IHttpResponseFeature)_http1Connection).StatusCode = StatusCodes.Status404NotFound); 314await _http1Connection.WriteAsync(new ArraySegment<byte>(new byte[1])); 317Assert.True(_http1Connection.HasResponseStarted); 318Assert.Throws<InvalidOperationException>(() => ((IHttpResponseFeature)_http1Connection).ReasonPhrase = "Reason phrase"); 324await _http1Connection.WriteAsync(new ArraySegment<byte>(new byte[1])); 327Assert.True(_http1Connection.HasResponseStarted); 328Assert.Throws<InvalidOperationException>(() => ((IHttpResponseFeature)_http1Connection).OnStarting(_ => Task.CompletedTask, null)); 335((IFeatureCollection)_http1Connection).Get<IHttpMinRequestBodyDataRateFeature>().MinDataRate = minDataRate; 337Assert.Same(minDataRate, _http1Connection.MinRequestBodyDataRate); 344((IFeatureCollection)_http1Connection).Get<IHttpMinResponseDataRateFeature>().MinDataRate = minDataRate; 346Assert.Same(minDataRate, _http1Connection.MinResponseDataRate); 353var originalRequestHeaders = _http1Connection.RequestHeaders; 354_http1Connection.RequestHeaders = new HttpRequestHeaders(); 357_http1Connection.Reset(); 360Assert.Same(originalRequestHeaders, _http1Connection.RequestHeaders); 367var originalResponseHeaders = _http1Connection.ResponseHeaders; 368_http1Connection.ResponseHeaders = new HttpResponseHeaders(); 371_http1Connection.Reset(); 374Assert.Same(originalResponseHeaders, _http1Connection.ResponseHeaders); 381var messageBody = Http1MessageBody.For(Kestrel.Core.Internal.Http.HttpVersion.Http11, (HttpRequestHeaders)_http1Connection.RequestHeaders, _http1Connection); 382_http1Connection.InitializeBodyControl(messageBody); 384var originalRequestBody = _http1Connection.RequestBody; 385var originalResponseBody = _http1Connection.ResponseBody; 386_http1Connection.RequestBody = new MemoryStream(); 387_http1Connection.ResponseBody = new MemoryStream(); 390_http1Connection.InitializeBodyControl(messageBody); 393Assert.Same(originalRequestBody, _http1Connection.RequestBody); 394Assert.Same(originalResponseBody, _http1Connection.ResponseBody); 420Assert.Equal(expectedMethod, ((IHttpRequestFeature)_http1Connection).Method); 421Assert.Equal(expectedRawTarget, _http1Connection.RawTarget); 422Assert.Equal(expectedDecodedPath, _http1Connection.Path); 423Assert.Equal(expectedQueryString, _http1Connection.QueryString); 424Assert.Equal(expectedHttpVersion, _http1Connection.HttpVersion); 443Assert.Equal(expectedRawTarget, _http1Connection.RawTarget); 444Assert.Equal(expectedDecodedPath, _http1Connection.Path); 445Assert.Equal(expectedQueryString, _http1Connection.QueryString); 565var requestProcessingTask = _http1Connection.ProcessRequestsAsync<object>(null); 570_http1Connection.StopProcessingNextRequest(ConnectionEndReason.AppShutdownTimeout); 580((IHttpResponseFeature)_http1Connection).StatusCode = StatusCodes.Status304NotModified; 583await Assert.ThrowsAsync<InvalidOperationException>(() => _http1Connection.WriteAsync(new ArraySegment<byte>(new byte[1]))); 590_http1Connection.HttpVersion = "HTTP/1.1"; 591((IHttpResponseFeature)_http1Connection).StatusCode = StatusCodes.Status304NotModified; 594await Assert.ThrowsAsync<InvalidOperationException>(() => _http1Connection.WriteAsync(new ArraySegment<byte>(new byte[1]), default(CancellationToken))); 601_http1Connection.HttpVersion = "HTTP/1.1"; 602_http1Connection.Method = HttpMethod.Head; 605await _http1Connection.WriteAsync(new ArraySegment<byte>(new byte[1])); 612_http1Connection.HttpVersion = "HTTP/1.1"; 613_http1Connection.Method = HttpMethod.Head; 616await _http1Connection.WriteAsync(new ArraySegment<byte>(new byte[1]), default(CancellationToken)); 623_http1Connection.HttpVersion = "HTTP/1.1"; 624_http1Connection.Method = HttpMethod.Head; 627_http1Connection.ResponseHeaders.Add("Transfer-Encoding", "chunked"); 630await Assert.ThrowsAsync<InvalidOperationException>(() => _http1Connection.FlushAsync()); 637_http1Connection.HttpVersion = "HTTP/1.1"; 638((IHttpResponseFeature)_http1Connection).StatusCode = StatusCodes.Status304NotModified; 641_http1Connection.ResponseHeaders.Add("Transfer-Encoding", "chunked"); 644await Assert.ThrowsAsync<InvalidOperationException>(() => _http1Connection.FlushAsync()); 650var requestProcessingTask = _http1Connection.ProcessRequestsAsync<object>(null); 655_http1Connection.StopProcessingNextRequest(ConnectionEndReason.AppShutdownTimeout); 665_http1Connection.ResponseHeaders["Content-Length"] = "12"; 667var original = _http1Connection.RequestAborted; 671await _http1Connection.WriteAsync(new ArraySegment<byte>(new[] { (byte)ch })); 672Assert.Equal(original, _http1Connection.RequestAborted); 675await _http1Connection.WriteAsync(new ArraySegment<byte>(new[] { (byte)'d' })); 676Assert.NotEqual(original, _http1Connection.RequestAborted); 678_http1Connection.Abort(new ConnectionAbortedException(), ConnectionEndReason.AbortedByApp); 681Assert.False(_http1Connection.RequestAborted.IsCancellationRequested); 687_http1Connection.ResponseHeaders["Content-Length"] = "12"; 689var original = _http1Connection.RequestAborted; 693await _http1Connection.WriteAsync(new ArraySegment<byte>(new[] { (byte)ch }), default(CancellationToken)); 694Assert.Equal(original, _http1Connection.RequestAborted); 697await _http1Connection.WriteAsync(new ArraySegment<byte>(new[] { (byte)'d' }), default(CancellationToken)); 698Assert.NotEqual(original, _http1Connection.RequestAborted); 700_http1Connection.Abort(new ConnectionAbortedException(), ConnectionEndReason.AbortedByApp); 703Assert.False(_http1Connection.RequestAborted.IsCancellationRequested); 715_http1Connection.Abort(new ConnectionAbortedException(), ConnectionEndReason.AbortedByApp); 716var failResult = await _http1Connection.FlushPipeAsync(new CancellationToken()); 729_http1Connection.CancelPendingFlush(); 731var canceledResult = await _http1Connection.FlushPipeAsync(new CancellationToken()); 735var goodResult = await _http1Connection.FlushPipeAsync(new CancellationToken()); 742_http1Connection.ResponseHeaders["Content-Length"] = "12"; 744var original = _http1Connection.RequestAborted; 747var startingTask = _http1Connection.InitializeResponseAwaited(Task.CompletedTask, 1); 748await _http1Connection.WriteAsyncAwaited(startingTask, new ArraySegment<byte>(new[] { (byte)'h' }), default(CancellationToken)); 749Assert.Equal(original, _http1Connection.RequestAborted); 753await _http1Connection.WriteAsync(new ArraySegment<byte>(new[] { (byte)ch }), default(CancellationToken)); 754Assert.Equal(original, _http1Connection.RequestAborted); 757await _http1Connection.WriteAsync(new ArraySegment<byte>(new[] { (byte)'d' }), default(CancellationToken)); 758Assert.NotEqual(original, _http1Connection.RequestAborted); 760_http1Connection.Abort(new ConnectionAbortedException(), ConnectionEndReason.AbortedByApp); 763Assert.False(_http1Connection.RequestAborted.IsCancellationRequested); 769var original = _http1Connection.RequestAborted; 771_http1Connection.HttpVersion = "HTTP/1.1"; 772await _http1Connection.WriteAsync(new ArraySegment<byte>(Encoding.ASCII.GetBytes("hello, world")), default(CancellationToken)); 773Assert.Equal(original, _http1Connection.RequestAborted); 775await _http1Connection.ProduceEndAsync(); 776Assert.NotEqual(original, _http1Connection.RequestAborted); 778_http1Connection.Abort(new ConnectionAbortedException(), ConnectionEndReason.AbortedByApp); 781Assert.False(_http1Connection.RequestAborted.IsCancellationRequested); 787var originalToken = _http1Connection.RequestAborted; 790_http1Connection.Abort(new ConnectionAbortedException(), ConnectionEndReason.AbortedByApp); 793Assert.True(_http1Connection.RequestAborted.WaitHandle.WaitOne(TestConstants.DefaultTimeout)); 801var originalToken = _http1Connection.RequestAborted; 804_http1Connection.Abort(new ConnectionAbortedException(), ConnectionEndReason.AbortedByApp); 809Assert.True(_http1Connection.RequestAborted.WaitHandle.WaitOne(TestConstants.DefaultTimeout)); 817var originalToken = _http1Connection.RequestAborted; 822await _http1Connection.WritePipeAsync(ReadOnlyMemory<byte>.Empty, default).DefaultTimeout(); 825Assert.True(_http1Connection.RequestAborted.WaitHandle.WaitOne(TestConstants.DefaultTimeout)); 867var requestProcessingTask = _http1Connection.ProcessRequestsAsync<object>(null); 870await WaitForCondition(TestConstants.DefaultTimeout, () => _http1Connection.RequestHeaders != null); 871Assert.Empty(_http1Connection.RequestHeaders); 874await WaitForCondition(TestConstants.DefaultTimeout, () => _http1Connection.RequestHeaders.Count >= header0Count); 875Assert.Equal(header0Count, _http1Connection.RequestHeaders.Count); 878await WaitForCondition(TestConstants.DefaultTimeout, () => _http1Connection.RequestHeaders.Count >= header0Count + header1Count); 879Assert.Equal(header0Count + header1Count, _http1Connection.RequestHeaders.Count); 899var requestProcessingTask = _http1Connection.ProcessRequestsAsync<object>(null); 902await WaitForCondition(TestConstants.DefaultTimeout, () => _http1Connection.RequestHeaders != null); 903Assert.Empty(_http1Connection.RequestHeaders); 905var newRequestHeaders = new RequestHeadersWrapper(_http1Connection.RequestHeaders); 906_http1Connection.RequestHeaders = newRequestHeaders; 907Assert.Same(newRequestHeaders, _http1Connection.RequestHeaders); 910await WaitForCondition(TestConstants.DefaultTimeout, () => _http1Connection.RequestHeaders.Count >= header0Count); 911Assert.Same(newRequestHeaders, _http1Connection.RequestHeaders); 912Assert.Equal(header0Count, _http1Connection.RequestHeaders.Count); 915await WaitForCondition(TestConstants.DefaultTimeout, () => _http1Connection.RequestHeaders.Count >= header0Count + header1Count); 916Assert.Same(newRequestHeaders, _http1Connection.RequestHeaders); 917Assert.Equal(header0Count + header1Count, _http1Connection.RequestHeaders.Count); 928_http1Connection.HasStartedConsumingRequestBody = true; 931Assert.True(((IHttpMaxRequestBodySizeFeature)_http1Connection).IsReadOnly); 932var ex = Assert.Throws<InvalidOperationException>(() => ((IHttpMaxRequestBodySizeFeature)_http1Connection).MaxRequestBodySize = 1); 940var ex = Assert.Throws<ArgumentOutOfRangeException>(() => ((IHttpMaxRequestBodySizeFeature)_http1Connection).MaxRequestBodySize = -1); 953_http1Connection.NextMessageBody = mockMessageBody.Object; 955var requestProcessingTask = _http1Connection.ProcessRequestsAsync(httpApplication); 967_http1Connection.HttpVersion = "HTTP/1.0"; 968_http1Connection.EnsureHostHeaderExists(); 974_http1Connection.HttpVersion = "HTTP/1.0"; 975_http1Connection.RequestHeaders.Host = "localhost:5000"; 976_http1Connection.EnsureHostHeaderExists(); 982_http1Connection.HttpVersion = "HTTP/1.1"; 983_http1Connection.RequestHeaders.Host = ""; 984_http1Connection.EnsureHostHeaderExists(); 990_http1Connection.HttpVersion = "HTTP/1.1"; 991_http1Connection.RequestHeaders.Host = "localhost:5000"; 992_http1Connection.EnsureHostHeaderExists(); 998_http1Connection.HttpVersion = "HTTP/1.0"; 999_http1Connection.RequestHeaders.Host = "a=b"; 1000var ex = Assert.ThrowsAny<Http.BadHttpRequestException>(() => _http1Connection.EnsureHostHeaderExists()); 1007_http1Connection.HttpVersion = "HTTP/1.1"; 1008_http1Connection.RequestHeaders.Host = "a=b"; 1009var ex = Assert.ThrowsAny<Http.BadHttpRequestException>(() => _http1Connection.EnsureHostHeaderExists()); 1018_http1Connection.RequestHeaders.Add(HeaderNames.ContentLength, contentLength); 1019_http1Connection.RequestHeaders.Add(HeaderNames.TransferEncoding, "chunked"); 1022Http1MessageBody.For(Kestrel.Core.Internal.Http.HttpVersion.Http11, (HttpRequestHeaders)_http1Connection.RequestHeaders, _http1Connection); 1025Assert.True(_http1Connection.RequestHeaders.ContainsKey("X-Content-Length")); 1026Assert.Equal(contentLength, _http1Connection.RequestHeaders["X-Content-Length"]); 1027Assert.True(_http1Connection.RequestHeaders.ContainsKey(HeaderNames.TransferEncoding)); 1028Assert.Equal("chunked", _http1Connection.RequestHeaders[HeaderNames.TransferEncoding]); 1029Assert.False(_http1Connection.RequestHeaders.ContainsKey(HeaderNames.ContentLength)); 1038_http1Connection.RequestHeaders.Add(HeaderNames.ContentLength, contentLength); 1039_http1Connection.RequestHeaders.Add(HeaderNames.TransferEncoding, "chunked"); 1040_http1Connection.RequestHeaders.Add("X-Content-Length", userXContentLength); // user passed this explicitly 1043Http1MessageBody.For(Kestrel.Core.Internal.Http.HttpVersion.Http11, (HttpRequestHeaders)_http1Connection.RequestHeaders, _http1Connection); 1046Assert.True(_http1Connection.RequestHeaders.ContainsKey("X-Content-Length")); 1047Assert.Equal(userXContentLength, _http1Connection.RequestHeaders["X-Content-Length"]); 1048Assert.True(_http1Connection.RequestHeaders.ContainsKey(HeaderNames.TransferEncoding)); 1049Assert.Equal("chunked", _http1Connection.RequestHeaders[HeaderNames.TransferEncoding]); 1050Assert.False(_http1Connection.RequestHeaders.ContainsKey(HeaderNames.ContentLength)); 1056if (_http1Connection.TakeMessageHeaders(ref reader, trailers: trailers)) 1073if (_http1Connection.TakeStartLine(ref reader))