Exemple #1
0
        public void should_not_return_cyclic_references_in_serialize_mode()
        {
            var @object = new CyclicRoot();

            @object.CyclicProperty    = @object;
            @object.NonCyclicProperty = new CyclicChild
            {
                NonCyclicProperty = "hai",
                CyclicProperty    = @object
            };

            var members = CreateAccessModifierNode(value: new SimpleValue(@object, typeof(CyclicRoot).ToCachedType()),
                                                   mode: Mode.Serialize).ToList();

            members.ShouldTotal(1);
            members.ShouldNotContainNode("CyclicProperty");

            var child = members.GetNode("NonCyclicProperty");

            child.ShouldNotBeNull();

            members = child.ToList();

            members.ShouldTotal(1);
            members.ShouldNotContainNode("CyclicProperty");

            child = members.GetNode("NonCyclicProperty");
            child.Value.ShouldEqual("hai");
        }
Exemple #2
0
        public void should_not_return_cyclic_references_in_serialize_mode(CyclicRoot root, string name)
        {
            var members = new ObjectNode(new Context(Options.Create(), Mode.Serialize, "xml"), null,
                                         new SimpleValue(root, typeof(CyclicRoot).ToCachedType()), null, null).ToList();

            var child = members.GetNode(name);

            child.ShouldTotal(1);
            child.ShouldNotContain(x => x.Name == "item1");
            child.ShouldContainNode("item2");
        }
        public void should_not_return_cyclic_references_in_serialize_mode(CyclicRoot root, string name)
        {
            var members = new ObjectNode(new Context(Options.Create(), Mode.Serialize, "xml"), null,
                                         new SimpleValue(root, typeof(CyclicRoot).ToCachedType()), null, null).ToList();

            var child    = members.GetNode(name);
            var children = child.ToList();

            children.ShouldTotal(1);
            children.Cast <NodeBase>().ShouldAllMatch(x => x.Value != root);
        }
Exemple #4
0
        public void should_not_return_cyclic_references_in_serialize_mode()
        {
            var @object = new CyclicRoot();
            @object.CyclicProperty = @object;
            @object.NonCyclicProperty = new CyclicChild
            {
                NonCyclicProperty = "hai", 
                CyclicProperty = @object
            };

            var members = CreateAccessModifierNode(value: new SimpleValue(@object, typeof(CyclicRoot).ToCachedType()), 
                mode: Mode.Serialize).ToList();

            members.ShouldTotal(1);
            members.ShouldNotContainNode("CyclicProperty");

            var child = members.GetNode("NonCyclicProperty");
            child.ShouldNotBeNull();

            members = child.ToList();

            members.ShouldTotal(1);
            members.ShouldNotContainNode("CyclicProperty");

            child = members.GetNode("NonCyclicProperty");
            child.Value.ShouldEqual("hai");
        }