Exemplo n.º 1
0
							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",