當前位置: 首頁>>代碼示例>>Golang>>正文


Golang FakeStep.ReleaseReturns方法代碼示例

本文整理匯總了Golang中github.com/concourse/atc/exec/fakes.FakeStep.ReleaseReturns方法的典型用法代碼示例。如果您正苦於以下問題:Golang FakeStep.ReleaseReturns方法的具體用法?Golang FakeStep.ReleaseReturns怎麽用?Golang FakeStep.ReleaseReturns使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在github.com/concourse/atc/exec/fakes.FakeStep的用法示例。


在下文中一共展示了FakeStep.ReleaseReturns方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1:

	Describe("releasing", func() {
		It("releases all sources", func() {
			err := step.Release()
			Ω(err).ShouldNot(HaveOccurred())

			Ω(outStepA.ReleaseCallCount()).Should(Equal(1))
			Ω(outStepB.ReleaseCallCount()).Should(Equal(1))
		})

		Context("when the sources fail to release", func() {
			disasterA := errors.New("nope A")
			disasterB := errors.New("nope B")

			BeforeEach(func() {
				outStepA.ReleaseReturns(disasterA)
				outStepB.ReleaseReturns(disasterB)
			})

			It("returns an error describing the failures", func() {
				err := step.Release()
				Ω(err).Should(HaveOccurred())

				Ω(err.Error()).Should(ContainSubstring("nope A"))
				Ω(err.Error()).Should(ContainSubstring("nope B"))
			})
		})
	})

	Describe("getting a result", func() {
		Context("when the result type is bad", func() {
開發者ID:savaki,項目名稱:atc,代碼行數:30,代碼來源:aggregate_test.go

示例2:

			Ω(repo).Should(Equal(repo))
		})

		Describe("releasing", func() {
			It("releases the output source", func() {
				err := step.Release()
				Ω(err).ShouldNot(HaveOccurred())

				Ω(outStep.ReleaseCallCount()).Should(Equal(1))
			})

			Context("when releasing the output source fails", func() {
				disaster := errors.New("nope")

				BeforeEach(func() {
					outStep.ReleaseReturns(disaster)
				})

				It("returns the error", func() {
					Ω(step.Release()).Should(Equal(disaster))
				})
			})
		})
	}

	Context("with no conditions", func() {
		BeforeEach(func() {
			conditional.Conditions = atc.Conditions{}
		})

		Context("when the input source is successful", func() {
開發者ID:savaki,項目名稱:atc,代碼行數:31,代碼來源:conditional_test.go

示例3:

								err := step.Release()
								Ω(err).ShouldNot(HaveOccurred())

								Ω(outStep.ReleaseCallCount()).Should(Equal(2))
								Ω(successStep.ReleaseCallCount()).Should(Equal(1))
								Ω(nextStep.ReleaseCallCount()).Should(Equal(1))
							})

							Context("when releasing the sources fails", func() {
								disasterA := errors.New("nope A")
								disasterB := errors.New("nope B")
								disasterC := errors.New("nope C")

								BeforeEach(func() {
									outStep.ReleaseReturns(disasterA)
									successStep.ReleaseReturns(disasterB)
									nextStep.ReleaseReturns(disasterC)
								})

								It("returns an aggregate error", func() {
									Eventually(process.Wait()).Should(Receive(BeNil()))

									err := step.Release()
									Ω(err).Should(HaveOccurred())

									Ω(err.Error()).Should(ContainSubstring("first step: nope A"))
									Ω(err.Error()).Should(ContainSubstring("success step: nope B"))
									Ω(err.Error()).Should(ContainSubstring("next step: nope C"))
								})
							})
開發者ID:savaki,項目名稱:atc,代碼行數:30,代碼來源:hooked_compose_step_test.go


注:本文中的github.com/concourse/atc/exec/fakes.FakeStep.ReleaseReturns方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。