Ejemplo n.º 1
0
        public void TestLoad()
        {
            List <DummyIConfigNode> list = new List <DummyIConfigNode>();
            object value = list;

            ConfigNode node = new TestConfigNode
            {
                new TestConfigNode("SOME_NODE")
                {
                    { "value", "thing1" },
                },
                new TestConfigNode("SOME_NODE")
                {
                    { "value", "thing2" },
                },
                new TestConfigNode("SOME_OTHER_NODE")
                {
                    { "value", "thing2" },
                },
            };

            Assert.True(mapper.Load(ref value, node, Exemplars.LoadContext));
            Assert.Same(list, value);
            Assert.Equal(2, list.Count);

            AssertDummyIConfigNode(list[0], "thing1");
            AssertDummyIConfigNode(list[1], "thing2");
        }
Ejemplo n.º 2
0
        public void TestLoad__IContextualNode()
        {
            NodeListMapper mapper2           = new NodeListMapper("SOME_NODE", typeof(DummyIContextualNode));
            List <DummyIContextualNode> list = new List <DummyIContextualNode>();
            object value = list;

            ConfigNode node = new TestConfigNode
            {
                new TestConfigNode("SOME_NODE")
                {
                    { "value", "thing1" },
                },
                new TestConfigNode("SOME_NODE")
                {
                    { "value", "thing2" },
                },
                new TestConfigNode("SOME_OTHER_NODE")
                {
                    { "value", "thing2" },
                },
            };

            OperationContext context = Exemplars.LoadContext;

            Assert.True(mapper2.Load(ref value, node, context));
            Assert.Same(list, value);
            Assert.Equal(2, list.Count);

            Assert.Equal("thing1", list[0].value);
            Assert.Equal("thing2", list[1].value);

            Assert.Same(context, list[0].lastContext);
            Assert.Same(context, list[1].lastContext);
        }
Ejemplo n.º 3
0
        public void TestLoad()
        {
            List <object> list  = new List <object>();
            object        value = list;

            ConfigNode node = new TestConfigNode
            {
                new TestConfigNode("SOME_NODE")
                {
                    { "value", "thing1" },
                },
                new TestConfigNode("SOME_NODE")
                {
                    { "value", "thing2" },
                },
                new TestConfigNode("SOME_OTHER_NODE")
                {
                    { "value", "thing2" },
                },
            };

            OperationContext context = Exemplars.LoadPrefabContext;

            object obj1 = new object();
            object obj2 = new object();

            object dummyNull = null;

            wrapper.When(x => x.Load(ref dummyNull, node.nodes[0], context)).Do(x => x[0] = obj1);
            wrapper.When(x => x.Load(ref dummyNull, node.nodes[1], context)).Do(x => x[0] = obj2);

            Assert.True(mapper.Load(ref value, node, context));
            Assert.Same(list, value);
            Assert.Equal(2, list.Count);

            Assert.Same(obj1, list[0]);
            Assert.Same(obj2, list[1]);
        }