예제 #1
0
				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"))
				})
			})
						State:      "CRASHED",
						CrashCount: 7,
					},
				},
			}

			fakeTerm.GetWindowWidthReturns(9999, nil)
		})

		It("emits a pretty representation of the DesiredLRP", func() {
			fakeAppExaminer.AppStatusReturns(sampleAppInfo, nil)

			test_helpers.ExecuteCommandWithArgs(statusCommand, []string{"wompy-app"})

			Expect(fakeAppExaminer.AppStatusCallCount()).To(Equal(1))
			Expect(fakeAppExaminer.AppStatusArgsForCall(0)).To(Equal("wompy-app"))

			Expect(outputBuffer).To(test_helpers.Say("Instance"))
			Expect(outputBuffer).To(test_helpers.Say("State"))
			Expect(outputBuffer).To(test_helpers.Say("Crashes"))
			Expect(outputBuffer).To(test_helpers.Say("CPU"))
			Expect(outputBuffer).To(test_helpers.Say("Memory"))
			Expect(outputBuffer).To(test_helpers.Say("Uptime"))
			Expect(outputBuffer).To(test_helpers.SayNewLine())

			Expect(outputBuffer).To(test_helpers.Say("3"))
			Expect(outputBuffer).To(test_helpers.Say("RUNNING"))
			Expect(outputBuffer).To(test_helpers.Say("0"))
			Expect(outputBuffer).To(test_helpers.Say("23.46%"))
			Expect(outputBuffer).To(test_helpers.Say("640K"))
			roundedTimeSince := roundTime(fakeClock.Now(), time.Unix(0, epochTime*1e9))