It("triggers a build of the job with the found inputs", func() { err := scheduler.BuildLatestInputs(logger, job, resources) Ω(err).ShouldNot(HaveOccurred()) Ω(fakePipelineDB.ScheduleBuildCallCount()).Should(Equal(1)) scheduledBuildID, jobConfig := fakePipelineDB.ScheduleBuildArgsForCall(0) Ω(scheduledBuildID).Should(Equal(128)) Ω(jobConfig).Should(Equal(job)) Ω(factory.CreateCallCount()).Should(Equal(1)) createJob, createResources, createInputs := factory.CreateArgsForCall(0) Ω(createJob).Should(Equal(job)) Ω(createResources).Should(Equal(resources)) Ω(createInputs).Should(Equal(newInputs)) Ω(fakePipelineDB.UseInputsForBuildCallCount()).Should(Equal(1)) usedBuildID, usedInputs := fakePipelineDB.UseInputsForBuildArgsForCall(0) Ω(usedBuildID).Should(Equal(128)) Ω(usedInputs).Should(Equal(newInputs)) Ω(fakeEngine.CreateBuildCallCount()).Should(Equal(1)) builtBuild, plan := fakeEngine.CreateBuildArgsForCall(0) Ω(builtBuild).Should(Equal(db.Build{ID: 128, Name: "42"})) Ω(plan).Should(Equal(createdPlan)) }) It("immediately resumes the build", func() { err := scheduler.BuildLatestInputs(logger, job, resources) Ω(err).ShouldNot(HaveOccurred()) Eventually(createdBuild.ResumeCallCount).Should(Equal(1))
It("triggers a build of the job with the found inputs", func() { err := scheduler.BuildLatestInputs(logger, someVersions, job, resources) Expect(err).NotTo(HaveOccurred()) Expect(fakePipelineDB.ScheduleBuildCallCount()).To(Equal(1)) scheduledBuildID, jobConfig := fakePipelineDB.ScheduleBuildArgsForCall(0) Expect(scheduledBuildID).To(Equal(128)) Expect(jobConfig).To(Equal(job)) Expect(factory.CreateCallCount()).To(Equal(1)) createJob, createResources, createInputs := factory.CreateArgsForCall(0) Expect(createJob).To(Equal(job)) Expect(createResources).To(Equal(resources)) Expect(createInputs).To(Equal(newInputs)) Expect(fakePipelineDB.UseInputsForBuildCallCount()).To(Equal(1)) usedBuildID, usedInputs := fakePipelineDB.UseInputsForBuildArgsForCall(0) Expect(usedBuildID).To(Equal(128)) Expect(usedInputs).To(Equal(newInputs)) Expect(fakeEngine.CreateBuildCallCount()).To(Equal(1)) _, builtBuild, plan := fakeEngine.CreateBuildArgsForCall(0) Expect(builtBuild).To(Equal(db.Build{ID: 128, Name: "42"})) Expect(plan).To(Equal(createdPlan)) }) It("immediately resumes the build", func() { err := scheduler.BuildLatestInputs(logger, someVersions, job, resources) Expect(err).NotTo(HaveOccurred()) Eventually(createdBuild.ResumeCallCount).Should(Equal(1))