public void set_children_replaces_non_common_children() { YGNode root = YGNodeNew(); YGNode root_child0 = YGNodeNew(); YGNode root_child1 = YGNodeNew(); YGNode root_child2 = YGNodeNew(); YGNode root_child3 = YGNodeNew(); root_child0.setLineIndex(0); root_child1.setLineIndex(1); root_child2.setLineIndex(2); root_child3.setLineIndex(3); YGNodeSetChildren(root, new List <YGNode> { root_child0, root_child1 }); YGNodeSetChildren(root, new List <YGNode> { root_child2, root_child3 }); List <YGNode> children = getChildren(root); List <YGNode> expectedChildren = new List <YGNode> { root_child2, root_child3 }; Assert.AreEqual(children, expectedChildren); List <YGNode> owners = new List <YGNode> { YGNodeGetOwner(root_child0), YGNodeGetOwner(root_child1) }; List <YGNode> expectedOwners = new List <YGNode> { null, null }; Assert.AreEqual(owners, expectedOwners); }
public void set_children_keeps_and_reorders_common_children() { YGNode root = YGNodeNew(); YGNode root_child0 = YGNodeNew(); YGNode root_child1 = YGNodeNew(); YGNode root_child2 = YGNodeNew(); YGNode root_child3 = YGNodeNew(); root_child0.setLineIndex(0); root_child1.setLineIndex(1); root_child2.setLineIndex(2); root_child3.setLineIndex(3); YGNodeSetChildren(root, new YGNode[] { root_child0, root_child1, root_child2 }); YGNodeSetChildren(root, new YGNode[] { root_child2, root_child1, root_child3 }); List <YGNode> children = getChildren(root); List <YGNode> expectedChildren = new List <YGNode> { root_child2, root_child1, root_child3 }; Assert.AreEqual(children, expectedChildren); List <YGNode> owners = new List <YGNode> { YGNodeGetOwner(root_child0), YGNodeGetOwner(root_child1), YGNodeGetOwner(root_child2), YGNodeGetOwner(root_child3) }; var expectedOwners = new List <YGNode> { null, root, root, root }; Assert.AreEqual(owners, expectedOwners); }