err := taskRunner.CancelTask("task-guid-1") Expect(err).ToNot(HaveOccurred()) }) It("return error when task in COMPLETED state", func() { fakeTaskExaminer.TaskStatusReturns(getTaskStatus(receptor.TaskStateCompleted), nil) err := taskRunner.CancelTask("task-guid-1") Expect(err).To(MatchError("Unable to cancel COMPLETED task")) }) It("returns error when task not found", func() { fakeTaskExaminer.TaskStatusReturns(task_examiner.TaskInfo{}, errors.New("Task not found")) err := taskRunner.CancelTask("task-guid-1") Expect(err).To(MatchError("Task not found")) }) Context("when the receptor returns errors", func() { It("bubbles up the error", func() { fakeTaskExaminer.TaskStatusReturns(getTaskStatus(receptor.TaskStatePending), nil) fakeReceptorClient.CancelTaskReturns(errors.New("task in unknown state")) err := taskRunner.CancelTask("task-guid-1") Expect(err).To(MatchError("task in unknown state")) }) }) }) })