public void ShouldGetOverallProgressWhenJobContainsMultipleTask() { var task1 = new TaskMock(); var task2 = new TaskMock(); var taskCollection = new TaskCollectionMock(); taskCollection.Add(task1); taskCollection.Add(task2); var job = new JobMock(); job.Tasks = taskCollection; task1.Progress = 0; task2.Progress = 0; Assert.AreEqual(0, job.GetOverallProgress()); task1.Progress = 25; task2.Progress = 0; Assert.AreEqual(12.5, job.GetOverallProgress()); task1.Progress = 25; task2.Progress = 50; Assert.AreEqual(37.5, job.GetOverallProgress()); task1.Progress = 50; task2.Progress = 50; Assert.AreEqual(50, job.GetOverallProgress()); task1.Progress = 75; task2.Progress = 25; Assert.AreEqual(50, job.GetOverallProgress()); task1.Progress = 75; task2.Progress = 50; Assert.AreEqual(62.5, job.GetOverallProgress()); task1.Progress = 50; task2.Progress = 100; Assert.AreEqual(75, job.GetOverallProgress()); task1.Progress = 100; task2.Progress = 75; Assert.AreEqual(87.5, job.GetOverallProgress()); task1.Progress = 100; task2.Progress = 100; Assert.AreEqual(100, job.GetOverallProgress()); }
public void ShouldGetOverallProgressWhenJobContainsSingleTask() { var task = new TaskMock(); var taskCollection = new TaskCollectionMock(); taskCollection.Add(task); var job = new JobMock(); job.Tasks = taskCollection; task.Progress = 0; Assert.AreEqual(0, job.GetOverallProgress()); task.Progress = 25; Assert.AreEqual(25, job.GetOverallProgress()); task.Progress = 75; Assert.AreEqual(75, job.GetOverallProgress()); task.Progress = 100; Assert.AreEqual(100, job.GetOverallProgress()); }