public void TestEnumeration() { Child child = new Child() { Id = 1, Name = "child2", Parent = null }; child.Add(new Grandchild() { Id = 2, Name = "granchild" }); Child childCopy = child .Graph() .Add(c => c.Children) .Copy(); Assert.AreNotSame(child, childCopy); Assert.AreEqual(1, childCopy.Id); Assert.AreNotSame(child.Children, childCopy.Children); Assert.AreEqual(1, childCopy.Children.Count()); Assert.AreNotSame(child.Children.First(), childCopy.Children.First()); Assert.AreEqual(2, childCopy.Children.First().Id); Assert.AreEqual("granchild", childCopy.Children.First().Name); }
public void TestCopySingleObjectIgnoreReferenceType() { Parent parent = Parent.Create().SetId(1).SetName("parent1"); Child child = new Child() { Id = 2, Name = "child2", Parent = parent }; Child childCopy = child.Graph().Copy(); Assert.AreNotSame(child, childCopy); Assert.AreEqual(2, childCopy.Id); Assert.AreEqual("child2", childCopy.Name); Assert.AreEqual(null, childCopy.Parent); }
public void TestCopyNullReference() { Child child = new Child() { Id = 1, Name = "child2", Parent = null }; Child childCopy = child .Graph() .Add(c => c.Parent) .Copy(); Assert.IsNull(child.Parent, "parent is not null"); }
public void TestCopySingleObjectAddReferenceType() { Parent parent = Parent.Create().SetId(1).SetName("parent1"); Child child = new Child() { Id = 2, Name = "child2", Parent = parent }; Child childCopy = child .Graph() .Add(c => c.Parent) .Copy(); Assert.AreNotSame(child, childCopy); Assert.AreEqual(2, childCopy.Id); Assert.AreEqual("child2", childCopy.Name); Assert.IsNotNull(childCopy.Parent, "childCopy.Parent not copied"); Assert.AreNotSame(parent, childCopy.Parent); Assert.AreEqual(1, childCopy.Parent.Id); Assert.AreEqual("parent1", childCopy.Parent.Name); Assert.AreEqual(0, childCopy.Parent.ChildList.Count); }
public void TestEnumeration() { Child child = new Child() { Id=1, Name="child2", Parent=null }; child.Add(new Grandchild() { Id=2, Name="granchild" }); Child childCopy = child .Graph() .Add(c => c.Children) .Copy(); Assert.AreNotSame(child, childCopy); Assert.AreEqual(1, childCopy.Id); Assert.AreNotSame(child.Children, childCopy.Children); Assert.AreEqual(1, childCopy.Children.Count()); Assert.AreNotSame(child.Children.First(), childCopy.Children.First()); Assert.AreEqual(2, childCopy.Children.First().Id); Assert.AreEqual("granchild", childCopy.Children.First().Name); }
public void TestCopySingleObjectIgnoreReferenceType() { Parent parent = Parent.Create().SetId(1).SetName("parent1"); Child child = new Child() { Id=2, Name="child2", Parent=parent }; Child childCopy = child.Graph().Copy(); Assert.AreNotSame(child, childCopy); Assert.AreEqual(2, childCopy.Id); Assert.AreEqual("child2", childCopy.Name); Assert.AreEqual(null, childCopy.Parent); }
public void TestCopySingleObjectAddReferenceType() { Parent parent = Parent.Create().SetId(1).SetName("parent1"); Child child = new Child() { Id=2, Name="child2", Parent=parent }; Child childCopy = child .Graph() .Add(c => c.Parent) .Copy(); Assert.AreNotSame(child, childCopy); Assert.AreEqual(2, childCopy.Id); Assert.AreEqual("child2", childCopy.Name); Assert.IsNotNull(childCopy.Parent, "childCopy.Parent not copied"); Assert.AreNotSame(parent, childCopy.Parent); Assert.AreEqual(1, childCopy.Parent.Id); Assert.AreEqual("parent1", childCopy.Parent.Name); Assert.AreEqual(0, childCopy.Parent.ChildList.Count); }
public void TestCopyNullReference() { Child child = new Child() { Id=1, Name="child2", Parent=null }; Child childCopy = child .Graph() .Add(c => c.Parent) .Copy(); Assert.IsNull(child.Parent, "parent is not null"); }