func (resource ServiceInstancesSummaries) ToModels() (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.ApplicationNames = applicationNames instance.ServicePlan = servicePlan instance.ServiceOffering = serviceOffering instances = append(instances, instance) } return }
Expect(userProvidedServiceInstanceRepo.UpdateServiceInstance).NotTo(Equal(serviceInstance)) testassert.SliceContains(ui.Outputs, testassert.Lines{ {"FAILED"}, {"JSON is invalid"}, }) }) It("TestUpdateUserProvidedServiceWithAServiceInstanceThatIsNotUserProvided", func() { args := []string{"-p", `{"foo":"bar"}`, "service-name"} plan := models.ServicePlanFields{} plan.Guid = "my-plan-guid" serviceInstance := models.ServiceInstance{} serviceInstance.Name = "found-service-name" serviceInstance.ServicePlan = plan reqFactory := &testreq.FakeReqFactory{ LoginSuccess: true, ServiceInstance: serviceInstance, } userProvidedServiceInstanceRepo := &testapi.FakeUserProvidedServiceInstanceRepo{} ui := callUpdateUserProvidedService(args, reqFactory, userProvidedServiceInstanceRepo) Expect(userProvidedServiceInstanceRepo.UpdateServiceInstance).NotTo(Equal(serviceInstance)) testassert.SliceContains(ui.Outputs, testassert.Lines{ {"FAILED"}, {"Service Instance is not user provided"}, })
Context("when the service is not user provided", func() { BeforeEach(func() { setupTestServer(testapi.NewCloudControllerTestRequest(testnet.TestRequest{ Method: "PUT", Path: "/v2/service_instances/my-service-instance-guid", 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(testnet.HaveAllRequestsCalled()) Expect(err).NotTo(HaveOccurred()) }) }) Context("when the service is user provided", func() { BeforeEach(func() { setupTestServer(testapi.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},