public void StatusWhileRunning() { using (var manager = new JobManager()) { var did_run = false; manager.Initialize(); var task = new BackgroundTask((token) => { did_run = true; Utility.Threading.BlockUntil(() => { return(token.IsCancellationRequested); }, 500); }); manager.RunBackgroundTask(task); var elapsed = Utility.Threading.BlockUntil(() => did_run, 500); Assert.True(elapsed < 500); Assert.True(did_run); var status = manager.GetStatus(); Assert.NotNull(status); Assert.NotEmpty(status.RunningTasks); Assert.Equal(1, status.RunningTasks.Count); Assert.True(status.RunningTasks.Any(_ => _.Id.Equals(task.Id))); manager.CancelJob(task.Id); Assert.False(task.DidComplete); Assert.False(task.DidError); Assert.False(task.DidTimeout); } }
public void CancelJob() { using (var manager = new JobManager()) { var did_run = false; manager.Initialize(); var task = new BackgroundTask((token) => { did_run = true; Utility.Threading.BlockUntil(() => { return(token.IsCancellationRequested); }, 500); }); manager.RunBackgroundTask(task); //wait for the task to be kicked off ... var elapsed = Utility.Threading.BlockUntil(() => did_run, 500); Assert.True(elapsed < 500); Assert.True(did_run); Assert.True(manager.JobIsRunning(task.Id)); manager.CancelJob(task.Id); Assert.False(task.DidComplete); Assert.False(task.DidError); Assert.False(task.DidTimeout); Assert.False(manager.JobIsRunning(task.Id)); } }
public void CancelJobTest([PexAssumeUnderTest] JobManager target, Tile tile) { target.CancelJob(tile); // TODO: add assertions to method JobManagerTest.CancelJobTest(JobManager, Tile) }