public void CanSubscribeToStream() { var ctx = new Rpc.Client(new Uri(TestConfig.RpcUrl)); ctx.BeginLogIn(TestConfig.ApiUsername, TestConfig.ApiPassword, ar => { EnqueueCallback(() => { ctx.EndLogIn(ar); Assert.IsFalse(string.IsNullOrEmpty(ctx.Session)); }); EnqueueCallback(() => { var streamingClient = StreamingClientFactory.CreateStreamingClient(new Uri(TestConfig.StreamingUri), ctx.UserName, ctx.Session); System.Diagnostics.Debug.WriteLine("created streaming client"); streamingClient.Connect(); System.Diagnostics.Debug.WriteLine("streaming client connected"); }); EnqueueTestComplete(); }, null); }
public void CanLogIn() { var ctx = new Rpc.Client(new Uri(TestConfig.RpcUrl)); ctx.BeginLogIn(TestConfig.ApiUsername, TestConfig.ApiPassword, ar => { ctx.EndLogIn(ar); EnqueueCallback(() => { try { Assert.IsFalse(string.IsNullOrEmpty(ctx.Session)); } finally { EnqueueTestComplete(); } } ); }, null); }
public void EnsureSilverlightCanConnect() { var client = new Rpc.Client(new Uri(TestConfig.RpcUrl)); client.BeginLogIn(TestConfig.ApiUsername, TestConfig.ApiPassword, ar => { EnqueueCallback(() => { try { client.EndLogIn(ar); client.News.BeginListNewsHeadlines("UK", 10, ar2 => { EnqueueCallback(() => { var headlines = client.News.EndListNewsHeadlines(ar2); Assert.IsTrue(headlines.Headlines.Length > 0); client.BeginLogOut(ar3 => { EnqueueCallback(() => { var loggedOut = client.EndLogOut(ar3); Assert. IsTrue (loggedOut); EnqueueTestComplete(); }); }, null); }); }, null); } catch (Exception exc) { throw; } }); }, null); }
public void CanGetHeadlines() { var rpcClient = new Rpc.Client(App.RpcUri); rpcClient.BeginLogIn(App.RpcUserName, App.RpcPassword, ar => { rpcClient.EndLogIn(ar); Assert.IsNotNull(rpcClient.Session); rpcClient.News.BeginListNewsHeadlines("UK", 10, ar2 => { var response = rpcClient.News.EndListNewsHeadlines(ar2); Assert.IsTrue(response.Headlines.Length > 0, "expected headlines"); EnqueueTestComplete(); }, null); }, null); }
public void CanLoginLogout() { var rpcClient = new Rpc.Client(App.RpcUri); rpcClient.BeginLogIn(App.RpcUserName, App.RpcPassword, ar => { rpcClient.EndLogIn(ar); Assert.IsNotNull(rpcClient.Session); rpcClient.BeginLogOut(ar2 => { var loggedOut = rpcClient.EndLogOut(ar2); Assert.IsTrue(loggedOut); EnqueueTestComplete(); }, null); }, null); }
public void CanSubscribeToStream() { var rpcClient = new Rpc.Client(App.RpcUri); IStreamingClient streamingClient = null; IStreamingListener<PriceDTO> priceListener = null; rpcClient.BeginLogIn(App.RpcUserName, App.RpcPassword, ar => { rpcClient.EndLogIn(ar); EnqueueCallback(() => { // 24/5 currency markets // 154297 GBP/USD (per 0.0001) CFD // 154284 EUR/AUD (per 0.0001) CFD // 99524 EUR/CAD (per 0.0001) CFD Assert.IsTrue( DateTime.UtcNow.DayOfWeek != DayOfWeek.Saturday && DateTime.UtcNow.DayOfWeek != DayOfWeek.Sunday, "This test cannot be run as there are no prices over the weekend"); EnqueueCallback(() => { Debug.WriteLine(string.Format("creating streaming client: streamingUri={0}, UserName={1}, Session={2}", App.StreamingUri, App.RpcUserName, rpcClient.Session)); streamingClient = StreamingClientFactory.CreateStreamingClient(App.StreamingUri, App.RpcUserName, rpcClient.Session); }); EnqueueCallback(() => { priceListener = streamingClient.BuildPricesListener(new[] { 154297, 154284, 99524 }); }); EnqueueCallback(() => { priceListener.MessageReceived += (s, e) => { PriceDTO actual = null; actual = e.Data; Assert.IsNotNull(actual); Assert.IsFalse(string.IsNullOrEmpty(actual.AuditId)); Assert.IsTrue(actual.Price > 0); EnqueueTestComplete(); }; }); }); }, null); }