test_helpers.ExecuteCommandWithArgs(sshCommand, []string{"app-name", "-N", "-L", "mrlocalhost:1234:remotehost:5678"}) Expect(outputBuffer).To(test_helpers.SayLine("Forwarding mrlocalhost:1234 to remotehost:5678 via app-name/0 at %s", config.Target())) Expect(fakeSSH.ConnectCallCount()).To(Equal(1)) appName, instanceIndex, actualConfig := fakeSSH.ConnectArgsForCall(0) Expect(appName).To(Equal("app-name")) Expect(instanceIndex).To(Equal(0)) Expect(actualConfig).To(Equal(config)) Expect(fakeSSH.ForwardCallCount()).To(Equal(1)) localAddr, remoteAddr := fakeSSH.ForwardArgsForCall(0) Expect(localAddr).To(Equal("mrlocalhost:1234")) Expect(remoteAddr).To(Equal("remotehost:5678")) Expect(fakeAppExaminer.AppStatusCallCount()).To(Equal(1)) Expect(fakeAppExaminer.AppStatusArgsForCall(0)).To(Equal("app-name")) }) Context("when the local host address is not specified", func() { It("should default to localhost", func() { fakeAppExaminer.AppStatusReturns(app_examiner.AppInfo{ActualRunningInstances: 1}, nil) test_helpers.ExecuteCommandWithArgs(sshCommand, []string{"app-name", "-N", "-L", "1234:remotehost:5678"}) Expect(outputBuffer).To(test_helpers.SayLine("Forwarding localhost:1234 to remotehost:5678 via app-name/0 at %s", config.Target())) Expect(fakeSSH.ForwardCallCount()).To(Equal(1)) localAddr, _ := fakeSSH.ForwardArgsForCall(0) Expect(localAddr).To(Equal("localhost:1234")) })