本文整理汇总了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() {
示例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() {
示例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"))
})
})