Expect(config.LoggregatorEndpoint()).To(Equal("http://loggregator.the-endpoint")) config.SetDopplerEndpoint("http://doppler.the-endpoint") Expect(config.DopplerEndpoint()).To(Equal("http://doppler.the-endpoint")) config.SetUaaEndpoint("http://uaa.the-endpoint") Expect(config.UaaEndpoint()).To(Equal("http://uaa.the-endpoint")) config.SetAccessToken("the-token") Expect(config.AccessToken()).To(Equal("the-token")) 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"))
It("gets the UAA endpoint and saves it to the config file", func() { requirementsFactory.ApiEndpointSuccess = true testcmd.RunCliCommand("auth", []string{"*****@*****.**", "password"}, requirementsFactory, updateCommandDependency, false) Expect(repo.GetLoginPromptsWasCalled).To(BeTrue()) }) Describe("when authentication fails", func() { BeforeEach(func() { repo.AuthError = true testcmd.RunCliCommand("auth", []string{"username", "password"}, requirementsFactory, updateCommandDependency, false) }) It("does not prompt the user when provided username and password", func() { Expect(ui.Outputs).To(ContainSubstrings( []string{config.ApiEndpoint()}, []string{"Authenticating..."}, []string{"FAILED"}, []string{"Error authenticating"}, )) }) It("clears the user's session", func() { Expect(config.AccessToken()).To(BeEmpty()) Expect(config.RefreshToken()).To(BeEmpty()) Expect(config.SpaceFields()).To(Equal(models.SpaceFields{})) Expect(config.OrganizationFields()).To(Equal(models.OrganizationFields{})) }) }) }) })
testcmd.RunCliCommand("login", Flags, nil, updateCommandDependency, false) Expect(ui.Outputs).To(ContainSubstrings( []string{"Select an org"}, []string{"1. some-org"}, []string{"2. my-new-org"}, []string{"Select a space"}, []string{"1. my-space"}, []string{"2. some-space"}, )) Expect(Config.OrganizationFields().Guid).To(Equal("my-new-org-guid")) Expect(Config.SpaceFields().Guid).To(Equal("my-space-guid")) Expect(Config.AccessToken()).To(Equal("my_access_token")) Expect(Config.RefreshToken()).To(Equal("my_refresh_token")) Expect(endpointRepo.UpdateEndpointReceived).To(Equal("api.example.com")) Expect(orgRepo.FindByNameArgsForCall(0)).To(Equal("my-new-org")) Expect(spaceRepo.FindByNameArgsForCall(0)).To(Equal("my-space")) Expect(ui.ShowConfigurationCalled).To(BeTrue()) }) It("lets the user select an org and space by name", func() { ui.Inputs = []string{"api.example.com", "*****@*****.**", "password", "my-new-org", "my-space"} orgRepo.FindByNameReturns(org2, nil) testcmd.RunCliCommand("login", Flags, nil, updateCommandDependency, false)