From 643a43c3d64863eb54c4bf94803af5b5deec0ec8 Mon Sep 17 00:00:00 2001 From: Nate McMaster Date: Wed, 17 May 2017 09:36:40 -0700 Subject: [PATCH] Update test framework versions and fix issues with tests (#1834) --- build/dependencies.props | 4 ++-- .../FrameHeadersTests.cs | 21 ++++--------------- .../FrameRequestHeadersTests.cs | 5 +---- .../FrameResponseHeadersTests.cs | 5 ++--- ...spNetCore.Server.Kestrel.Core.Tests.csproj | 4 ---- .../OutputProducerTests.cs | 3 ++- ...Core.Server.Kestrel.FunctionalTests.csproj | 4 ---- .../ResponseTests.cs | 14 ++++++------- ...oft.AspNetCore.Server.Kestrel.Tests.csproj | 4 ---- ...erver.Kestrel.Transport.Libuv.Tests.csproj | 4 ---- 10 files changed, 18 insertions(+), 50 deletions(-) diff --git a/build/dependencies.props b/build/dependencies.props index 68a0c2e10a..7cace7d06b 100644 --- a/build/dependencies.props +++ b/build/dependencies.props @@ -7,7 +7,7 @@ 9.0.1 4.7.1 $(BundledNETStandardPackageVersion) - 15.0.0 - 2.2.0 + 15.3.0-* + 2.3.0-beta2-* diff --git a/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameHeadersTests.cs b/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameHeadersTests.cs index 65774c6022..385f4d3ec4 100644 --- a/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameHeadersTests.cs +++ b/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameHeadersTests.cs @@ -21,7 +21,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests [InlineData(" ,,", ConnectionOptions.None)] [InlineData(",, ", ConnectionOptions.None)] [InlineData(" , ,", ConnectionOptions.None)] - [InlineData(" , ,", ConnectionOptions.None)] [InlineData(" , , ", ConnectionOptions.None)] [InlineData("keep-alive", ConnectionOptions.KeepAlive)] [InlineData("keep-alive, upgrade", ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade)] @@ -31,8 +30,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests [InlineData("upgrade,,keep-alive", ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade)] [InlineData("keep-alive,", ConnectionOptions.KeepAlive)] [InlineData("keep-alive,,", ConnectionOptions.KeepAlive)] - [InlineData(",keep-alive", ConnectionOptions.KeepAlive)] - [InlineData(",,keep-alive", ConnectionOptions.KeepAlive)] [InlineData("keep-alive, ", ConnectionOptions.KeepAlive)] [InlineData("keep-alive, ,", ConnectionOptions.KeepAlive)] [InlineData("keep-alive, , ", ConnectionOptions.KeepAlive)] @@ -45,8 +42,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests [InlineData(", , keep-alive", ConnectionOptions.KeepAlive)] [InlineData("upgrade,", ConnectionOptions.Upgrade)] [InlineData("upgrade,,", ConnectionOptions.Upgrade)] - [InlineData(",upgrade", ConnectionOptions.Upgrade)] - [InlineData(",,upgrade", ConnectionOptions.Upgrade)] [InlineData("upgrade, ", ConnectionOptions.Upgrade)] [InlineData("upgrade, ,", ConnectionOptions.Upgrade)] [InlineData("upgrade, , ", ConnectionOptions.Upgrade)] @@ -59,8 +54,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests [InlineData(", , upgrade", ConnectionOptions.Upgrade)] [InlineData("close,", ConnectionOptions.Close)] [InlineData("close,,", ConnectionOptions.Close)] - [InlineData(",close", ConnectionOptions.Close)] - [InlineData(",,close", ConnectionOptions.Close)] [InlineData("close, ", ConnectionOptions.Close)] [InlineData("close, ,", ConnectionOptions.Close)] [InlineData("close, , ", ConnectionOptions.Close)] @@ -83,17 +76,14 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests [InlineData("upgrade,close", ConnectionOptions.Close | ConnectionOptions.Upgrade)] [InlineData("close,upgrade", ConnectionOptions.Close | ConnectionOptions.Upgrade)] [InlineData("keep-alive2", ConnectionOptions.None)] - [InlineData("keep-alive2,", ConnectionOptions.None)] [InlineData("keep-alive2 ", ConnectionOptions.None)] [InlineData("keep-alive2 ,", ConnectionOptions.None)] [InlineData("keep-alive2,", ConnectionOptions.None)] [InlineData("upgrade2", ConnectionOptions.None)] - [InlineData("upgrade2,", ConnectionOptions.None)] [InlineData("upgrade2 ", ConnectionOptions.None)] [InlineData("upgrade2 ,", ConnectionOptions.None)] [InlineData("upgrade2,", ConnectionOptions.None)] [InlineData("close2", ConnectionOptions.None)] - [InlineData("close2,", ConnectionOptions.None)] [InlineData("close2 ", ConnectionOptions.None)] [InlineData("close2 ,", ConnectionOptions.None)] [InlineData("close2,", ConnectionOptions.None)] @@ -171,12 +161,9 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests [InlineData(" ,,", TransferCoding.None)] [InlineData(",, ", TransferCoding.None)] [InlineData(" , ,", TransferCoding.None)] - [InlineData(" , ,", TransferCoding.None)] [InlineData(" , , ", TransferCoding.None)] [InlineData("chunked,", TransferCoding.Chunked)] [InlineData("chunked,,", TransferCoding.Chunked)] - [InlineData(",chunked", TransferCoding.Chunked)] - [InlineData(",,chunked", TransferCoding.Chunked)] [InlineData("chunked, ", TransferCoding.Chunked)] [InlineData("chunked, ,", TransferCoding.Chunked)] [InlineData("chunked, , ", TransferCoding.Chunked)] @@ -241,7 +228,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests StringValues value; Assert.False(headers.TryGetValue("Content-Length", out value)); - Assert.Equal(null, frameHeaders.ContentLength); + Assert.Null(frameHeaders.ContentLength); Assert.False(frameHeaders.ContentLength.HasValue); frameHeaders.ContentLength = 1; @@ -258,7 +245,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests frameHeaders.ContentLength = null; Assert.False(headers.TryGetValue("Content-Length", out value)); - Assert.Equal(null, frameHeaders.ContentLength); + Assert.Null(frameHeaders.ContentLength); Assert.False(frameHeaders.ContentLength.HasValue); } @@ -276,14 +263,14 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests StringValues value; Assert.False(headers.TryGetValue("Content-Length", out value)); - Assert.Equal(null, frameHeaders.ContentLength); + Assert.Null(frameHeaders.ContentLength); Assert.False(frameHeaders.ContentLength.HasValue); Assert.Throws(() => frameHeaders.ContentLength = -1); Assert.Throws(() => frameHeaders.ContentLength = long.MinValue); Assert.False(headers.TryGetValue("Content-Length", out value)); - Assert.Equal(null, frameHeaders.ContentLength); + Assert.Null(frameHeaders.ContentLength); Assert.False(frameHeaders.ContentLength.HasValue); } } diff --git a/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameRequestHeadersTests.cs b/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameRequestHeadersTests.cs index 182ffbadeb..88095e0d86 100644 --- a/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameRequestHeadersTests.cs +++ b/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameRequestHeadersTests.cs @@ -30,7 +30,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests headers["custom"] = new[] { "value" }; - Assert.NotNull(headers["custom"]); Assert.Equal(1, headers["custom"].Count); Assert.Equal("value", headers["custom"][0]); } @@ -43,8 +42,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests headers["host"] = new[] { "value" }; headers["content-length"] = new[] { "0" }; - Assert.NotNull(headers["host"]); - Assert.NotNull(headers["content-length"]); Assert.Equal(1, headers["host"].Count); Assert.Equal(1, headers["content-length"].Count); Assert.Equal("value", headers["host"][0]); @@ -307,7 +304,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests public void AppendThrowsWhenHeaderNameContainsNonASCIICharacters() { var headers = new FrameRequestHeaders(); - const string key = "\u00141ód\017c"; + const string key = "\u00141\u00F3d\017c"; var encoding = Encoding.GetEncoding("iso-8859-1"); var exception = Assert.Throws( diff --git a/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameResponseHeadersTests.cs b/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameResponseHeadersTests.cs index 62c0f8a1de..b7cf438e92 100644 --- a/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameResponseHeadersTests.cs +++ b/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/FrameResponseHeadersTests.cs @@ -66,7 +66,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests [InlineData("Serâ„¢ver", "Data")] [InlineData("Server", "Daâ„¢ta")] [InlineData("Unknownâ„¢-Header", "Data")] - [InlineData("Serâ„¢ver", "Data")] [InlineData("Å¡erver", "Data")] [InlineData("Server", "DaÅ¡ta")] [InlineData("UnknownÅ¡-Header", "Data")] @@ -218,7 +217,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests dictionary.Remove("Content-Length"); - Assert.Equal(null, headers.ContentLength); + Assert.Null(headers.ContentLength); } [Fact] @@ -230,7 +229,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests dictionary.Clear(); - Assert.Equal(null, headers.ContentLength); + Assert.Null(headers.ContentLength); } private static long ParseLong(string value) diff --git a/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/Microsoft.AspNetCore.Server.Kestrel.Core.Tests.csproj b/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/Microsoft.AspNetCore.Server.Kestrel.Core.Tests.csproj index 22e86958d9..59ed18e9b2 100644 --- a/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/Microsoft.AspNetCore.Server.Kestrel.Core.Tests.csproj +++ b/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/Microsoft.AspNetCore.Server.Kestrel.Core.Tests.csproj @@ -26,8 +26,4 @@ - - - - diff --git a/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/OutputProducerTests.cs b/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/OutputProducerTests.cs index 3bdc4fef58..93c90b10df 100644 --- a/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/OutputProducerTests.cs +++ b/test/Microsoft.AspNetCore.Server.Kestrel.Core.Tests/OutputProducerTests.cs @@ -1,6 +1,7 @@ // Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +using System; using Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http; using Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Infrastructure; using Microsoft.AspNetCore.Server.Kestrel.Internal.System.IO.Pipelines; @@ -10,7 +11,7 @@ using Xunit; namespace Microsoft.AspNetCore.Server.Kestrel.Core.Tests { - public class OutputProducerTests + public class OutputProducerTests : IDisposable { private readonly PipeFactory _pipeFactory; diff --git a/test/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests.csproj b/test/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests.csproj index a3057f5317..6eacb4bd2c 100644 --- a/test/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests.csproj +++ b/test/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests.csproj @@ -36,10 +36,6 @@ - - - - diff --git a/test/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests/ResponseTests.cs b/test/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests/ResponseTests.cs index 28d8a89bd3..6b1d658aa8 100644 --- a/test/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests/ResponseTests.cs +++ b/test/Microsoft.AspNetCore.Server.Kestrel.FunctionalTests/ResponseTests.cs @@ -1113,8 +1113,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests [Theory] [InlineData("gzip")] [InlineData("chunked, gzip")] - [InlineData("gzip")] - [InlineData("chunked, gzip")] public async Task ConnectionClosedWhenChunkedIsNotFinalTransferCoding(string responseTransferEncoding) { using (var server = new TestServer(async httpContext => @@ -1160,8 +1158,6 @@ namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests [Theory] [InlineData("gzip")] [InlineData("chunked, gzip")] - [InlineData("gzip")] - [InlineData("chunked, gzip")] public async Task ConnectionClosedWhenChunkedIsNotFinalTransferCodingEvenIfConnectionKeepAliveSetInResponse(string responseTransferEncoding) { using (var server = new TestServer(async httpContext => @@ -2064,6 +2060,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests Assert.Equal(1, testLogger.ApplicationErrorsLogged); } + [Theory] [MemberData(nameof(ConnectionAdapterData))] public async Task FailedWritesResultInAbortedRequest(ListenOptions listenOptions) { @@ -2077,9 +2074,11 @@ namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests var writeTcs = new TaskCompletionSource(); var registrationWh = new ManualResetEventSlim(); var connectionCloseWh = new ManualResetEventSlim(); + var requestStartWh = new ManualResetEventSlim(); using (var server = new TestServer(async httpContext => { + requestStartWh.Set(); var response = httpContext.Response; var request = httpContext.Request; var lifetime = httpContext.Features.Get(); @@ -2087,7 +2086,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests lifetime.RequestAborted.Register(() => registrationWh.Set()); await request.Body.CopyToAsync(Stream.Null); - connectionCloseWh.Wait(); + Assert.True(connectionCloseWh.Wait(10_000)); try { @@ -2115,13 +2114,14 @@ namespace Microsoft.AspNetCore.Server.Kestrel.FunctionalTests "Content-Length: 5", "", "Hello"); - // Don't wait to receive the response. Just close the socket. + + Assert.True(requestStartWh.Wait(10_000)); } connectionCloseWh.Set(); // Write failed - await Assert.ThrowsAsync(async () => await writeTcs.Task); + await Assert.ThrowsAsync(async () => await writeTcs.Task).TimeoutAfter(TimeSpan.FromSeconds(15)); // RequestAborted tripped Assert.True(registrationWh.Wait(1000)); } diff --git a/test/Microsoft.AspNetCore.Server.Kestrel.Tests/Microsoft.AspNetCore.Server.Kestrel.Tests.csproj b/test/Microsoft.AspNetCore.Server.Kestrel.Tests/Microsoft.AspNetCore.Server.Kestrel.Tests.csproj index c5914bfcd9..b694a050ec 100644 --- a/test/Microsoft.AspNetCore.Server.Kestrel.Tests/Microsoft.AspNetCore.Server.Kestrel.Tests.csproj +++ b/test/Microsoft.AspNetCore.Server.Kestrel.Tests/Microsoft.AspNetCore.Server.Kestrel.Tests.csproj @@ -20,8 +20,4 @@ - - - - diff --git a/test/Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests/Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests.csproj b/test/Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests/Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests.csproj index 3a36e44f3d..70611f88a0 100644 --- a/test/Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests/Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests.csproj +++ b/test/Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests/Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests.csproj @@ -27,8 +27,4 @@ - - - -