Exemple #1
0
			It("returns the error", func() {
				err := scheduler.BuildLatestInputs(logger, job, resources)
				Ω(err).Should(Equal(disaster))
			})

			It("does not trigger a build", func() {
				scheduler.BuildLatestInputs(logger, job, resources)

				Ω(fakeEngine.CreateBuildCallCount()).Should(Equal(0))
			})
		})

		Context("when the job has no inputs", func() {
			BeforeEach(func() {
				job.InputConfigs = []atc.JobInputConfig{}
			})

			It("succeeds", func() {
				err := scheduler.BuildLatestInputs(logger, job, resources)
				Ω(err).ShouldNot(HaveOccurred())
			})

			It("does not try to fetch inputs from the database", func() {
				scheduler.BuildLatestInputs(logger, job, resources)

				Ω(fakePipelineDB.GetLatestInputVersionsCallCount()).Should(BeZero())
			})

			It("does not trigger a build", func() {
				scheduler.BuildLatestInputs(logger, job, resources)
Exemple #2
0
		Context("when a job has no config and no config path", func() {
			BeforeEach(func() {
				job.TaskConfig = nil
				job.TaskConfigPath = ""
				config.Jobs = append(config.Jobs, job)
			})

			It("returns no error", func() {
				Ω(validateErr).ShouldNot(HaveOccurred())
			})
		})

		Context("when a job's input has no resource", func() {
			BeforeEach(func() {
				job.InputConfigs = append(job.InputConfigs, atc.JobInputConfig{
					RawName: "foo",
				})
				config.Jobs = append(config.Jobs, job)
			})

			It("returns an error", func() {
				Ω(validateErr).Should(HaveOccurred())
				Ω(validateErr.Error()).Should(ContainSubstring(
					"jobs.some-other-job.inputs.foo has no resource",
				))
			})
		})

		Context("when a job's input has a bogus resource", func() {
			BeforeEach(func() {
				job.InputConfigs = append(job.InputConfigs, atc.JobInputConfig{