当前位置: 首页>>代码示例>>Golang>>正文


Golang FakeActualLRPDB.RemoveActualLRPReturns方法代码示例

本文整理汇总了Golang中code/cloudfoundry/org/bbs/db/dbfakes.FakeActualLRPDB.RemoveActualLRPReturns方法的典型用法代码示例。如果您正苦于以下问题:Golang FakeActualLRPDB.RemoveActualLRPReturns方法的具体用法?Golang FakeActualLRPDB.RemoveActualLRPReturns怎么用?Golang FakeActualLRPDB.RemoveActualLRPReturns使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在code/cloudfoundry/org/bbs/db/dbfakes.FakeActualLRPDB的用法示例。


在下文中一共展示了FakeActualLRPDB.RemoveActualLRPReturns方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1:

				Expect(deletedLRPGuid).To(Equal(processGuid))
				Expect(deletedLRPIndex).To(Equal(index))
				Expect(deletedLRPInstanceKey).To(Equal(&actualLRPGroup.Instance.ActualLRPInstanceKey))
			})

			It("emits a removed event to the hub", func() {
				Eventually(actualHub.EmitCallCount).Should(Equal(1))
				event := actualHub.EmitArgsForCall(0)
				removedEvent, ok := event.(*models.ActualLRPRemovedEvent)
				Expect(ok).To(BeTrue())
				Expect(removedEvent.ActualLrpGroup).To(Equal(&models.ActualLRPGroup{Instance: &actualLRP}))
			})

			Context("when removing the actual lrp fails", func() {
				BeforeEach(func() {
					fakeActualLRPDB.RemoveActualLRPReturns(errors.New("boom!"))
				})

				It("retries removing up to RetireActualLRPRetryAttempts times", func() {
					Expect(response.Error.Message).To(Equal("boom!"))
					Expect(fakeActualLRPDB.RemoveActualLRPCallCount()).To(Equal(5))
					Expect(fakeActualLRPDB.ActualLRPGroupByProcessGuidAndIndexCallCount()).To(Equal(5))
				})

				It("does not emit a change event to the hub", func() {
					Consistently(actualHub.EmitCallCount).Should(Equal(0))
				})
			})
		})

		Context("when the LRP is crashed", func() {
开发者ID:cloudfoundry,项目名称:bbs,代码行数:31,代码来源:actual_lrp_lifecycle_handler_test.go

示例2:

				Expect(response.KeepContainer).To(BeFalse())
				Expect(response.Error).To(Equal(models.ErrActualLRPCannotBeRemoved))
			})

			It("emits only the removal of the evacuating to the hub", func() {
				Eventually(actualHub.EmitCallCount).Should(Equal(1))
				event := actualHub.EmitArgsForCall(0)
				removeEvent, ok := event.(*models.ActualLRPRemovedEvent)
				Expect(ok).To(BeTrue())
				Expect(removeEvent.ActualLrpGroup).To(Equal(&models.ActualLRPGroup{Evacuating: actual}))
			})
		})

		Context("when the DB returns an unrecoverable error", func() {
			BeforeEach(func() {
				fakeActualLRPDB.RemoveActualLRPReturns(models.NewUnrecoverableError(nil))
			})

			It("logs and writes to the exit channel", func() {
				Eventually(logger).Should(gbytes.Say("unrecoverable-error"))
				Eventually(exitCh).Should(Receive())
			})
		})

		Context("when removing the actual lrp fails", func() {
			BeforeEach(func() {
				fakeActualLRPDB.RemoveActualLRPReturns(errors.New("boom!"))
			})

			It("returns an error but does not keep the container", func() {
				response := models.EvacuationResponse{}
开发者ID:cloudfoundry,项目名称:bbs,代码行数:31,代码来源:evacuation_handler_test.go


注:本文中的code/cloudfoundry/org/bbs/db/dbfakes.FakeActualLRPDB.RemoveActualLRPReturns方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。