Example #1
0
						Eventually(process.Wait()).Should(Receive(Equal(disaster)))
					})

					It("invokes the delegate's Failed callback", func() {
						Eventually(process.Wait()).Should(Receive(Equal(disaster)))
						Ω(taskDelegate.FailedCallCount()).Should(Equal(1))
						Ω(taskDelegate.FailedArgsForCall(0)).Should(Equal(disaster))
					})
				})
			})

			Context("when the process id cannot be found", func() {
				disaster := errors.New("nope")

				BeforeEach(func() {
					fakeContainer.PropertyReturns("", disaster)
				})

				It("exits with the failure", func() {
					Eventually(process.Wait()).Should(Receive(Equal(disaster)))
				})

				It("invokes the delegate's Failed callback", func() {
					Eventually(process.Wait()).Should(Receive(Equal(disaster)))
					Eventually(taskDelegate.FailedCallCount()).Should(Equal(1))
					Ω(taskDelegate.FailedArgsForCall(0)).Should(Equal(disaster))
				})
			})
		})
	})
})