public void ChangeParent()
        {
            Task parent_1 = new Task();
            Task parent_2 = new Task();
            Task child = new Task();

            parent_1.AddChild(child);
            Assert.That(child.Parent, Is.EqualTo(parent_1));
            Assert.That(parent_1.Children.Count, Is.EqualTo(1));
            Assert.That(parent_1.Children.Contains(child));

            child.ChangeParent(parent_2);
            Assert.That(child.Parent, Is.EqualTo(parent_2));
            Assert.That(parent_1.Children.IsNullOrEmpty(), Is.True);
            Assert.That(parent_2.Children.Count, Is.EqualTo(1));
            Assert.That(parent_2.Children.Contains(child));
        }
Exemplo n.º 2
0
 private void setParent(Task task, LiteItemModel parent)
 {
     if (parent.Id.HasValue)
     {
         Task newParent = session.Load<Task>(parent.Id);
         task.ChangeParent(newParent);
     }
     else
     {
         task.RemoveParent();
     }
 }
        public void ChangeParent_When_New_Parent_Is_Old_Parent()
        {
            Task parent = new Task();
            Task child_1 = new Task();
            Task child_2 = new Task();
            parent.AddChild(child_1);
            parent.AddChild(child_2);

            child_1.ChangeParent(parent);
            Assert.That(child_1.Parent, Is.EqualTo(parent));
            Assert.That(child_1.Sequence, Is.EqualTo(1));
            Assert.That(child_2.Parent, Is.EqualTo(parent));
            Assert.That(child_2.Sequence, Is.EqualTo(2));
            Assert.That(parent.Children.Count, Is.EqualTo(2));
            Assert.That(parent.Children.Contains(child_1));
            Assert.That(parent.Children.Contains(child_1));
        }
        public void ChangeParent_When_Child_Has_No_Parent()
        {
            Task new_parent = new Task();
            Task child = new Task();

            child.ChangeParent(new_parent);
            Assert.That(child.Parent, Is.EqualTo(new_parent));
            Assert.That(new_parent.Children.Count, Is.EqualTo(1));
            Assert.That(new_parent.Children.Contains(child));
        }