Пример #1
0
    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);
    }
Пример #2
0
        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);
        }