public void ShouldBeAbleToCancelJobIfStarted() { var jobQueueItem = new JobQueueItem { JobId = Guid.NewGuid(), Name = "Name Test", CreatedBy = "Created By Test", Serialized = "Serialized Test", Type = "Type Test" }; WorkerNodeRepository.AddWorkerNode(_workerNode); JobManager.AddItemToJobQueue(jobQueueItem); JobManager.AssignJobToWorkerNodes(); var job = JobManager.GetJobByJobId(jobQueueItem.JobId); job.Satisfy(job1 => job1.Started != null); JobManager.CancelJobByJobId(jobQueueItem.JobId); job = JobManager.GetJobByJobId(jobQueueItem.JobId); job.Satisfy(job1 => job1.Result.StartsWith("cancel", StringComparison.InvariantCultureIgnoreCase)); JobRepository.GetAllJobs().Count.Should().Be(1); }