public void TestSimpleStructCollectionUpdate() { var nodeContainer = new NodeContainer(); var container = new StructWithCollectionContainer { Struct = new StructWithCollection { Strings = new List <string> { "aaa", "bbb" } } }; var containerNode = nodeContainer.GetOrCreateNode(container); var memberNode = containerNode[nameof(StructWithCollectionContainer.Struct)]; var targetNode = memberNode.Target; var structMemberNode = targetNode[nameof(StructWithCollection.Strings)]; Helper.TestNonCollectionObjectNode(containerNode, container, 1); Helper.TestMemberNode(containerNode, memberNode, container, container.Struct, nameof(StructWithCollectionContainer.Struct), true); Helper.TestNonNullObjectReference(memberNode.TargetReference, container.Struct, false); Helper.TestMemberNode(targetNode, structMemberNode, container.Struct, container.Struct.Strings, nameof(StructWithCollection.Strings), true); structMemberNode.Target.Update("ddd", new NodeIndex(1)); Assert.Equal("ddd", container.Struct.Strings[1]); Assert.Equal(targetNode, memberNode.Target); Assert.Equal(structMemberNode, targetNode[nameof(StructWithCollection.Strings)]); Helper.TestMemberNode(targetNode, structMemberNode, container.Struct, container.Struct.Strings, nameof(StructWithCollection.Strings), true); }
public void TestSimpleStructCollectionUpdate() { var nodeContainer = new NodeContainer(); var container = new StructWithCollectionContainer { Struct = new StructWithCollection { Strings = new List <string> { "aaa", "bbb" } } }; var containerNode = nodeContainer.GetOrCreateNode(container); Helper.TestNonCollectionObjectContentNode(containerNode, container, 1); var memberNode = containerNode.Children.First(); Helper.TestMemberContentNode(containerNode, memberNode, container, container.Struct, nameof(StructWithCollectionContainer.Struct), false); Helper.TestStructContentNode(memberNode, container.Struct, 1); var structMember1Node = memberNode.Children.First(); Helper.TestMemberContentNode(memberNode, structMember1Node, container.Struct, container.Struct.Strings, nameof(StructWithCollection.Strings), false); structMember1Node.Content.Update("ddd", new Index(1)); Assert.AreEqual("ddd", container.Struct.Strings[1]); Helper.TestMemberContentNode(memberNode, structMember1Node, container.Struct, container.Struct.Strings, nameof(StructWithCollection.Strings), false); Helper.TestMemberContentNode(memberNode, memberNode.Children.First(), container.Struct, container.Struct.Strings, nameof(StructWithCollection.Strings), false); }
public void TestSimpleStructCollectionUpdate() { var nodeContainer = new NodeContainer(); var container = new StructWithCollectionContainer { Struct = new StructWithCollection { Strings = new List<string> { "aaa", "bbb" } } }; var containerNode = nodeContainer.GetOrCreateNode(container); Helper.TestNonCollectionObjectContentNode(containerNode, container, 1); var memberNode = containerNode.Children.First(); Helper.TestMemberContentNode(containerNode, memberNode, container, container.Struct, nameof(StructWithCollectionContainer.Struct), false); Helper.TestStructContentNode(memberNode, container.Struct, 1); var structMember1Node = memberNode.Children.First(); Helper.TestMemberContentNode(memberNode, structMember1Node, container.Struct, container.Struct.Strings, nameof(StructWithCollection.Strings), false); structMember1Node.Content.Update("ddd", new Index(1)); Assert.AreEqual("ddd", container.Struct.Strings[1]); Helper.TestMemberContentNode(memberNode, structMember1Node, container.Struct, container.Struct.Strings, nameof(StructWithCollection.Strings), false); Helper.TestMemberContentNode(memberNode, memberNode.Children.First(), container.Struct, container.Struct.Strings, nameof(StructWithCollection.Strings), false); }