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++;
                }
            }
        }
        /// <summary>
        /// Raise a debug event safely
        /// </summary>
        protected virtual void OnDebugEvent(DebugPacket packet)
        {
            var handler = DebugEvent;

            if (handler != null)
            {
                handler(packet);
            }
        }
Beispiel #3
0
 /// <summary>
 /// Display a debug packet
 /// </summary>
 /// <param name="packet"></param>
 private void MessagingOnDebugEvent(DebugPacket packet)
 {
     _logging.Trace(packet.Message);
 }
 private void HandleDebugPacket(DebugPacket packet)
 {
     Log.Trace("Debug: " + packet.Message);
 }
Beispiel #5
0
 /// <summary>
 /// Display a debug packet
 /// </summary>
 /// <param name="packet"></param>
 public void DisplayDebugPacket(DebugPacket packet)
 {
     _logging.Trace(packet.Message);
 }