public void ComplicatedMessageDeserializationTest() { var xml = @"<ComplicatedMessage> <Lookup> <Element> <Key>1</Key> <Value>A</Value> </Element> <Element> <Key>2</Key> <Value>B</Value> </Element> </Lookup> <Things> <Element>C</Element> <Element>D</Element> </Things> </ComplicatedMessage>"; var target = new SimpleXmlMessageSerializaion() { MessageTypes = new[] { typeof(ComplicatedMessage) } }; var result = target.Deserialize(xml) as ComplicatedMessage; Assert.AreEqual("A", result.Lookup[1]); Assert.AreEqual("B", result.Lookup[2]); Assert.AreEqual("C", result.Things[0]); Assert.AreEqual("D", result.Things[1]); }
public void DeserializeMessage() { var xml = @"<MessageA><Name>ABC</Name><Duration>1</Duration></MessageA>"; var target = new SimpleXmlMessageSerializaion() { MessageTypes = new[] { typeof(MessageA) } }; var result = target.Deserialize(xml); Assert.IsInstanceOf<MessageA>(result); Assert.AreEqual("ABC", (result as MessageA).Name); Assert.AreEqual(1, (result as MessageA).Duration); }
public void DeserializeMissingTypeMessage() { var xml = @"<MessageB></MessageB>"; var target = new SimpleXmlMessageSerializaion() { MessageTypes = new[] { typeof(MessageA) } }; var result = target.Deserialize(xml); Assert.IsInstanceOf<MissingMessage>(result); }