public void SubscribingToUserStream_Should_TriggerWhenOcoOrderUpdateStreamMessageIsReceived()
        {
            // arrange
            var socket = new TestSocket();
            var client = TestHelpers.CreateSocketClient(socket, new BinanceSocketClientOptions()
            {
                LogLevel = LogLevel.Debug
            });

            BinanceStreamOrderList result = null;

            client.Spot.SubscribeToUserDataUpdatesAsync("test", null, (test) => result = test.Data, null, null);

            var data = new BinanceCombinedStream <BinanceStreamOrderList>
            {
                Stream = "test",
                Data   = new BinanceStreamOrderList()
                {
                    Event             = "listStatus",
                    EventTime         = new DateTime(2017, 1, 1),
                    Symbol            = "BNBUSDT",
                    ContingencyType   = "OCO",
                    ListStatusType    = ListStatusType.Done,
                    ListOrderStatus   = ListOrderStatus.Done,
                    OrderListId       = 1,
                    ListClientOrderId = "2",
                    TransactionTime   = new DateTime(2018, 1, 1),
                    Orders            = new[]
                    {
                        new BinanceStreamOrderId()
                        {
                            Symbol        = "BNBUSDT",
                            OrderId       = 2,
                            ClientOrderId = "3"
                        },
                        new BinanceStreamOrderId()
                        {
                            Symbol        = "BNBUSDT",
                            OrderId       = 3,
                            ClientOrderId = "4"
                        }
                    }
                }
            };

            // act
            socket.InvokeMessage(data);

            // assert
            Assert.IsNotNull(result);
            Assert.IsTrue(TestHelpers.AreEqual(data.Data, result, "Orders"));
            Assert.IsTrue(TestHelpers.AreEqual(data.Data.Orders.ToList()[0], result.Orders.ToList()[0]));
            Assert.IsTrue(TestHelpers.AreEqual(data.Data.Orders.ToList()[1], result.Orders.ToList()[1]));
        }
        private void UpdateOcoOrder(BinanceStreamOrderList orderUpdate)
        {
            Console.WriteLine("Binance UpdateOcoOrder");

            /*string oid = orderUpdate.OrderId.ToString();
             * if (m_order.ContainsKey(oid))
             * {
             *  if (IsUpdated(orderUpdate))
             *  {
             *      m_order[oid] = orderUpdate;     // order is updated
             *  }
             * }
             * else
             * {
             *  m_order[oid] = orderUpdate;         // order is added
             * }*/
        }
Ejemplo n.º 3
0
 private void OrderStream(BinanceStreamOrderList obj)
 {
     //Logger.Info(string.Format("TransactionTime received for : {0}", obj.TransactionTime));
     //Logger.Info(string.Format("ListOrderStatus received for : {0}", obj.ListOrderStatus));
 }