It("does not not restore the terminal", func() { Expect(fakeSecureSession.ShellCallCount()).To(Equal(1)) Expect(fakeTerminalHelper.SetRawTerminalCallCount()).To(Equal(1)) Expect(fakeTerminalHelper.RestoreTerminalCallCount()).To(Equal(0)) }) }) }) Context("when a command is specified", func() { BeforeEach(func() { opts.Command = []string{"echo", "-n", "hello"} }) Context("when a terminal is requested", func() { BeforeEach(func() { opts.TerminalRequest = options.REQUEST_TTY_YES }) It("requests a pty", func() { Expect(fakeSecureSession.RequestPtyCallCount()).To(Equal(1)) }) }) Context("when a terminal is not explicitly requested", func() { It("does not request a pty", func() { Expect(fakeSecureSession.RequestPtyCallCount()).To(Equal(0)) }) }) }) })
It("does not not restore the terminal", func() { Expect(fakeSecureSession.ShellCallCount()).To(Equal(1)) Expect(fakeTerminalHelper.SetRawTerminalCallCount()).To(Equal(1)) Expect(fakeTerminalHelper.RestoreTerminalCallCount()).To(Equal(0)) }) }) }) Context("when a command is specified", func() { BeforeEach(func() { opts.Command = []string{"echo", "-n", "hello"} }) Context("when a terminal is requested", func() { BeforeEach(func() { opts.TerminalRequest = options.RequestTTYYes }) It("requests a pty", func() { Expect(fakeSecureSession.RequestPtyCallCount()).To(Equal(1)) }) }) Context("when a terminal is not explicitly requested", func() { It("does not request a pty", func() { Expect(fakeSecureSession.RequestPtyCallCount()).To(Equal(0)) }) }) }) })