public void CircularReferenceTest() { var s = new XSerializer(typeof(SimpleObject1)); var obj = new SimpleObject1 { Title = "Simple Object Test" }; obj.CompositeArray.Add(obj); try { s.GetSerializedDocument(obj); } catch (Exception ex) { Trace.WriteLine(ex); throw; } }
public void SerializationTest() { var s = new XSerializer(typeof(SimpleObject1)); var obj = new SimpleObject1 {Title = "Simple Object Test", ExtraContent = "Extra content here."}; obj.CompositeArray.Add("Hello, world!"); obj.CompositeArray.Add(12345.67e89); obj.CompositeArray.Add(new SimpleObject1 { Title = "Child Object" }); var doc = s.GetSerializedDocument(obj); Trace.WriteLine(doc); var obj1 = (SimpleObject1)s.Deserialize(doc, null); Assert.AreEqual(obj.Title, obj1.Title); Assert.AreEqual(obj.ExtraContent, obj1.ExtraContent); Assert.AreEqual(obj.Time, obj1.Time); Assert.AreEqual(obj.CompositeArray.Count, obj1.CompositeArray.Count); for (var i = 0; i < obj.CompositeArray.Count; i++) { if (!(obj.CompositeArray[i] is SimpleObject1)) Assert.AreEqual(obj.CompositeArray[i], obj1.CompositeArray[i]); } }