void VerifyCustomSerialization_CircularReferenceOfRoot_DoesThrow() { var serializer = new ConfigurationContainer().EnableParameterizedContentWithPropertyAssignments() .Type <AdornedImage>() .Register().Serializer().Using(new AdornedImageSerializer()) .Create() .ForTesting(); var image = new AdornedImage(); Assert.Throws <CircularReferencesDetectedException>(() => serializer.Serialize(new DataHolder() { Image1 = image, Image2 = image })); }
void VerifyCustomSerialization_CircularReferenceInsideObjectGraph_DoesNotThrow() { var serializer = new ConfigurationContainer().EnableParameterizedContentWithPropertyAssignments() .Type <AdornedImage>() .Register().Serializer().Using(new AdornedImageSerializer()) .Create() .ForTesting(); var image = new AdornedImage(); serializer.Assert(new DataHolder() { Image1 = image }, @"<?xml version=""1.0"" encoding=""utf-8""?><Issue361Tests-DataHolder xmlns=""clr-namespace:ExtendedXmlSerializer.Tests.ReportedIssues;assembly=ExtendedXmlSerializer.Tests""><Name>name</Name><Image1 /><Index>13</Index></Issue361Tests-DataHolder>"); }