delegate.Finish(logger, finishErr, succeeded, aborted) Ω(fakeDB.FinishBuildCallCount()).Should(Equal(1)) buildID, savedStatus := fakeDB.FinishBuildArgsForCall(0) Ω(buildID).Should(Equal(42)) Ω(savedStatus).Should(Equal(db.StatusFailed)) }) }) }) }) }) Describe("Failed", func() { JustBeforeEach(func() { outputDelegate.Failed(errors.New("nope")) }) It("does not save the build's input", func() { Ω(fakeDB.SaveBuildInputCallCount()).Should(BeZero()) }) It("saves an error event", func() { Ω(fakeDB.SaveBuildEventCallCount()).Should(Equal(1)) buildID, savedEvent := fakeDB.SaveBuildEventArgsForCall(0) Ω(buildID).Should(Equal(42)) Ω(savedEvent).Should(Equal(event.Error{ Origin: event.Origin{ Type: event.OriginTypePut, Name: "some-output-name",