public async Task SingleClientProxyWithInvoke_ThrowsNotSupported() { var hubLifetimeManager = new EmptyHubLifetimeManager <FakeHub>(); var proxy = new SingleClientProxy <FakeHub>(hubLifetimeManager, ""); var ex = await Assert.ThrowsAsync <NotImplementedException>(async() => await proxy.InvokeAsync <int>("method")).DefaultTimeout(); Assert.Equal("EmptyHubLifetimeManager`1 does not support client return values.", ex.Message); }
public async Task SingleClientProxy_SendAsync_ArrayArgumentNotExpanded() { object[] resultArgs = null; var o = new Mock <HubLifetimeManager <FakeHub> >(); o.Setup(m => m.SendConnectionAsync(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <object[]>(), It.IsAny <CancellationToken>())) .Callback <string, string, object[], CancellationToken>((connectionId, methodName, args, _) => { resultArgs = args; }) .Returns(Task.CompletedTask); var proxy = new SingleClientProxy <FakeHub>(o.Object, string.Empty); var data = Encoding.UTF8.GetBytes("Hello world"); await proxy.SendAsync("Method", data); Assert.NotNull(resultArgs); var arg = (byte[])Assert.Single(resultArgs); Assert.Same(data, arg); }