예제 #1
0
 private static void set_task_status(Task task, Status status)
 {
     switch (status)
     {
         case Status.Assign:
             task.Assign();
             break;
         case Status.Remove:
             task.Remove();
             break;
         case Status.BeginWork:
             task.Assign();
             task.BeginWork();
             break;
         case Status.Complete:
             task.Assign();
             task.BeginWork();
             task.Complete();
             break;
         case Status.Accept:
             task.Assign();
             task.BeginWork();
             task.Complete();
             task.Accept(null);
             break;
     }
 }
예제 #2
0
        public void Resume_When_Publish()
        {
            Task task = new Task { Publisher = new User() };

            SystemTime.SetDateTime(new DateTime(2014, 11, 1));
            task.Publish();
            SystemTime.SetDateTime(new DateTime(2014, 11, 2));
            task.Remove();
            SystemTime.SetDateTime(new DateTime(2014, 11, 3));
            task.Resume();

            Assert.That(task.CurrentStatus, Is.EqualTo(Status.Publish));
        }
예제 #3
0
        public void Resume_When_Quit()
        {
            Task task = new Task { Publisher = new User() };
            task.Owner = new User();
            SystemTime.SetDateTime(new DateTime(2014, 11, 1));
            task.Publish();
            SystemTime.SetDateTime(new DateTime(2014, 11, 2));
            task.Assign();
            SystemTime.SetDateTime(new DateTime(2014, 11, 3));
            task.BeginWork();
            SystemTime.SetDateTime(new DateTime(2014, 11, 4));
            task.Quit();
            SystemTime.SetDateTime(new DateTime(2014, 11, 5));
            task.Remove();
            SystemTime.SetDateTime(new DateTime(2014, 11, 6));
            task.Resume();

            Assert.That(task.CurrentStatus, Is.EqualTo(Status.Quit));
        }
예제 #4
0
        public void Remove()
        {
            #region Publish Status

            Task task_when_publish = new Task { Publisher = new User() };
            task_when_publish.Publish();

            task_when_publish.Remove();
            Assert.That(task_when_publish.CurrentStatus, Is.EqualTo(Status.Remove));

            #endregion

            #region Assign Status

            Task task_when_assign = new Task { Publisher = new User() };
            task_when_assign.Owner = new User();
            task_when_assign.Publish();
            task_when_assign.Assign();

            task_when_assign.Remove();
            Assert.That(task_when_assign.CurrentStatus, Is.EqualTo(Status.Remove));

            #endregion

            #region Quit Status

            Task task_when_quit = new Task { Publisher = new User() };
            task_when_quit.Owner = new User();
            task_when_quit.Publish();
            task_when_quit.Assign();
            task_when_quit.BeginWork();
            task_when_quit.Quit();

            task_when_quit.Remove();
            Assert.That(task_when_quit.CurrentStatus, Is.EqualTo(Status.Remove));

            #endregion
        }