Context("without error", func() { BeforeEach(func() { finishErr = nil }) Context("when it was told it failed", func() { BeforeEach(func() { succeeded = false aborted = false }) It("finishes with status 'failed'", func() { 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)) }) }) Context("when it was told it succeeded", func() { BeforeEach(func() { succeeded = true }) It("finishes with status 'succeeded'", func() { delegate.Finish(logger, finishErr, succeeded, aborted)
Context("without error", func() { BeforeEach(func() { finishErr = nil }) Context("when it was told it failed", func() { BeforeEach(func() { succeeded = false aborted = false }) It("finishes with status 'failed'", func() { delegate.Finish(logger, finishErr, succeeded, aborted) Expect(fakeDB.FinishBuildCallCount()).To(Equal(1)) buildID, savedStatus := fakeDB.FinishBuildArgsForCall(0) Expect(buildID).To(Equal(42)) Expect(savedStatus).To(Equal(db.StatusFailed)) }) }) Context("when it was told it succeeded", func() { BeforeEach(func() { succeeded = true }) It("finishes with status 'succeeded'", func() { delegate.Finish(logger, finishErr, succeeded, aborted)