} } successfulRunResult := executor.ContainerRunResult{ Failed: false, } itCompletesTheSuccessfulTaskAndDeletesTheContainer := func(logger *lagertest.TestLogger) { Context("when fetching the result succeeds", func() { BeforeEach(func() { containerDelegate.FetchContainerResultFileReturns("some-result", nil) containerDelegate.DeleteContainerStub = func(logger lager.Logger, guid string) bool { task, err := bbsClient.TaskByGuid(taskGuid) Expect(err).NotTo(HaveOccurred()) Expect(task.State).To(Equal(models.Task_Completed)) return true } }) It("completes the task with the result", func() { task, err := bbsClient.TaskByGuid(taskGuid) Expect(err).NotTo(HaveOccurred()) Expect(task.Failed).To(BeFalse()) _, guid, filename := containerDelegate.FetchContainerResultFileArgsForCall(0) Expect(guid).To(Equal(taskGuid)) Expect(filename).To(Equal("some-result-filename")) Expect(task.Result).To(Equal("some-result"))