예제 #1
0
파일: ssh_test.go 프로젝트: vframbach/cli
	. "github.com/onsi/ginkgo"
	. "github.com/onsi/gomega"
)

var _ = Describe("SSH", func() {
	var (
		fakeTerminalHelper  *terminal_helper_fakes.FakeTerminalHelper
		fakeListenerFactory *fakes.FakeListenerFactory

		fakeConnection    *fake_ssh.FakeConn
		fakeSecureClient  *fakes.FakeSecureClient
		fakeSecureDialer  *fakes.FakeSecureDialer
		fakeSecureSession *fakes.FakeSecureSession

		terminalHelper    terminal.TerminalHelper
		keepAliveDuration time.Duration
		secureShell       sshCmd.SecureShell

		stdinPipe *fake_io.FakeWriteCloser

		currentApp             models.Application
		sshEndpointFingerprint string
		sshEndpoint            string
		token                  string
	)

	BeforeEach(func() {
		fakeTerminalHelper = &terminal_helper_fakes.FakeTerminalHelper{}
		terminalHelper = terminal.DefaultHelper()

		fakeListenerFactory = &fakes.FakeListenerFactory{}
예제 #2
0
						channelRequest := make([]byte, 5)
						channel.Read(channelRequest)
						Expect(string(channelRequest)).To(Equal("hello"))

						channel.Write([]byte("goodbye"))
						channel.Close()
					})
				})
			})
		})
	})

	Describe("ProxyGlobalRequests", func() {
		var (
			sshConn *fake_ssh.FakeConn
			reqChan chan *ssh.Request

			done chan struct{}
		)

		BeforeEach(func() {
			sshConn = &fake_ssh.FakeConn{}
			reqChan = make(chan *ssh.Request, 2)
			done = make(chan struct{}, 1)
		})

		JustBeforeEach(func() {
			go func(done chan<- struct{}) {
				proxy.ProxyGlobalRequests(logger, sshConn, reqChan)
				done <- struct{}{}
			}(done)
		})