It("does not prompt when the -f flag is provided", func() { runCommand("-f", "app-to-delete") Expect(appRepo.ReadArgs.Name).To(Equal("app-to-delete")) Expect(appRepo.DeletedAppGuid).To(Equal("app-to-delete-guid")) Expect(ui.Prompts).To(BeEmpty()) Expect(ui.Outputs).To(ContainSubstrings( []string{"Deleting", "app-to-delete"}, []string{"OK"}, )) }) Describe("mapped routes", func() { BeforeEach(func() { route1 := models.RouteSummary{} route1.Guid = "the-first-route-guid" route1.Host = "my-app-is-good.com" route2 := models.RouteSummary{} route2.Guid = "the-second-route-guid" route2.Host = "my-app-is-bad.com" appRepo.ReadReturns.App = models.Application{ Routes: []models.RouteSummary{route1, route2}, } }) Context("when the -r flag is provided", func() { Context("when deleting routes succeeds", func() { It("deletes the app's routes", func() {
callPush("-z", "null", "existing-app") Expect(*appRepo.UpdateParams.ZoneGuid).To(Equal("")) }) It("updates the app with empty(default) zone", func() { callPush("-z", "default", "existing-app") Expect(*appRepo.UpdateParams.ZoneGuid).To(Equal("")) }) It("updates the app without zone", func() { callPush("existing-app") Expect(appRepo.UpdateParams.ZoneGuid).To(BeNil()) }) It("updates the app", func() { existingRoute := models.RouteSummary{} existingRoute.Host = "existing-app" existingApp.Routes = []models.RouteSummary{existingRoute} appRepo.ReadReturns.App = existingApp appRepo.UpdateAppResult = existingApp stackRepo.FindByNameReturns(models.Stack{ Name: "differentStack", Guid: "differentStack-guid", }, nil) callPush( "-c", "different start command", "-i", "10", "-m", "1G",
} return } BeforeEach(func() { ui = new(testterm.FakeUI) requirementsFactory = &testreq.FakeReqFactory{} defaultAppForStart.Name = "my-app" defaultAppForStart.Guid = "my-app-guid" defaultAppForStart.InstanceCount = 2 domain := models.DomainFields{} domain.Name = "example.com" route := models.RouteSummary{} route.Host = "my-app" route.Domain = domain defaultAppForStart.Routes = []models.RouteSummary{route} instance1 := models.AppInstanceFields{} instance1.State = models.InstanceStarting instance2 := models.AppInstanceFields{} instance2.State = models.InstanceStarting instance3 := models.AppInstanceFields{} instance3.State = models.InstanceRunning instance4 := models.AppInstanceFields{}