Context("when the -b flag is passed", func() { It("returns a single broker contained in a slice with all dependencies populated", func() { returnedBroker := serviceBroker1 brokerBuilder.GetBrokerWithAllServicesReturns(returnedBroker, nil) brokers, err := actor.FilterBrokers("my-service-broker1", "", "") Expect(err).NotTo(HaveOccurred()) Expect(len(brokers)).To(Equal(1)) }) }) Context("when the -e flag is passed", func() { It("returns a single broker containing a single service", func() { serviceBroker1.Services = []models.ServiceOffering{service1} returnedBroker := serviceBroker1 brokerBuilder.GetBrokerWithSpecifiedServiceReturns(returnedBroker, nil) brokers, err := actor.FilterBrokers("", "my-service1", "") Expect(err).NotTo(HaveOccurred()) Expect(len(brokers)).To(Equal(1)) Expect(len(brokers[0].Services)).To(Equal(1)) Expect(brokers[0].Services[0].GUID).To(Equal("service-guid1")) }) }) Context("when the -o flag is passed", func() { It("returns an error if the org does not actually exist", func() {
service3 = models.ServiceOffering{ ServiceOfferingFields: models.ServiceOfferingFields{ Label: "my-other-public-service", GUID: "my-other-public-service-guid", BrokerGUID: "my-other-service-broker-guid", }, Plans: []models.ServicePlanFields{ publicServicePlan, privateServicePlan, }, } services = append(services, service3) }) It("attaches a single broker to only services that match", func() { serviceBroker1.Services = models.ServiceOfferings{} brokerRepo.FindByNameReturns(serviceBroker1, nil) 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() {