Exemplo n.º 1
0
		It("does not fail with usage when provided a hostname", func() {
			runCommand("-n", "my-host", "example.com")
			Expect(ui.FailedWithUsage).To(BeFalse())
		})

		It("deletes routes when the user confirms", func() {
			runCommand("-n", "my-host", "example.com")

			Expect(ui.Prompts).To(ContainSubstrings([]string{"Really delete the route my-host"}))

			Expect(ui.Outputs).To(ContainSubstrings(
				[]string{"Deleting route", "my-host.example.com"},
				[]string{"OK"},
			))

			Expect(routeRepo.DeleteCallCount()).To(Equal(1))
			Expect(routeRepo.DeleteArgsForCall(0)).To(Equal("route-guid"))
		})

		It("does not prompt the user to confirm when they pass the '-f' flag", func() {
			ui.Inputs = []string{}
			runCommand("-f", "-n", "my-host", "example.com")

			Expect(ui.Prompts).To(BeEmpty())

			Expect(ui.Outputs).To(ContainSubstrings(
				[]string{"Deleting", "my-host.example.com"},
				[]string{"OK"},
			))
			Expect(routeRepo.DeleteCallCount()).To(Equal(1))
			Expect(routeRepo.DeleteArgsForCall(0)).To(Equal("route-guid"))
Exemplo n.º 2
0
					route2 := models.RouteSummary{}
					route2.Guid = "the-second-route-guid"
					route2.Host = "my-app-is-bad.com"

					appRepo.ReadReturns(models.Application{
						Routes: []models.RouteSummary{route1, route2},
					}, nil)
				})

				Context("when the -r flag is provided", func() {
					Context("when deleting routes succeeds", func() {
						It("deletes the app's routes", func() {
							runCommand("-f", "-r", "app-to-delete")

							Expect(routeRepo.DeleteCallCount()).To(Equal(2))
							Expect(routeRepo.DeleteArgsForCall(0)).To(Equal("the-first-route-guid"))
							Expect(routeRepo.DeleteArgsForCall(1)).To(Equal("the-second-route-guid"))
						})
					})

					Context("when deleting routes fails", func() {
						BeforeEach(func() {
							routeRepo.DeleteReturns(errors.New("an-error"))
						})

						It("fails with the api error message", func() {
							runCommand("-f", "-r", "app-to-delete")

							Expect(ui.Outputs).To(ContainSubstrings(
								[]string{"Deleting", "app-to-delete"},