brokerRepo.FindByNameServiceBroker = serviceBroker1 broker, err := brokerBuilder.AttachSpecificBrokerToServices("my-service-broker", services) Expect(err).NotTo(HaveOccurred()) Expect(broker.Name).To(Equal("my-service-broker")) Expect(broker.Services[0].Label).To(Equal("my-public-service")) Expect(len(broker.Services[0].Plans)).To(Equal(2)) Expect(broker.Services[1].Label).To(Equal("my-other-public-service")) Expect(len(broker.Services[0].Plans)).To(Equal(2)) Expect(len(broker.Services)).To(Equal(2)) }) }) Describe(".GetAllServiceBrokers", func() { It("returns an error if we cannot list all brokers", func() { brokerRepo.ListErr = true _, err := brokerBuilder.GetAllServiceBrokers() Expect(err).To(HaveOccurred()) }) It("returns an error if we cannot list the services for a broker", func() { brokerRepo.ServiceBrokers = []models.ServiceBroker{serviceBroker1} serviceBuilder.GetServicesForBrokerReturns(nil, errors.New("Cannot find services")) _, err := brokerBuilder.GetAllServiceBrokers() Expect(err).To(HaveOccurred()) }) It("returns all service brokers populated with their services", func() { brokerRepo.ServiceBrokers = []models.ServiceBroker{serviceBroker1}
testcmd.RunCommand(cmd, []string{}, requirementsFactory) Expect(ui.Outputs).To(ContainSubstrings( []string{"Getting service brokers as", "my-user"}, []string{"name", "url"}, []string{"service-broker-to-list-a", "http://service-a-url.com"}, []string{"service-broker-to-list-b", "http://service-b-url.com"}, []string{"service-broker-to-list-c", "http://service-c-url.com"}, )) }) It("says when no service brokers were found", func() { testcmd.RunCommand(cmd, []string{}, requirementsFactory) Expect(ui.Outputs).To(ContainSubstrings( []string{"Getting service brokers as", "my-user"}, []string{"No service brokers found"}, )) }) It("reports errors when listing service brokers", func() { repo.ListErr = true testcmd.RunCommand(cmd, []string{}, requirementsFactory) Expect(ui.Outputs).To(ContainSubstrings( []string{"Getting service brokers as ", "my-user"}, []string{"FAILED"}, )) }) })