Esempio n. 1
0
 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);
 }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }