Example #1
0
			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"))
			})
		})
	})
})