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


Golang TestRunner.TriggerExit方法代碼示例

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


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

示例1:

			entrances := client.EntranceListener()
			exits := client.ExitListener()

			childRunner2.TriggerReady()
			Eventually(entrances).Should(Receive(&entrance2))
			Ω(entrance2.Member).Should(Equal(member2))

			childRunner1.TriggerReady()
			Eventually(entrances).Should(Receive(&entrance1))
			Ω(entrance1.Member).Should(Equal(member1))

			childRunner3.TriggerReady()
			Eventually(entrances).Should(Receive(&entrance3))
			Ω(entrance3.Member).Should(Equal(member3))

			childRunner2.TriggerExit(nil)
			Eventually(exits).Should(Receive(&exit2))
			Ω(exit2.Member).Should(Equal(member2))

			childRunner1.TriggerExit(nil)
			Eventually(exits).Should(Receive(&exit1))
			Ω(exit1.Member).Should(Equal(member1))

			childRunner3.TriggerExit(nil)
			Eventually(exits).Should(Receive(&exit3))
			Ω(exit3.Member).Should(Equal(member3))
		})

		It("announces the most recent events that have already occured, up to the buffer size", func() {
			entrance2, entrance3 := grouper.EntranceEvent{}, grouper.EntranceEvent{}
			exit2, exit3 := grouper.ExitEvent{}, grouper.ExitEvent{}
開發者ID:nagyistoce,項目名稱:lattice-app,代碼行數:31,代碼來源:dynamic_group_test.go

示例2:

					case runner := <-loadedRunners:
						return runner
					default:
						return nil
					}
				}
				loadedRunner = fake_runner.NewTestRunner()
				loadedRunners <- loadedRunner
			})

			AfterEach(func() {
				loadedRunner.EnsureExit()
			})

			It("executes the returned Runner", func() {
				testRunner.TriggerExit(nil)
				loadedRunner.TriggerExit(nil)
			})
		})

		Context("when load returns nil", func() {
			BeforeEach(func() {
				restarter.Load = func(runner ifrit.Runner, err error) ifrit.Runner {
					return nil
				}
			})

			It("exits after running the initial Runner", func() {
				testRunner.TriggerExit(nil)
				Eventually(process.Wait()).Should(Receive(BeNil()))
			})
開發者ID:nagyistoce,項目名稱:lattice-app,代碼行數:31,代碼來源:restart_test.go

示例3:

			})

			Describe("when it receives a signal", func() {
				BeforeEach(func() {
					groupProcess.Signal(syscall.SIGUSR2)
				})

				It("sends the signal to all child runners", func() {
					Eventually(signal1).Should(Receive(Equal(syscall.SIGUSR2)))
					Eventually(signal2).Should(Receive(Equal(syscall.SIGUSR2)))
					Eventually(signal3).Should(Receive(Equal(syscall.SIGUSR2)))
				})

				It("doesn't send any more signals to remaining child processes", func() {
					Eventually(signal3).Should(Receive(Equal(syscall.SIGUSR2)))
					childRunner2.TriggerExit(nil)
					Consistently(signal3).ShouldNot(Receive())
				})
			})

			Describe("when a process exits cleanly", func() {
				BeforeEach(func() {
					childRunner1.TriggerExit(nil)
				})

				It("sends an interrupt signal to the other processes", func() {
					Eventually(signal2).Should(Receive(Equal(os.Interrupt)))
					Eventually(signal3).Should(Receive(Equal(os.Interrupt)))
				})

				It("does not exit", func() {
開發者ID:nagyistoce,項目名稱:lattice-app,代碼行數:31,代碼來源:parallel_test.go


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