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(Config.APIEndpoint()).To(Equal("api.example.com")) Expect(Config.APIVersion()).To(Equal("some-version")) Expect(Config.AuthenticationEndpoint()).To(Equal("auth/endpoint")) Expect(Config.SSHOAuthClient()).To(Equal("some-client")) Expect(Config.MinCLIVersion()).To(Equal("1.0.0")) Expect(Config.MinRecommendedCLIVersion()).To(Equal("1.0.0")) Expect(Config.LoggregatorEndpoint()).To(Equal("loggregator/endpoint")) Expect(Config.DopplerEndpoint()).To(Equal("doppler/endpoint")) Expect(Config.RoutingAPIEndpoint()).To(Equal("routing/endpoint")) Expect(endpointRepo.GetCCInfoCallCount()).To(Equal(1)) Expect(endpointRepo.GetCCInfoArgsForCall(0)).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())
cmd.Execute(flagContext) Expect(ui.Outputs).To(ContainSubstrings( []string{"Service offering does not exist"}, )) }) It("does not try to purge the service offering", func() { cmd.Execute(flagContext) Expect(serviceRepo.PurgeServiceOfferingCallCount()).To(BeZero()) }) }) Context("when the -p flag is passed", func() { var origAPIVersion string BeforeEach(func() { origAPIVersion = configRepo.APIVersion() configRepo.SetAPIVersion("2.46.0") flagContext = flags.NewFlagContext(cmd.MetaData().Flags) err := flagContext.Parse("service-name", "-p", "provider-name") Expect(err).NotTo(HaveOccurred()) cmd.Requirements(factory, flagContext) }) AfterEach(func() { configRepo.SetAPIVersion(origAPIVersion) }) It("tries to find the service offering by label and provider", func() { ui.Inputs = []string{"n"} cmd.Execute(flagContext)
callApi := func(args []string) { err := flagContext.Parse(args...) Expect(err).NotTo(HaveOccurred()) runCLIErr = cmd.Execute(flagContext) } BeforeEach(func() { ui = new(testterm.FakeUI) requirementsFactory = new(requirementsfakes.FakeFactory) config = testconfig.NewRepository() endpointRepo = new(coreconfigfakes.FakeEndpointRepository) endpointRepo.GetCCInfoStub = func(endpoint string) (*coreconfig.CCInfo, string, error) { return &coreconfig.CCInfo{ APIVersion: config.APIVersion(), AuthorizationEndpoint: config.AuthenticationEndpoint(), LoggregatorEndpoint: "log/endpoint", MinCLIVersion: config.MinCLIVersion(), MinRecommendedCLIVersion: config.MinRecommendedCLIVersion(), SSHOAuthClient: config.SSHOAuthClient(), RoutingAPIEndpoint: config.RoutingAPIEndpoint(), }, endpoint, nil } repoLocator = api.RepositoryLocator{}.SetEndpointRepository(endpointRepo) deps = commandregistry.Dependency{ UI: ui, Config: config, RepoLocator: repoLocator,
}() Consistently(finishSaveCh).ShouldNot(BeClosed()) Consistently(finishReadCh).ShouldNot(BeClosed()) performSaveCh <- struct{}{} Eventually(finishReadCh).Should(BeClosed()) }) It("has acccessor methods for all config fields", func() { config.SetAPIEndpoint("http://api.the-endpoint") Expect(config.APIEndpoint()).To(Equal("http://api.the-endpoint")) config.SetAPIVersion("3") Expect(config.APIVersion()).To(Equal("3")) config.SetAuthenticationEndpoint("http://auth.the-endpoint") Expect(config.AuthenticationEndpoint()).To(Equal("http://auth.the-endpoint")) config.SetLoggregatorEndpoint("http://loggregator.the-endpoint") 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"))