Ejemplo n.º 1
0
        public static void SerializeDeserializeObject_Equal_Success <T>(T obj1, XmlConvertOptions options) where T : new()
        {
            T      obj2 = default(T);
            T      obj3 = default(T);
            string xml  = null;

            // Serializing and deserializing strings
            if (options == XmlConvertOptions.None)
            {
                xml  = XmlConvert.SerializeObject(obj1);
                obj2 = XmlConvert.DeserializeObject <T>(xml);
                obj3 = (T)XmlConvert.DeserializeObject(obj1.GetType(), xml);
            }
            else
            {
                xml  = XmlConvert.SerializeObject(obj1, options);
                obj2 = XmlConvert.DeserializeObject <T>(xml, options);
                obj3 = (T)XmlConvert.DeserializeObject(obj1.GetType(), xml, options);
            }

            Assert.Equal(obj1, obj2);
            Assert.Equal(obj1, obj3);

            // Serializing and deserializing XElements
            XElement element = null;

            if (options == XmlConvertOptions.None)
            {
                element = XmlConvert.SerializeXElement(obj1);
                obj2    = XmlConvert.DeserializeXElement <T>(element);
                obj3    = (T)XmlConvert.DeserializeXElement(obj1.GetType(), element);
            }
            else
            {
                element = XmlConvert.SerializeXElement(obj1, options);
                obj2    = XmlConvert.DeserializeXElement <T>(element, options);
                obj3    = (T)XmlConvert.DeserializeXElement(obj1.GetType(), element, options);
            }

            Assert.Equal(obj1, obj2);
            Assert.Equal(obj1, obj3);
        }
Ejemplo n.º 2
0
 public static void Deserialize_XElement_Invalid()
 {
     Assert.Throws <ArgumentNullException>("type", () => XmlConvert.DeserializeXElement(null, new XElement("element"))); //Type is null
     Assert.Throws <ArgumentNullException>("element", () => XmlConvert.DeserializeXElement(typeof(string), null));       //Element is null
 }