Merge pull request #2224 from aspnet/release/2.1

Use params passed into HubConnectionBuilder (#2223)
This commit is contained in:
Mikael Mengistu 2018-05-07 21:44:04 -07:00 committed by GitHub
commit 62d892315b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 32 additions and 2 deletions

View File

@ -99,7 +99,7 @@ namespace Microsoft.AspNetCore.SignalR.Client
/// <returns>The same instance of the <see cref="IHubConnectionBuilder"/> for chaining.</returns>
public static IHubConnectionBuilder WithUrl(this IHubConnectionBuilder hubConnectionBuilder, Uri url, HttpTransportType transports)
{
hubConnectionBuilder.WithUrlCore(url, null, _ => { });
hubConnectionBuilder.WithUrlCore(url, transports, _ => { });
return hubConnectionBuilder;
}
@ -113,7 +113,7 @@ namespace Microsoft.AspNetCore.SignalR.Client
/// <returns>The same instance of the <see cref="IHubConnectionBuilder"/> for chaining.</returns>
public static IHubConnectionBuilder WithUrl(this IHubConnectionBuilder hubConnectionBuilder, Uri url, HttpTransportType transports, Action<HttpConnectionOptions> configureHttpConnection)
{
hubConnectionBuilder.WithUrlCore(url, transports, _ => { });
hubConnectionBuilder.WithUrlCore(url, transports, configureHttpConnection);
return hubConnectionBuilder;
}

View File

@ -42,6 +42,36 @@ namespace Microsoft.AspNetCore.SignalR.Client.Tests
Assert.Equal(HttpTransportType.LongPolling, value.Transports);
}
[Fact]
public void WithUrlUsingUriSetsTransport()
{
var connectionBuilder = new HubConnectionBuilder();
var uri = new Uri("http://tempuri.org");
connectionBuilder.WithUrl(uri, HttpTransportType.LongPolling);
var serviceProvider = connectionBuilder.Services.BuildServiceProvider();
var value = serviceProvider.GetService<IOptions<HttpConnectionOptions>>().Value;
Assert.Equal(HttpTransportType.LongPolling, value.Transports);
}
[Fact]
public void WithUrlUsingUriHttpConnectionCallsConfigure()
{
var proxy = Mock.Of<IWebProxy>();
var connectionBuilder = new HubConnectionBuilder();
var uri = new Uri("http://tempuri.org");
connectionBuilder.WithUrl(uri, HttpTransportType.LongPolling, options => { options.Proxy = proxy; });
var serviceProvider = connectionBuilder.Services.BuildServiceProvider();
var value = serviceProvider.GetService<IOptions<HttpConnectionOptions>>().Value;
Assert.Same(proxy, value.Proxy);
}
[Fact]
public void WithHttpConnectionCallsConfigure()
{