Exemplo n.º 1
0
        public void HandleRawMsgsStatisticsGood()
        {
            UserStatisticsCommMessage commMessage = new UserStatisticsCommMessage(1, -1);

            _serverEventHandler = new Mock <IEventHandler>();
            _serverEventHandler.Setup(e => e.HandleEvent(It.IsAny <UserStatisticsCommMessage>()))
            .Returns(new UserStatisticsResponseCommMessage(commMessage.UserId, commMessage.SessionId,
                                                           true, commMessage, 83.333333333333329, 90.9090909090909));

            _webEventHandler = new WebEventHandler(_serverEventHandler.Object);

            var expectedResponse =
                "u{\"?xml\":{\"@version\":\"1.0\",\"@encoding\":\"utf-16\"}," +
                "\"UserStatisticsResponseCommMessage\":{\"@xmlns:xsd\":" +
                "\"http://www.w3.org/2001/XMLSchema\",\"@xmlns:xsi\":\"http://www.w3.org/2001/XMLSchema-instance\"," +
                "\"UserId\":\"1\",\"SessionId\":\"-1\",\"Success\":\"true\",\"OriginalMsg\":{\"@xsi:type\":\"UserStatisticsCommMessage\"," +
                "\"UserId\":\"1\",\"SessionId\":\"-1\"},\"AvgCashGain\":\"83.333333333333329\",\"AvgGrossProfit\":\"90.9090909090909\"}}";

            var xml    = _parser.SerializeMsg(commMessage, false);
            var json   = _parser.XmlToJson(xml);
            var result = _webEventHandler.HandleRawMsg(json);

            Assert.AreEqual(1, result.Count);
            Assert.AreEqual(expectedResponse, result[0]);
        }
Exemplo n.º 2
0
 public ResponeCommMessage HandleEvent(UserStatisticsCommMessage msg)
 {
     if (_sessionIdHandler != null)
     {
         UserStatistics stats = _userService.GetUserStatistics(msg.UserId);
         if (stats != null)
         {
             return(new UserStatisticsResponseCommMessage(msg.UserId, _sessionIdHandler.GetSessionIdByUserId(msg.UserId), true,
                                                          msg, stats.AvgCashGain, stats.AvgGrossProfit));
         }
     }
     return(new ResponeCommMessage(msg.UserId, msg.SessionId, false, msg));
 }
Exemplo n.º 3
0
        public void HandleRawMsgsNonJsonMsgBad()
        {
            UserStatisticsCommMessage commMessage = new UserStatisticsCommMessage(1, -1);

            _webEventHandler = new WebEventHandler(null);

            var xml = _parser.SerializeMsg(commMessage, false);

            //should throw because msg is xml and not json
            var ex = Assert.Throws <Newtonsoft.Json.JsonReaderException>(() =>
                                                                         _webEventHandler.HandleRawMsg(xml));

            Assert.IsNotNull(ex);
        }
Exemplo n.º 4
0
        public void ParseStatisticsGood()
        {
            var expectedMessage =
                "t{\"?xml\":{\"@version\":\"1.0\",\"@encoding\":\"utf-16\"}," +
                "\"UserStatisticsCommMessage\":{\"@xmlns:xsd\":\"http://www.w3.org/2001/XMLSchema\"," +
                "\"@xmlns:xsi\":\"http://www.w3.org/2001/XMLSchema-instance\",\"UserId\":\"1\",\"SessionId\":\"-1\"}}";

            //var expectedResponse =
            //    "u{\"?xml\":{\"@version\":\"1.0\",\"@encoding\":\"utf-16\"}," +
            //    "\"UserStatisticsResponseCommMessage\":{\"@xmlns:xsd\":" +
            //    "\"http://www.w3.org/2001/XMLSchema\",\"@xmlns:xsi\":\"http://www.w3.org/2001/XMLSchema-instance\"," +
            //    "\"UserId\":\"1\",\"SessionId\":\"-1\",\"Success\":\"true\",\"OriginalMsg\":{\"@xsi:type\":\"UserStatisticsCommMessage\"," +
            //    "\"UserId\":\"1\",\"SessionId\":\"-1\"},\"AvgCashGain\":\"83.333333333333329\",\"AvgGrossProfit\":\"90.9090909090909\"}}";

            UserStatisticsCommMessage commMessage = new UserStatisticsCommMessage(1, -1);
            var xml  = _parser.SerializeMsg(commMessage, false);
            var json = _parser.XmlToJson(xml);

            Assert.AreEqual(expectedMessage, json);
        }
Exemplo n.º 5
0
 public ResponeCommMessage HandleEvent(UserStatisticsCommMessage msg)
 {
     GotClientToServerMsg(msg);
     return(new ResponeCommMessage(msg.UserId, msg.SessionId, false, msg));
 }