func (resource ServiceInstancesSummaries) ToModels() []models.ServiceInstance { var instances []models.ServiceInstance for _, instanceSummary := range resource.ServiceInstances { applicationNames := resource.findApplicationNamesForInstance(instanceSummary.Name) planSummary := instanceSummary.ServicePlan servicePlan := models.ServicePlanFields{} servicePlan.Name = planSummary.Name servicePlan.GUID = planSummary.GUID offeringSummary := planSummary.ServiceOffering serviceOffering := models.ServiceOfferingFields{} serviceOffering.Label = offeringSummary.Label serviceOffering.Provider = offeringSummary.Provider serviceOffering.Version = offeringSummary.Version instance := models.ServiceInstance{} instance.Name = instanceSummary.Name instance.LastOperation.Type = instanceSummary.LastOperation.Type instance.LastOperation.State = instanceSummary.LastOperation.State instance.LastOperation.Description = instanceSummary.LastOperation.Description instance.ApplicationNames = applicationNames instance.ServicePlan = servicePlan instance.ServiceOffering = serviceOffering instances = append(instances, instance) } return instances }
Context("when the service is not user provided", func() { BeforeEach(func() { setupTestServer(apifakes.NewCloudControllerTestRequest(testnet.TestRequest{ Method: "PUT", Path: "/v2/service_instances/my-service-instance-guid?accepts_incomplete=true", Matcher: testnet.RequestBodyMatcher(`{"name":"new-name"}`), Response: testnet.TestResponse{Status: http.StatusCreated}, })) }) It("renames the service", func() { serviceInstance := models.ServiceInstance{} serviceInstance.GUID = "my-service-instance-guid" serviceInstance.ServicePlan = models.ServicePlanFields{ GUID: "some-plan-guid", } err := repo.RenameService(serviceInstance, "new-name") Expect(testHandler).To(HaveAllRequestsCalled()) Expect(err).NotTo(HaveOccurred()) }) }) Context("when the service is user provided", func() { BeforeEach(func() { setupTestServer(apifakes.NewCloudControllerTestRequest(testnet.TestRequest{ Method: "PUT", Path: "/v2/user_provided_service_instances/my-service-instance-guid", Matcher: testnet.RequestBodyMatcher(`{"name":"new-name"}`), Response: testnet.TestResponse{Status: http.StatusCreated},