예제 #1
0
        public void ExpressionBasedHubProxy_Throws_If_Not_Given_Proxy_Call()
        {
            var client = new ExpressionBasedHubProxy <IBar>(null);

            Assert.Throws <ArgumentException>(() =>
                                              client.Execute(r => Console.Write("")));
        }
예제 #2
0
        _ExpressionBasedHubProxy_Can_TwoWay_Client_Server_Sync_Over_Async()
        {
            var hc = new HubConnectionBuilder()
                     .WithUrl(ProxyTestHostHolder._expressionHubString).Build();

            hc.StartAsync().GetAwaiter().GetResult();
            var client = new ExpressionBasedHubProxy <IBar>(hc);

            var res = await client.InvokeAsync(r => r.TestTwoWaySync("derp"));

            Assert.Contains("derp", res);
        }
예제 #3
0
        private async Task _ExpressionBasedHubProxy_Can_TwoWay_Client_Server()
        {
            var hc = new HubConnectionBuilder()
                     .WithUrl(ProxyTestHostHolder._expressionHubString).Build();
            await hc.StartAsync();

            var client = new ExpressionBasedHubProxy <IBar>(hc);

            var res = await client.Invoke(r => r.TestTwoWay("derp"));

            Assert.Contains("derp", res);
        }
예제 #4
0
        _ExpressionBasedHubProxy_Can_Communicate_Client_Server()
        {
            var hc = new HubConnectionBuilder()
                     .WithUrl(ProxyTestHostHolder._expressionHubString).Build();
            await hc.StartAsync();

            var client = new ExpressionBasedHubProxy <IBar>(hc);

            await client.Execute(r => r.StringType("hello2"));

            SpinWait.SpinUntil(() => false, TimeSpan.FromSeconds(2));
            Assert.True(GroupHub.callCounter["hello2"] > 0);
        }