Exemplo n.º 1
0
        public void LogonLogoutTest()
        {
            bool             logon                 = false;
            ManualResetEvent resetEvent            = new ManualResetEvent(false);
            WldxFixOrderExecutionProvider provider = new WldxFixOrderExecutionProvider();

            provider.LogonArrived += delegate(string dataProvider)
            {
                logon = true;
                resetEvent.Set();
            };
            //start provider
            provider.Start();
            resetEvent.WaitOne(10000);
            Assert.True(logon, "Logon Not Arrived");
            if (logon)
            {
                bool logout = false;
                provider.LogoutArrived += delegate(string dataProvider)
                {
                    logout = true;
                    resetEvent.Set();
                };
                resetEvent.Reset();
                provider.Stop();
                resetEvent.WaitOne(5000);
                Assert.True(logout);
            }
        }
Exemplo n.º 2
0
        public void CancelOrderTest()
        {
            LimitOrder order = OrderMessage.GenerateLimitOrder(DateTime.Now.ToString("yyMMddHmsfff"), new Security()
            {
                Symbol = "TNA"
            }, OrderSide.SELL, 3, 105,
                                                               "WldxFix");

            order.Exchange = "SMARTEDGEP";
            bool             logon                 = false;
            ManualResetEvent resetEvent            = new ManualResetEvent(false);
            WldxFixOrderExecutionProvider provider = new WldxFixOrderExecutionProvider();

            provider.LogonArrived += delegate(string dataProvider)
            {
                logon = true;
                resetEvent.Set();
            };
            //start provider
            provider.Start();
            resetEvent.WaitOne(5000);
            Assert.True(logon);
            if (logon)
            {
                bool newArrived          = false;
                bool cancellationArrived = false;

                provider.NewArrived += delegate(Order newOrder)
                {
                    newArrived = true;
                    provider.CancelLimitOrder(order);
                };
                provider.CancellationArrived += delegate(Order cancelledOrder)
                {
                    cancellationArrived = true;
                    resetEvent.Set();
                };
                provider.SendLimitOrder(order);
                resetEvent.Reset();
                resetEvent.WaitOne(30000);

                bool logout = false;
                provider.LogoutArrived += delegate(string dataProvider)
                {
                    logout = true;
                    resetEvent.Set();
                };
                resetEvent.Reset();
                provider.Stop();
                resetEvent.WaitOne(5000);
                Assert.True(logout);
                Assert.True(newArrived);
                Assert.True(cancellationArrived);
            }
        }