public void BeginStartQuotes(IEnumerable <Symbol> symbols) { try { if (client.IsConnected == true) { client.Disconnect(); client = new DdeClient("MTX", "DATA"); } client.Advise += OnAdvise; client.Disconnected += new EventHandler <DdeDisconnectedEventArgs>(client_Disconnected); client.Connect(); foreach (var item in symbols) { for (int j = 0; j < UpdateFields.Length; ++j) { client.BeginStartAdvise(item.Value.ToUpper() + "." + UpdateFields[j], 1, true, null, null); } } } catch { } }
public void Test_BeginStartAdvise_Before_Connect() { using var server = new TestServer(ServiceName); server.Register(); server.SetData(TopicName, ItemName, 1, Encoding.ASCII.GetBytes(TestData)); using var client = new DdeClient(ServiceName, TopicName); Assert.Throws<InvalidOperationException>(() => client.BeginStartAdvise(ItemName, 1, false, null, null)); }
public void Test_BeginStartAdvise_After_Dispose() { using var server = new TestServer(ServiceName); server.Register(); server.SetData(TopicName, ItemName, 1, Encoding.ASCII.GetBytes(TestData)); using var client = new DdeClient(ServiceName, TopicName); client.Connect(); client.Dispose(); Assert.Throws<ObjectDisposedException>(() => client.BeginStartAdvise(ItemName, 1, false, null, null)); }
public void Test_EndStartAdvise() { using var server = new TestServer(ServiceName); server.Register(); server.SetData(TopicName, ItemName, 1, Encoding.ASCII.GetBytes(TestData)); using var client = new DdeClient(ServiceName, TopicName); client.Connect(); var ar = client.BeginStartAdvise(ItemName, 1, true, null, null); Assert.IsTrue(ar.AsyncWaitHandle.WaitOne(Timeout, false)); client.EndStartAdvise(ar); }
public void Test_BeginStartAdvise_Before_Connect() { using (TestServer server = new TestServer(ServiceName)) { server.Register(); server.SetData(TopicName, ItemName, 1, Encoding.ASCII.GetBytes(TestData)); using (DdeClient client = new DdeClient(ServiceName, TopicName)) { IAsyncResult ar = client.BeginStartAdvise(ItemName, 1, false, null, null); } } }
public void Test_EndStartAdvise_After_Dispose() { using (var server = new TestServer(ServiceName)) { server.Register(); server.SetData(TopicName, ItemName, 1, Encoding.ASCII.GetBytes(TestData)); using (var client = new DdeClient(ServiceName, TopicName)) { client.Connect(); var ar = client.BeginStartAdvise(ItemName, 1, true, null, null); Assert.IsTrue(ar.AsyncWaitHandle.WaitOne(Timeout, false)); client.Dispose(); Assert.Throws<ObjectDisposedException>(() => client.EndStartAdvise(ar)); } } }
public void Test_BeginStartAdvise_Variation_2() { using var server = new TestServer(ServiceName); server.Register(); server.SetData(TopicName, ItemName, 1, Encoding.ASCII.GetBytes(TestData)); using var client = new DdeClient(ServiceName, TopicName); var listener = new EventListener(); client.Advise += listener.OnEvent; client.Connect(); var ar = client.BeginStartAdvise(ItemName, 1, false, null, null); Assert.IsTrue(ar.AsyncWaitHandle.WaitOne(Timeout, false)); server.Advise(TopicName, ItemName); Assert.IsTrue(listener.Received.WaitOne(Timeout, false)); var args = (DdeAdviseEventArgs) listener.Events[0]; Assert.AreEqual(ItemName, args.Item); Assert.AreEqual(1, args.Format); Assert.IsNull(args.Data); }
public void Test_BeginStartAdvise_Variation_3() { using (TestServer server = new TestServer(ServiceName)) { server.Register(); server.SetData(TopicName, ItemName, 1, Encoding.ASCII.GetBytes(TestData)); using (DdeClient client = new DdeClient(ServiceName, TopicName)) { EventListener listener = new EventListener(); client.Advise += listener.OnEvent; client.Connect(); IAsyncResult ar = client.BeginStartAdvise(ItemName, 1, true, true, null, null, "MyStateObject"); Assert.IsTrue(ar.AsyncWaitHandle.WaitOne(Timeout, false)); server.Advise(TopicName, ItemName); Assert.IsTrue(listener.Received.WaitOne(Timeout, false)); DdeAdviseEventArgs args = (DdeAdviseEventArgs)listener.Events[0]; Assert.AreEqual(ItemName, args.Item); Assert.AreEqual(1, args.Format); Assert.AreEqual("MyStateObject", args.State); Assert.AreEqual(TestData, Encoding.ASCII.GetString(args.Data)); } } }