public void SerializeTest() { var ass1 = new Asset { Quantity = 1, RelatedStock = new Stock("GOOGL", "GOOGLE") }; var assets = new Dictionary <string, Asset> { { ass1.RelatedStock.Symbol, ass1 } }; var updateMessage = new PortfolioUpdateMessage { Assets = assets, PortfolioID = 1, WriteAuthority = true }; var serializedMessage = MessageFactory.GetMessage(updateMessage.Encode(), false) as PortfolioUpdateMessage; Assert.AreEqual(updateMessage.PortfolioID, serializedMessage.PortfolioID); Assert.AreEqual(updateMessage.WriteAuthority, serializedMessage.WriteAuthority); Assert.AreEqual(updateMessage.Assets.Count, serializedMessage.Assets.Count); Assert.AreEqual(updateMessage.Assets.ContainsKey("GOOGL"), serializedMessage.Assets.ContainsKey("GOOGL")); Assert.AreEqual(updateMessage.Assets["GOOGL"].Quantity, serializedMessage.Assets["GOOGL"].Quantity); Assert.AreEqual(updateMessage.Assets["GOOGL"].RelatedStock.Name, serializedMessage.Assets["GOOGL"].RelatedStock.Name); }