public void Test() { var orig = new SomeWrapper {Value = new SubType { Foo = 123, Bar = "abc"}}; var clone = Serializer.DeepClone(orig); Assert.AreEqual(123, orig.Value.Foo); Assert.AreEqual("abc", ((SubType) clone.Value).Bar); }
public void Test() { var orig = new SomeWrapper { Value = new SubType { Foo = 123, Bar = "abc" } }; var clone = Serializer.DeepClone(orig); Assert.Equal(123, orig.Value.Foo); Assert.Equal("abc", ((SubType)clone.Value).Bar); }
public void Test() { var orig = new SomeWrapper { Value = new SubType { Foo = 123, Bar = "abc" } }; var tm = TypeModel.Create(); tm.SkipCompiledVsNotCheck = true; tm.AutoCompile = false; Trace.WriteLine("1"); var clone = tm.DeepClone(orig); Assert.AreEqual(123, orig.Value.Foo); Assert.AreEqual("abc", ((SubType)clone.Value).Bar); Trace.WriteLine("2"); tm.CompileInPlace(); Trace.WriteLine("3"); clone = tm.DeepClone(orig); Trace.WriteLine("4"); Assert.AreEqual(123, orig.Value.Foo); Assert.AreEqual("abc", ((SubType)clone.Value).Bar); }