Exemplo n.º 1
0
        public void TestSelfReference()
        {
            var s = new XmSerializerModel();

            s.AddType(typeof(ReferenceTestClass));

            var dto = new ReferenceTestClass();

            dto.RefernceField  = dto;
            dto.RefernceField2 = dto;
            var result = BasicTest.TestSerialization(dto, s);

            Assert.AreSame(result, result.RefernceField);
        }
Exemplo n.º 2
0
        public void TestCircularReference()
        {
            var s = new XmSerializerModel();

            s.AddType(typeof(ReferenceTestClass));

            var dto  = new ReferenceTestClass();
            var dto2 = new ReferenceTestClass();
            var dto3 = new ReferenceTestClass();

            dto.RefernceField  = dto2;
            dto2.RefernceField = dto3;
            dto3.RefernceField = dto;

            var result = BasicTest.TestSerialization(dto, s);

            Assert.AreSame(result, ((ReferenceTestClass)((ReferenceTestClass)result.RefernceField).RefernceField).RefernceField);
        }
Exemplo n.º 3
0
        public void TestCustomReference()
        {
            var s = new XmSerializerModel();

            s.AddType(typeof(ReferenceTestClass));

            var d = new Dictionary <int, string> {
                { 1, "s" }
            };
            var dto = new ReferenceTestClass()
            {
                RefernceField  = d,
                RefernceField2 = d
            };
            var result = BasicTest.TestSerialization(dto, s);

            Assert.AreSame(result.RefernceField, result.RefernceField2);
        }
Exemplo n.º 4
0
        public void TestReference()
        {
            var s = new XmSerializerModel();

            s.AddType(typeof(ReferenceTestClass));
            s.AddType(typeof(ReferencedClass));

            var dto = new ReferenceTestClass {
                RefernceField = new ReferencedClass {
                    FooBar = "foobar"
                }
            };

            dto.RefernceField2 = dto.RefernceField;
            var result = BasicTest.TestSerialization(dto, s);

            Assert.AreEqual(((ReferencedClass)result.RefernceField).FooBar, ((ReferencedClass)result.RefernceField2).FooBar);
            Assert.AreSame(result.RefernceField, result.RefernceField2);
        }