From 3a8f512fa70cdbfdad958f682a66c1a47407871d Mon Sep 17 00:00:00 2001 From: BrennanConroy Date: Wed, 15 Nov 2017 13:31:17 -0800 Subject: [PATCH] Couple more reaction changes for Hosting (#1126) --- .../MapSignalRTests.cs | 83 ++++------- .../MapEndPointTests.cs | 131 ++++++------------ 2 files changed, 71 insertions(+), 143 deletions(-) diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/MapSignalRTests.cs b/test/Microsoft.AspNetCore.SignalR.Tests/MapSignalRTests.cs index 7d708c065b..5cc66c6928 100644 --- a/test/Microsoft.AspNetCore.SignalR.Tests/MapSignalRTests.cs +++ b/test/Microsoft.AspNetCore.SignalR.Tests/MapSignalRTests.cs @@ -14,17 +14,7 @@ namespace Microsoft.AspNetCore.SignalR.Tests { var ex = Assert.Throws(() => { - using (var builder = new WebHostBuilder() - .UseKestrel() - .ConfigureServices(services => - { - services.AddSignalR(); - }) - .Configure(app => - { - app.UseSignalR(options => options.MapHub("overloads")); - }) - .Build()) + using (var builder = BuildWebHost(options => options.MapHub("overloads"))) { builder.Start(); } @@ -37,20 +27,10 @@ namespace Microsoft.AspNetCore.SignalR.Tests public void MapHubFindsAuthAttributeOnHub() { var authCount = 0; - using (var builder = new WebHostBuilder() - .UseKestrel() - .ConfigureServices(services => - { - services.AddSignalR(); - }) - .Configure(app => - { - app.UseSignalR(options => options.MapHub("path", httpSocketOptions => - { - authCount += httpSocketOptions.AuthorizationData.Count; - })); - }) - .Build()) + using (var builder = BuildWebHost(options => options.MapHub("path", httpSocketOptions => + { + authCount += httpSocketOptions.AuthorizationData.Count; + }))) { builder.Start(); } @@ -62,20 +42,10 @@ namespace Microsoft.AspNetCore.SignalR.Tests public void MapHubFindsAuthAttributeOnInheritedHub() { var authCount = 0; - using (var builder = new WebHostBuilder() - .UseKestrel() - .ConfigureServices(services => - { - services.AddSignalR(); - }) - .Configure(app => - { - app.UseSignalR(options => options.MapHub("path", httpSocketOptions => - { - authCount += httpSocketOptions.AuthorizationData.Count; - })); - }) - .Build()) + using (var builder = BuildWebHost(options => options.MapHub("path", httpSocketOptions => + { + authCount += httpSocketOptions.AuthorizationData.Count; + }))) { builder.Start(); } @@ -87,25 +57,15 @@ namespace Microsoft.AspNetCore.SignalR.Tests public void MapHubFindsMultipleAuthAttributesOnDoubleAuthHub() { var authCount = 0; - using (var builder = new WebHostBuilder() - .UseKestrel() - .ConfigureServices(services => - { - services.AddSignalR(); - }) - .Configure(app => - { - app.UseSignalR(options => options.MapHub("path", httpSocketOptions => - { - authCount += httpSocketOptions.AuthorizationData.Count; - })); - }) - .Build()) + using (var builder = BuildWebHost(options => options.MapHub("path", httpSocketOptions => + { + authCount += httpSocketOptions.AuthorizationData.Count; + }))) { builder.Start(); } - Assert.Equal(2, authCount); + Assert.Equal(2, authCount); } private class InvalidHub : Hub @@ -132,5 +92,20 @@ namespace Microsoft.AspNetCore.SignalR.Tests private class AuthHub : Hub { } + + private IWebHost BuildWebHost(Action configure) + { + return new WebHostBuilder() + .UseKestrel() + .ConfigureServices(services => + { + services.AddSignalR(); + }) + .Configure(app => + { + app.UseSignalR(options => configure(options)); + }) + .Build(); + } } } diff --git a/test/Microsoft.AspNetCore.Sockets.Tests/MapEndPointTests.cs b/test/Microsoft.AspNetCore.Sockets.Tests/MapEndPointTests.cs index da1ae0c0fa..26260907a1 100644 --- a/test/Microsoft.AspNetCore.Sockets.Tests/MapEndPointTests.cs +++ b/test/Microsoft.AspNetCore.Sockets.Tests/MapEndPointTests.cs @@ -32,28 +32,11 @@ namespace Microsoft.AspNetCore.Sockets.Tests public void MapEndPointFindsAuthAttributeOnEndPoint() { var authCount = 0; - var builder = new WebHostBuilder() - .UseKestrel() - .ConfigureServices(services => - { - services.AddSockets(); - services.AddEndPoint(); - }) - .Configure(app => - { - app.UseSockets(routes => - { - routes.MapEndPoint("auth", httpSocketOptions => - { - authCount += httpSocketOptions.AuthorizationData.Count; - }); - }); - }) - .ConfigureLogging(factory => - { - factory.AddXunit(_output, LogLevel.Trace); - }) - .Build(); + using (var builder = BuildWebHost("auth", + options => authCount += options.AuthorizationData.Count)) + { + builder.Start(); + } Assert.Equal(1, authCount); } @@ -62,28 +45,11 @@ namespace Microsoft.AspNetCore.Sockets.Tests public void MapEndPointFindsAuthAttributeOnInheritedEndPoint() { var authCount = 0; - var builder = new WebHostBuilder() - .UseKestrel() - .ConfigureServices(services => - { - services.AddSockets(); - services.AddEndPoint(); - }) - .Configure(app => - { - app.UseSockets(routes => - { - routes.MapEndPoint("auth", httpSocketOptions => - { - authCount += httpSocketOptions.AuthorizationData.Count; - }); - }); - }) - .ConfigureLogging(factory => - { - factory.AddXunit(_output, LogLevel.Trace); - }) - .Build(); + using (var builder = BuildWebHost("auth", + options => authCount += options.AuthorizationData.Count)) + { + builder.Start(); + } Assert.Equal(1, authCount); } @@ -92,28 +58,11 @@ namespace Microsoft.AspNetCore.Sockets.Tests public void MapEndPointFindsAuthAttributesOnDoubleAuthEndPoint() { var authCount = 0; - var builder = new WebHostBuilder() - .UseKestrel() - .ConfigureServices(services => - { - services.AddSockets(); - services.AddEndPoint(); - }) - .Configure(app => - { - app.UseSockets(routes => - { - routes.MapEndPoint("auth", httpSocketOptions => - { - authCount += httpSocketOptions.AuthorizationData.Count; - }); - }); - }) - .ConfigureLogging(factory => - { - factory.AddXunit(_output, LogLevel.Trace); - }) - .Build(); + using (var builder = BuildWebHost("auth", + options => authCount += options.AuthorizationData.Count)) + { + builder.Start(); + } Assert.Equal(2, authCount); } @@ -122,29 +71,8 @@ namespace Microsoft.AspNetCore.Sockets.Tests [OSSkipCondition(OperatingSystems.Windows, WindowsVersions.Win7, WindowsVersions.Win2008R2, SkipReason = "No WebSockets Client for this platform")] public async Task MapEndPointWithWebSocketSubProtocolSetsProtocol() { - var host = new WebHostBuilder() - .UseUrls("http://127.0.0.1:0") - .UseKestrel() - .ConfigureServices(services => - { - services.AddSockets(); - services.AddEndPoint(); - }) - .Configure(app => - { - app.UseSockets(routes => - { - routes.MapEndPoint("socket", httpSocketOptions => - { - httpSocketOptions.WebSockets.SubProtocol = "protocol1"; - }); - }); - }) - .ConfigureLogging(factory => - { - factory.AddXunit(_output, LogLevel.Trace); - }) - .Build(); + var host = BuildWebHost("socket", + options => options.WebSockets.SubProtocol = "protocol1"); await host.StartAsync(); @@ -193,5 +121,30 @@ namespace Microsoft.AspNetCore.Sockets.Tests throw new NotImplementedException(); } } + + private IWebHost BuildWebHost(string path, Action configure) where TEndPoint : EndPoint + { + return new WebHostBuilder() + .UseUrls("http://127.0.0.1:0") + .UseKestrel() + .ConfigureServices(services => + { + services.AddSockets(); + services.AddEndPoint(); + }) + .Configure(app => + { + app.UseSockets(routes => + { + routes.MapEndPoint(path, + httpSocketOptions => configure(httpSocketOptions)); + }); + }) + .ConfigureLogging(factory => + { + factory.AddXunit(_output, LogLevel.Trace); + }) + .Build(); + } } }