public void Succeed()
        {
            string RequestConvId = "5-562";
            string ClientIp      = "192.168.1.31";
            int    ClientPort    = 5682;

            var testStock = new Stock("TST", "Test Stock");

            ValuatedStock[] vStock = { new ValuatedStock(("1984-02-22,1,2,3,100,5").Split(','), testStock) };
            MarketDay       day    = new MarketDay("day1", vStock);


            var RequestMessage = new UpdateLeaderBoardMessage()
            {
                ConversationID    = RequestConvId,
                SerializedRecords = Convert.ToBase64String(sigServ.Serialize(new List <LeaderboardRecord>()))
            };

            Envelope Request = new Envelope(RequestMessage, ClientIp, ClientPort);

            var localConv = ConversationManager.GetConversation(RequestConvId);

            Assert.IsNull(localConv);
            Assert.IsNull(mock);

            ConversationManager.ProcessIncomingMessage(Request);

            localConv = ConversationManager.GetConversation(RequestConvId);

            Assert.IsNotNull(localConv);
            Assert.IsTrue(localConv.CurrentState is ConversationDoneState);
            mock.Verify(state => state.Prepare(), Times.Once);
            mock.Verify(state => state.Send(), Times.Once);
            mock.Verify(state => state.HandleTimeout(), Times.Never);
        }
        public void SerializerTest()
        {
            var leaderboard = new SortedList <float, string>();

            leaderboard.Add(1.1f, "foohooboo");
            leaderboard.Add(2.1f, "dsphar");

            var updateLeaderboardMessage = new UpdateLeaderBoardMessage
            {
                SerializedRecords = Convert.ToBase64String(sigServ.Serialize(leaderboard)),
                SourceID          = 1,
                ConversationID    = "1",
                MessageID         = "2"
            };

            var serializedMessage = MessageFactory.GetMessage(updateLeaderboardMessage.Encode(), false) as UpdateLeaderBoardMessage;

            var records = sigServ.Deserialize <SortedList <float, string> >(Convert.FromBase64String(updateLeaderboardMessage.SerializedRecords));
            var records_fromSerialized = sigServ.Deserialize <SortedList <float, string> >(Convert.FromBase64String(serializedMessage.SerializedRecords));

            Assert.AreEqual(records.Count, records_fromSerialized.Count);

            Assert.AreEqual(records.Keys[0], records_fromSerialized.Keys[0]);
            Assert.AreEqual(records.Values[0], records_fromSerialized.Values[0]);

            Assert.AreEqual(records.Keys[1], records_fromSerialized.Keys[1]);
            Assert.AreEqual(records.Values[1], records_fromSerialized.Values[1]);
        }
        public void InheritsMessageTest()
        {
            var updateLeaderboardMessage = new UpdateLeaderBoardMessage();

            Assert.AreEqual(updateLeaderboardMessage.SourceID, 0);
            Assert.IsNull(updateLeaderboardMessage.MessageID);
            Assert.IsNull(updateLeaderboardMessage.ConversationID);
        }
        public void InitializerTest()
        {
            var leaderboard = new SortedList <float, string>();

            leaderboard.Add(1.1f, "foohooboo");
            leaderboard.Add(2.1f, "dsphar");

            var updateLeaderboardMessage = new UpdateLeaderBoardMessage
            {
                SerializedRecords = Convert.ToBase64String(sigServ.Serialize(leaderboard))
            };

            var records = sigServ.Deserialize <SortedList <float, string> >(Convert.FromBase64String(updateLeaderboardMessage.SerializedRecords));

            Assert.AreEqual(records.Count, 2);
            Assert.AreEqual(records.Keys[0], 1.1f);
            Assert.AreEqual(records.Values[0].ToString(), "foohooboo");

            Assert.AreEqual(records.Keys[1], 2.1f);
            Assert.AreEqual(records.Values[1].ToString(), "dsphar");
        }
        public void DefaultConstructorTest()
        {
            var updateLeaderboardMessage = new UpdateLeaderBoardMessage();

            Assert.AreEqual(updateLeaderboardMessage.SerializedRecords, "");
        }