public void MessageHandler_SendsCorrectPackets_ToCorrectRoutes()
        {
            //Allow proper decoding of orders.
            JsonConvert.DefaultSettings = () => new JsonSerializerSettings
            {
                Converters = { new OrderJsonConverter() }
            };

            // Create list of packets to test
            var debug = new DebugPacket();
            var log = new LogPacket();
            var backtest = new BacktestResultPacket();
            var handled = new HandledErrorPacket();
            var error = new RuntimeErrorPacket();
            var packetList = new List<Packet>
                {
                    log,
                    debug,
                    backtest,
                    handled,
                    error
                };

            using (var pullSocket = new PullSocket(">tcp://localhost:" + _port))
            {
                var count = 0;
                while (count < packetList.Count)
                {
                    _messageHandler.Send(packetList[count]);

                    var message = pullSocket.ReceiveMultipartMessage();

                    var payload = message[0].ConvertToString();
                    var packet = JsonConvert.DeserializeObject<Packet>(payload);

                    Assert.IsTrue(message.FrameCount == 1);

                    if (PacketType.Debug == packet.Type)
                        Assert.IsTrue(payload == JsonConvert.SerializeObject(debug));

                    if (PacketType.HandledError == packet.Type)
                        Assert.IsTrue(payload == JsonConvert.SerializeObject(handled));

                    if (PacketType.BacktestResult == packet.Type)
                        Assert.IsTrue(payload == JsonConvert.SerializeObject(backtest));

                    if (PacketType.RuntimeError == packet.Type)
                        Assert.IsTrue(payload == JsonConvert.SerializeObject(error));

                    if (PacketType.Log == packet.Type)
                        Assert.IsTrue(payload == JsonConvert.SerializeObject(log));

                    count++;
                }
            }
        }
        private void HandleHandledErrorPacket(HandledErrorPacket packet)
        {
            var hstack = (!string.IsNullOrEmpty(packet.StackTrace) ? (Environment.NewLine + " " + packet.StackTrace) : string.Empty);
            Log.Error(packet.Message + hstack);

        }
Exemplo n.º 3
0
 /// <summary>
 /// Raise a handled error event safely
 /// </summary>
 protected virtual void OnHandledErrorEvent(HandledErrorPacket packet)
 {
     var handler = HandledErrorEvent;
     if (handler != null)
     {
         handler(packet);
     }
 }
Exemplo n.º 4
0
 /// <summary>
 /// Display a handled error
 /// </summary>
 public void DisplayHandledErrorPacket(HandledErrorPacket packet)
 {
     var hstack = (!string.IsNullOrEmpty(packet.StackTrace) ? (Environment.NewLine + " " + packet.StackTrace) : string.Empty);
     _logging.Error(packet.Message + hstack);
 }