Expect(runCommand("-f", "my-broker")).To(BeFalse()) }) }) Context("when the service broker exists", func() { BeforeEach(func() { brokerRepo.FindByNameReturns(models.ServiceBroker{ Name: "service-broker-to-delete", Guid: "service-broker-to-delete-guid", }, nil) }) It("deletes the service broker with the given name", func() { runCommand("service-broker-to-delete") Expect(brokerRepo.FindByNameCallCount()).To(Equal(1)) Expect(brokerRepo.FindByNameArgsForCall(0)).To(Equal("service-broker-to-delete")) Expect(brokerRepo.DeleteCallCount()).To(Equal(1)) Expect(brokerRepo.DeleteArgsForCall(0)).To(Equal("service-broker-to-delete-guid")) Expect(ui.Prompts).To(ContainSubstrings([]string{"Really delete the service-broker service-broker-to-delete"})) Expect(ui.Outputs).To(ContainSubstrings( []string{"Deleting service broker", "service-broker-to-delete", "my-user"}, []string{"OK"}, )) }) It("does not prompt when the -f flag is provided", func() { runCommand("-f", "service-broker-to-delete") Expect(brokerRepo.FindByNameArgsForCall(0)).To(Equal("service-broker-to-delete")) Expect(brokerRepo.DeleteArgsForCall(0)).To(Equal("service-broker-to-delete-guid"))
}) }) Context("when logged in", func() { BeforeEach(func() { requirementsFactory.LoginSuccess = true broker := models.ServiceBroker{} broker.Name = "my-found-broker" broker.Guid = "my-found-broker-guid" serviceBrokerRepo.FindByNameReturns(broker, nil) }) It("updates the service broker with the provided properties", func() { runCommand("my-broker", "new-username", "new-password", "new-url") Expect(serviceBrokerRepo.FindByNameArgsForCall(0)).To(Equal("my-broker")) Expect(ui.Outputs).To(ContainSubstrings( []string{"Updating service broker", "my-found-broker", "my-user"}, []string{"OK"}, )) expectedServiceBroker := models.ServiceBroker{} expectedServiceBroker.Name = "my-found-broker" expectedServiceBroker.Username = "******" expectedServiceBroker.Password = "******" expectedServiceBroker.Url = "new-url" expectedServiceBroker.Guid = "my-found-broker-guid" Expect(serviceBrokerRepo.UpdateArgsForCall(0)).To(Equal(expectedServiceBroker)) })