ServiceOffering: models.ServiceOfferingFields{ Label: "murkydb", Guid: "murkydb-guid", }, } servicePlans := []models.ServicePlanFields{{ Name: "spark", Guid: "murkydb-spark-guid", }, { Name: "flare", Guid: "murkydb-flare-guid", }, } serviceRepo.FindInstanceByNameServiceInstance = serviceInstance planBuilder.GetPlansForServiceForOrgReturns(servicePlans, nil) }) It("successfully updates a service", func() { callUpdateService([]string{"-p", "flare", "my-service-instance"}) Expect(ui.Outputs).To(ContainSubstrings( []string{"Updating service", "my-service", "as", "my-user", "..."}, []string{"OK"}, )) Expect(serviceRepo.FindInstanceByNameName).To(Equal("my-service-instance")) serviceGuid, orgName := planBuilder.GetPlansForServiceForOrgArgsForCall(0) Expect(serviceGuid).To(Equal("murkydb-guid")) Expect(orgName).To(Equal("my-org")) Expect(serviceRepo.UpdateServiceInstanceArgs.InstanceGuid).To(Equal("my-service-instance-guid")) Expect(serviceRepo.UpdateServiceInstanceArgs.PlanGuid).To(Equal("murkydb-flare-guid"))
plan1 = models.ServicePlanFields{ Name: "service-plan1", Guid: "service-plan1-guid", ServiceOfferingGuid: "service-guid1", OrgNames: []string{"org1", "org2"}, } plan2 = models.ServicePlanFields{ Name: "service-plan2", Guid: "service-plan2-guid", ServiceOfferingGuid: "service-guid1", } planBuilder.GetPlansVisibleToOrgReturns([]models.ServicePlanFields{plan1, plan2}, nil) planBuilder.GetPlansForServiceReturns([]models.ServicePlanFields{plan1, plan2}, nil) planBuilder.GetPlansForServiceForOrgReturns([]models.ServicePlanFields{plan1, plan2}, nil) }) Describe(".GetServiceByName", func() { It("returns the named service, populated with plans", func() { service, err := serviceBuilder.GetServiceByName("my-cool-service") Expect(err).NotTo(HaveOccurred()) Expect(len(service.Plans)).To(Equal(2)) Expect(service.Plans[0].Name).To(Equal("service-plan1")) Expect(service.Plans[1].Name).To(Equal("service-plan2")) Expect(service.Plans[0].OrgNames).To(Equal([]string{"org1", "org2"})) }) }) Describe(".GetServiceByNameForOrg", func() {