本文整理匯總了Golang中github.com/cloudfoundry-incubator/diego-ssh/test_helpers/fake_net.FakeListener.AcceptStub方法的典型用法代碼示例。如果您正苦於以下問題:Golang FakeListener.AcceptStub方法的具體用法?Golang FakeListener.AcceptStub怎麽用?Golang FakeListener.AcceptStub使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/cloudfoundry-incubator/diego-ssh/test_helpers/fake_net.FakeListener
的用法示例。
在下文中一共展示了FakeListener.AcceptStub方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1:
localAddress = realLocalListener.Addr().String()
fakeListenerFactory.ListenReturns(realLocalListener, nil)
echoHandler = &fake_server.FakeConnectionHandler{}
echoHandler.HandleConnectionStub = func(conn net.Conn) {
io.Copy(conn, conn)
conn.Close()
}
realListener, err := net.Listen("tcp", "127.0.0.1:0")
Expect(err).NotTo(HaveOccurred())
echoAddress = realListener.Addr().String()
echoListener = &fake_net.FakeListener{}
echoListener.AcceptStub = realListener.Accept
echoListener.CloseStub = realListener.Close
echoListener.AddrStub = realListener.Addr
fakeLocalListener = &fake_net.FakeListener{}
fakeLocalListener.AcceptReturns(nil, errors.New("Not Accepting Connections"))
echoServer = server.NewServer(logger.Session("echo"), "", echoHandler)
echoServer.SetListener(echoListener)
go echoServer.Serve()
opts = &options.SSHOptions{
AppName: "app-1",
ForwardSpecs: []options.ForwardSpec{{
ListenAddress: localAddress,
ConnectAddress: echoAddress,
示例2:
Describe("Serve", func() {
var fakeListener *fake_net.FakeListener
var fakeConn *fake_net.FakeConn
BeforeEach(func() {
fakeListener = &fake_net.FakeListener{}
fakeConn = &fake_net.FakeConn{}
connectionCh := make(chan net.Conn, 1)
connectionCh <- fakeConn
fakeListener.AcceptStub = func() (net.Conn, error) {
cx := connectionCh
select {
case conn := <-cx:
return conn, nil
default:
return nil, errors.New("fail")
}
}
})
JustBeforeEach(func() {
srv = server.NewServer(logger, address, handler)
srv.SetListener(fakeListener)
srv.Serve()
})
It("accepts inbound connections", func() {
Expect(fakeListener.AcceptCallCount()).To(Equal(2))
})