예제 #1
0
        public void TestLoad__IContextualNode()
        {
            NodeScalarMapper     mapper2 = new NodeScalarMapper("SOME_NODE", typeof(DummyIContextualNode));
            DummyIContextualNode dummy   = new DummyIContextualNode();
            object dummyRef = dummy;

            ConfigNode node = new TestConfigNode
            {
                new TestConfigNode("SOME_NODE")
                {
                    { "value", "something" },
                },
                new TestConfigNode("SOME_OTHER_NODE")
                {
                    { "value", "something else" },
                },
            };

            OperationContext context = Exemplars.LoadContext;

            Assert.True(mapper2.Load(ref dummyRef, node, context));
            Assert.Same(dummyRef, dummy);
            Assert.Equal("something", dummy.value);
            Assert.Same(context, dummy.lastContext);
        }
예제 #2
0
        public void TestNew__IContextualNode()
        {
            NodeScalarMapper mapper2 = new NodeScalarMapper("blah", typeof(DummyIContextualNode));

            Assert.Equal("blah", mapper2.name);
            Assert.Same(typeof(DummyIContextualNode), mapper2.fieldType);
        }
예제 #3
0
        public void TestBuildMapper__ConfigNode()
        {
            NodeScalarMapperBuilder builder = new NodeScalarMapperBuilder("foo", typeof(ConfigNode));

            NodeScalarMapper mapper = Assert.IsType <NodeScalarMapper>(builder.BuildMapper());

            Assert.Equal("foo", mapper.name);
            Assert.IsType <NodeObjectWrapperConfigNode>(mapper.nodeObjectWrapper);
        }
        public void TestBuildMapper__IContextualNode()
        {
            NodeScalarMapperBuilder builder = new NodeScalarMapperBuilder("foo", typeof(DummyIContextualNode));

            NodeScalarMapper mapper = Assert.IsType <NodeScalarMapper>(builder.BuildMapper());

            Assert.Equal("foo", mapper.name);
            Assert.Same(typeof(DummyIContextualNode), mapper.fieldType);
        }
예제 #5
0
        public void TestSave__IContextualNode()
        {
            NodeScalarMapper     mapper2 = new NodeScalarMapper("SOME_NODE", typeof(DummyIContextualNode));
            ConfigNode           node    = new ConfigNode();
            DummyIContextualNode dummy   = new DummyIContextualNode {
                value = "foo"
            };
            OperationContext context = Exemplars.SaveContext;

            Assert.True(mapper2.Save(dummy, node, context));

            ConfigNode innerNode = node.GetNode("SOME_NODE");

            Assert.NotNull(innerNode);
            Assert.Equal("foo", innerNode.GetValue("value"));

            Assert.Equal("foo", dummy.value);
            Assert.Same(context, dummy.lastContext);
        }
예제 #6
0
 public NodeScalarMapperTest()
 {
     wrapper = Substitute.For <INodeObjectWrapper>();
     mapper  = new NodeScalarMapper("SOME_NODE", wrapper);
 }