From c053b8cd9d101839fcd075b79870c5bb895eeec7 Mon Sep 17 00:00:00 2001 From: Pawel Kadluczka Date: Fri, 5 May 2017 15:59:06 -0700 Subject: [PATCH] Fixing Win7 tests --- .../DefaultTransportFactoryTests.cs | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/DefaultTransportFactoryTests.cs b/test/Microsoft.AspNetCore.SignalR.Tests/DefaultTransportFactoryTests.cs index 80dad3fc64..e445f2876c 100644 --- a/test/Microsoft.AspNetCore.SignalR.Tests/DefaultTransportFactoryTests.cs +++ b/test/Microsoft.AspNetCore.SignalR.Tests/DefaultTransportFactoryTests.cs @@ -31,7 +31,7 @@ namespace Microsoft.AspNetCore.SignalR.Tests Assert.Equal(exception.ParamName, "httpClient"); } - [Theory] + [ConditionalTheory] [InlineData(TransportType.WebSockets, typeof(WebSocketsTransport))] [InlineData(TransportType.ServerSentEvents, typeof(ServerSentEventsTransport))] [InlineData(TransportType.LongPolling, typeof(LongPollingTransport))] @@ -58,7 +58,7 @@ namespace Microsoft.AspNetCore.SignalR.Tests Assert.Equal("No requested transports available on the server.", ex.Message); } - [Fact] + [ConditionalFact] [OSSkipCondition(OperatingSystems.Windows, WindowsVersions.Win7, WindowsVersions.Win2008R2, SkipReason = "No WebSockets Client for this platform")] public void DefaultTransportFactoryCreatesWebSocketsTransportIfAvailable() { @@ -68,7 +68,8 @@ namespace Microsoft.AspNetCore.SignalR.Tests } [Theory] - [InlineData(TransportType.WebSockets, typeof(ServerSentEventsTransport))] + [InlineData(TransportType.All, typeof(ServerSentEventsTransport))] + [InlineData(TransportType.ServerSentEvents, typeof(ServerSentEventsTransport))] [InlineData(TransportType.LongPolling, typeof(LongPollingTransport))] public void DefaultTransportFactoryCreatesRequestedTransportIfAvailable_Win7(TransportType requestedTransport, Type expectedTransportType) { @@ -80,6 +81,21 @@ namespace Microsoft.AspNetCore.SignalR.Tests } } + [Theory] + [InlineData(TransportType.WebSockets)] + public void DefaultTransportFactoryThrowsIfItCannotCreateRequestedTransport_Win7(TransportType requestedTransport) + { + if (!WebsocketsSupported()) + { + var transportFactory = + new DefaultTransportFactory(requestedTransport, loggerFactory: null, httpClient: new HttpClient()); + var ex = Assert.Throws( + () => transportFactory.CreateTransport(TransportType.All)); + + Assert.Equal("No requested transports available on the server.", ex.Message); + } + } + private bool WebsocketsSupported() { try