Ω(buildID).Should(Equal(42)) Ω(savedEvent).Should(BeAssignableToTypeOf(event.StartTask{})) Ω(savedEvent.(event.StartTask).Time).Should(BeNumerically("~", time.Now().Unix(), 1)) Ω(savedEvent.(event.StartTask).Origin).Should(Equal(event.Origin{ Type: event.OriginTypeTask, Name: "some-task", Location: location, })) }) }) Describe("Finished", func() { var exitStatus exec.ExitStatus JustBeforeEach(func() { executionDelegate.Finished(exitStatus) }) Context("with a successful result", func() { BeforeEach(func() { exitStatus = 0 }) It("saves a finish event", func() { Ω(fakeDB.SaveBuildEventCallCount()).Should(Equal(1)) buildID, savedEvent := fakeDB.SaveBuildEventArgsForCall(0) Ω(buildID).Should(Equal(42)) Ω(savedEvent).Should(BeAssignableToTypeOf(event.FinishTask{})) Ω(savedEvent.(event.FinishTask).ExitStatus).Should(Equal(0)) Ω(savedEvent.(event.FinishTask).Time).Should(BeNumerically("<=", time.Now().Unix(), 1))