Ejemplo n.º 1
0
 public void should_ignore_a_node_that_implements_inode_but_not_the_same_type_as_the_member()
 {
     var instance = new NodeInsertion();
     var parent = CreateAccessModifierNode(value: new SimpleValue(instance, typeof(NodeInsertion).ToCachedType()));
     var child = new Node("JsonNode");
     parent.ShouldNotExecuteCallback<INode>((s, c) => s.Add(child, c));
     var jsonNode = parent.GetNode("JsonNode");
     jsonNode.ShouldNotBeNull();
     jsonNode.ShouldNotBeSameAs(child);
     jsonNode.NodeType.ShouldEqual(NodeType.Value);
     jsonNode.Value.ShouldBeNull();
     instance.JsonNode.ShouldBeNull();
 }
Ejemplo n.º 2
0
 public void should_insert_a_node_matching_on_configured_case_comparison(
     StringComparison comparison, string name)
 {
     var instance = new NodeInsertion();
     var parent = CreateAccessModifierNode(Options.Create(x => x.Deserialization(y => y.WithNameComparison(comparison))),
         new SimpleValue(instance, typeof(NodeInsertion).ToCachedType()));
     var child = new Node(name);
     parent.ShouldNotExecuteCallback<INode>((s, c) => s.Add(child, c));
     parent.GetNode(name).ShouldBeSameAs(child);
     instance.NodeInterface.ShouldBeSameAs(child);
 }
Ejemplo n.º 3
0
 public void should_insert_a_node_into_a_member_of_the_same_type()
 {
     var instance = new NodeInsertion();
     var parent = CreateAccessModifierNode(value: new SimpleValue(instance, typeof(NodeInsertion).ToCachedType())); 
     var child = new Node("Node");
     parent.ShouldNotExecuteCallback<INode>((s, c) => s.Add(child, c));
     parent.GetNode("Node").ShouldBeSameAs(child);
     instance.Node.ShouldBeSameAs(child);
 }
Ejemplo n.º 4
0
 public void should_insert_any_node_into_an_inode_member()
 {
     var instance = new NodeInsertion();
     var parent = CreateNode(value: new SimpleValue(instance, typeof(NodeInsertion).ToCachedType()));
     var child = new Node("NodeInterface");
     parent.ShouldNotExecuteCallback<INode>((s, c) => s.Add(child, c));
     parent.GetNode("NodeInterface").ShouldBeSameAs(child);
     instance.NodeInterface.ShouldBeSameAs(child);
 }