示例#1
0
文件: api_test.go 项目: nota-ja/cli
			})
		})
	})

	Context("when the user does not provide an endpoint", func() {
		Context("when the endpoint is set in the config", func() {
			var (
				ui                  *testterm.FakeUI
				ctx                 *cli.Context
				requirementsFactory *testreq.FakeReqFactory
			)

			BeforeEach(func() {
				config.SetApiEndpoint("https://api.run.pivotal.io")
				config.SetApiVersion("2.0")
				config.SetSSLDisabled(true)

				ui = new(testterm.FakeUI)
				ctx = testcmd.NewContext("api", []string{})
				requirementsFactory = &testreq.FakeReqFactory{}
			})

			JustBeforeEach(func() {
				testcmd.RunCommand(NewApi(ui, config, endpointRepo), ctx, requirementsFactory)
			})

			It("prints out the api endpoint", func() {
				testassert.SliceContains(ui.Outputs, testassert.Lines{
					{"https://api.run.pivotal.io", "2.0"},
				})
			})
示例#2
0
				for msg := range logChan {
					messages = append(messages, string(msg.GetLogMessage().Message))
				}

				Expect(messages).To(Equal([]string{"My message 1", "My message 2", "My message 3"}))
			})
		})

		Context("when the SSL certificate is invalid", func() {
			BeforeEach(func() {
				testServer.TLS.Certificates = []tls.Certificate{testnet.MakeExpiredTLSCert()}
			})

			Context("when skip-validation-errors flag is set", func() {
				BeforeEach(func() {
					configRepo.SetSSLDisabled(true)
				})

				It("ignores SSL validation errors", func() {
					err := logsRepo.TailLogsFor("my-app-guid", func() {}, logChan, make(chan bool), time.Duration(1*time.Second))
					Expect(err).NotTo(HaveOccurred())
				})
			})

			Context("when skip-validation-errors is not set", func() {
				It("fails when the server's SSL cert cannot be verified", func() {
					err := logsRepo.TailLogsFor("my-app-guid", func() {}, logChan, make(chan bool), time.Duration(1*time.Second))
					Expect(err).To(HaveOccurred())
				})
			})
		})