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


Golang FakeConn.SendRequestStub方法代碼示例

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


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

示例1:

			var timesCh chan []time.Time
			var done chan struct{}

			BeforeEach(func() {
				keepAliveDuration = 100 * time.Millisecond

				times = []time.Time{}
				timesCh = make(chan []time.Time, 1)
				done = make(chan struct{}, 1)

				fakeConnection.SendRequestStub = func(reqName string, wantReply bool, message []byte) (bool, []byte, error) {
					Expect(reqName).To(Equal("[email protected]"))
					Expect(wantReply).To(BeTrue())
					Expect(message).To(BeNil())

					times = append(times, time.Now())
					if len(times) == 3 {
						timesCh <- times
						close(done)
					}
					return true, nil, nil
				}

				fakeSecureSession.WaitStub = func() error {
					Eventually(done).Should(BeClosed())
					return nil
				}
			})

			It("sends keep alive messages at the expected interval", func() {
				times := <-timesCh
				Expect(times[2]).To(BeTemporally("~", times[0].Add(200*time.Millisecond), 100*time.Millisecond))
開發者ID:vframbach,項目名稱:cli,代碼行數:32,代碼來源:ssh_test.go

示例2:

				Expect(payload).To(Equal([]byte("test-data")))

				reqType, wantReply, payload = sshConn.SendRequestArgsForCall(1)
				Expect(reqType).To(Equal("test"))
				Expect(wantReply).To(BeFalse())
				Expect(payload).To(Equal([]byte("test-data")))
			})
		})

		Context("when SendRequest fails", func() {
			BeforeEach(func() {
				callCount := 0
				sshConn.SendRequestStub = func(rt string, wr bool, p []byte) (bool, []byte, error) {
					callCount++
					if callCount == 1 {
						return false, nil, errors.New("woops")
					}
					return true, nil, nil
				}

				reqChan <- &ssh.Request{}
				reqChan <- &ssh.Request{}
			})

			AfterEach(func() {
				close(reqChan)
			})

			It("continues processing requests", func() {
				Eventually(sshConn.SendRequestCallCount).Should(Equal(2))
			})
開發者ID:sykesm,項目名稱:diego-ssh,代碼行數:31,代碼來源:proxy_test.go


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