config.SetOrganizationFields(org) config.SetSpaceFields(space) testServerFn = validApiInfoEndpoint }) It("stores the data from the /info api in the config", func() { repo.UpdateEndpoint(testServer.URL) Expect(config.AccessToken()).To(Equal("")) Expect(config.AuthenticationEndpoint()).To(Equal("https://login.example.com")) Expect(config.LoggregatorEndpoint()).To(Equal("wss://loggregator.foo.example.org:4443")) Expect(config.DopplerEndpoint()).To(Equal("wss://doppler.foo.example.org:4443")) Expect(config.ApiEndpoint()).To(Equal(testServer.URL)) Expect(config.ApiVersion()).To(Equal("42.0.0")) Expect(config.HasOrganization()).To(BeFalse()) Expect(config.HasSpace()).To(BeFalse()) Expect(config.MinCliVersion()).To(Equal("6.5.0")) Expect(config.MinRecommendedCliVersion()).To(Equal("6.7.0")) }) Context("when the api endpoint does not change", func() { BeforeEach(func() { config.SetApiEndpoint(testServer.URL) config.SetAccessToken("some access token") config.SetRefreshToken("some refresh token") }) It("does not clear the session if the api endpoint does not change", func() { repo.UpdateEndpoint(testServer.URL) Expect(config.OrganizationFields()).To(Equal(org))
Expect(runCommand("my-space")).To(BeFalse()) }) }) It("deletes a space, given its name", func() { ui.Inputs = []string{"yes"} runCommand("space-to-delete") Expect(ui.Prompts).To(ContainSubstrings([]string{"Really delete the space space-to-delete"})) Expect(ui.Outputs).To(ContainSubstrings( []string{"Deleting space", "space-to-delete", "my-org", "my-user"}, []string{"OK"}, )) Expect(spaceRepo.DeletedSpaceGuid).To(Equal("space-to-delete-guid")) Expect(config.HasSpace()).To(Equal(true)) }) It("does not prompt when the -f flag is given", func() { runCommand("-f", "space-to-delete") Expect(ui.Prompts).To(BeEmpty()) Expect(ui.Outputs).To(ContainSubstrings( []string{"Deleting", "space-to-delete"}, []string{"OK"}, )) Expect(spaceRepo.DeletedSpaceGuid).To(Equal("space-to-delete-guid")) }) It("clears the space from the config, when deleting the space currently targeted", func() { config.SetSpaceFields(space.SpaceFields)