public static DirectSelfReferringObject GetSampleInstanceWithSelfCycle() { var instance = new DirectSelfReferringObject(); instance.Data = 1; instance.Next = instance; return instance; }
public static DirectSelfReferringObject GetSampleInstanceWithSelfCycle() { var instance = new DirectSelfReferringObject(); instance.Data = 1; instance.Next = instance; return(instance); }
public static DirectSelfReferringObject GetSampleInstance() { var first = new DirectSelfReferringObject {Data = 1}; var second = new DirectSelfReferringObject {Data = 2}; first.Next = second; // this must be serialized fine, because there's no loop, although the type is a self referring type. // However by setting, "second.Next = first;" It should not be serialized any more because it will cause a loop return first; }
public void DeserializeDirectSelfReferringObjectWithSelfCycleWhenThrowUponSerializingCyclingReferencesIsNotSet() { var inst = DirectSelfReferringObject.GetSampleInstanceWithSelfCycle(); var ser = new YAXSerializer(typeof(DirectSelfReferringObject), YAXExceptionHandlingPolicies.DoNotThrow, YAXExceptionTypes.Error); string input = ser.Serialize(inst); var deserializedInstance = (DirectSelfReferringObject)ser.Deserialize(input); Assert.That(deserializedInstance, Is.Not.Null); Assert.IsNull(deserializedInstance.Next); }
public static DirectSelfReferringObject GetSampleInstance() { var first = new DirectSelfReferringObject { Data = 1 }; var second = new DirectSelfReferringObject { Data = 2 }; first.Next = second; // this must be serialized fine, because there's no loop, although the type is a self referring type. // However by setting, "second.Next = first;" It should not be serialized any more because it will cause a loop return(first); }
public void SelfReferringTypeIsNotNecessarilyASelfReferringObject() { object obj = DirectSelfReferringObject.GetSampleInstance(); PerformTest(obj); }