private void ReassignTasks(Guid fromUserId, Guid toUserId)
        {
            var tasks = TaskEngine.GetByResponsible(fromUserId, TaskStatus.Open);

            foreach (var task in tasks.Where(r => r.Responsibles.Any()))
            {
                AddToTeam(task.Project, toUserId);
                task.Responsibles = task.Responsibles.Where(r => r != fromUserId).ToList();
                task.Responsibles.Add(toUserId);
                TaskEngine.SaveOrUpdate(task, null, false);
            }
        }
        public void ReassignTask()
        {
            var task = DataGenerator.GenerateTask(Project);

            task.Responsibles = new List <Guid> {
                From
            };
            task = TaskEngine.SaveOrUpdate(task, new List <int>(), false);

            ProjectsReassign.Reassign(From, To);

            task = TaskEngine.GetByID(task.ID);
            Assert.That(task.Responsibles, Has.No.Member(From));
            Assert.That(task.Responsibles, Has.Member(To));
        }
        public void ReassignSubtasks()
        {
            var task = DataGenerator.GenerateTask(Project);

            task.Responsibles = new List <Guid> {
                Admin
            };
            task = TaskEngine.SaveOrUpdate(task, new List <int>(), false);

            var subtask1 = DataGenerator.GenerateSubtask(task);

            subtask1.Responsible = From;
            subtask1             = SubtaskEngine.SaveOrUpdate(subtask1, task);

            var subtask2 = DataGenerator.GenerateSubtask(task);

            subtask2.Responsible = From;
            subtask2             = SubtaskEngine.SaveOrUpdate(subtask2, task);

            var subtask3 = DataGenerator.GenerateSubtask(task);

            subtask3.Responsible = From;
            subtask3             = SubtaskEngine.SaveOrUpdate(subtask3, task);
            SubtaskEngine.ChangeStatus(task, subtask3, TaskStatus.Closed);

            ProjectsReassign.Reassign(From, To);

            subtask1 = SubtaskEngine.GetById(subtask1.ID);
            Assert.That(subtask1.Responsible, Is.EqualTo(To));

            subtask2 = SubtaskEngine.GetById(subtask2.ID);
            Assert.That(subtask2.Responsible, Is.EqualTo(To));

            subtask3 = SubtaskEngine.GetById(subtask3.ID);
            Assert.That(subtask3.Responsible, Is.EqualTo(From));
        }
Exemple #4
0
 protected Task SaveOrUpdate(Task task)
 {
     return(TaskEngine.SaveOrUpdate(task, new List <int>(), false));
 }