})
		})
	})

	Describe("Cancel Task", func() {
		getTaskStatus := func(state string) task_examiner.TaskInfo {
			return task_examiner.TaskInfo{
				TaskGuid: "task-guid-1",
				State:    state,
			}
		}

		It("cancel task when task not in COMPLETED state", func() {
			fakeTaskExaminer.TaskStatusReturns(getTaskStatus(receptor.TaskStatePending), nil)

			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"))