public async Task TestRpcFromClientToServer() { int result = 0; var t1 = Run(async() => { _server.Register("test", (arg) => { return(new object[] { int.Parse(arg[0].ToString()) + 1 }); }); await _server.ConnectAsync(5000); _server.Start(); }); var t2 = Run(async() => { await _client.ConnectAsync(5000); _client.Start(); result = int.Parse((await _client.CallAsync("test", 5))[0].ToString()); }); await Task.WhenAll(t1, t2); Assert.AreEqual(6, result); }