Describe("when the --skip-ssl-validation flag is provided", func() { BeforeEach(func() { Flags = append(Flags, "--skip-ssl-validation") }) Describe("setting api endpoint is successful", func() { BeforeEach(func() { Config.SetSSLDisabled(false) }) ItSucceeds() ItShowsTheTarget() It("stores the API endpoint and the skip-ssl flag", func() { Expect(endpointRepo.UpdateEndpointReceived).To(Equal("https://api.the-server.com")) Expect(Config.IsSSLDisabled()).To(BeTrue()) }) }) Describe("setting api endpoint failed", func() { BeforeEach(func() { Config.SetSSLDisabled(true) endpointRepo.UpdateEndpointError = errors.New("API endpoint not found") }) ItFails() ItDoesntShowTheTarget() It("clears the entire config", func() { Expect(Config.ApiEndpoint()).To(BeEmpty()) Expect(Config.IsSSLDisabled()).To(BeFalse())
config.SetSSHOAuthClient("oauth-client-id") Expect(config.SSHOAuthClient()).To(Equal("oauth-client-id")) config.SetRefreshToken("the-token") Expect(config.RefreshToken()).To(Equal("the-token")) organization := maker.NewOrgFields(maker.Overrides{"name": "the-org"}) config.SetOrganizationFields(organization) Expect(config.OrganizationFields()).To(Equal(organization)) space := maker.NewSpaceFields(maker.Overrides{"name": "the-space"}) config.SetSpaceFields(space) Expect(config.SpaceFields()).To(Equal(space)) config.SetSSLDisabled(false) Expect(config.IsSSLDisabled()).To(BeFalse()) config.SetLocale("en_US") Expect(config.Locale()).To(Equal("en_US")) config.SetPluginRepo(models.PluginRepo{Name: "repo", Url: "nowhere.com"}) Expect(config.PluginRepos()[0].Name).To(Equal("repo")) Expect(config.PluginRepos()[0].Url).To(Equal("nowhere.com")) Expect(config.IsMinApiVersion("3.1")).To(Equal(false)) config.SetMinCliVersion("6.5.0") Expect(config.MinCliVersion()).To(Equal("6.5.0")) config.SetMinRecommendedCliVersion("6.9.0") Expect(config.MinRecommendedCliVersion()).To(Equal("6.9.0"))
}) }) Context("when the user does not provide an endpoint", func() { Context("when the endpoint is set in the config", func() { BeforeEach(func() { config.SetApiEndpoint("https://api.run.pivotal.io") config.SetApiVersion("2.0") config.SetSSLDisabled(true) }) It("prints out the api endpoint and appropriately sets the config", func() { callApi([]string{}, config, endpointRepo) Expect(ui.Outputs).To(ContainSubstrings([]string{"https://api.run.pivotal.io", "2.0"})) Expect(config.IsSSLDisabled()).To(BeTrue()) }) Context("when the --unset flag is passed", func() { It("unsets the ApiEndpoint", func() { callApi([]string{"--unset"}, config, endpointRepo) Expect(ui.Outputs).To(ContainSubstrings( []string{"Unsetting api endpoint..."}, []string{"OK"}, []string{"No api endpoint set."}, )) Expect(config.ApiEndpoint()).To(Equal("")) }) }) })