It("fails when called without exactly one arg", func() {
			requirementsFactory.LoginSuccess = true

			passed := runCommand([]string{})

			Expect(passed).To(BeFalse())
			Expect(ui.Outputs).To(ContainSubstrings(
				[]string{"Incorrect Usage", "Requires", "argument"},
			))
		})
	})

	It("works when given -p and a provider name", func() {
		offering := maker.NewServiceOffering("the-service-name")
		serviceRepo.FindServiceOfferingByLabelAndProviderReturns(offering, nil)

		ui.Inputs = []string{"yes"}

		runCommand([]string{"-p", "the-provider", "the-service-name"})

		name, provider := serviceRepo.FindServiceOfferingByLabelAndProviderArgsForCall(0)
		Expect(name).To(Equal("the-service-name"))
		Expect(provider).To(Equal("the-provider"))

		Expect(serviceRepo.PurgeServiceOfferingArgsForCall(0)).To(Equal(offering))
	})

	It("works when not given a provider", func() {
		offering := maker.NewServiceOffering("the-service-name")
		serviceRepo.FindServiceOfferingByLabelAndProviderReturns(offering, nil)
			})

			It("tries to find the service offering by label and provider", func() {
				ui.Inputs = []string{"n"}
				cmd.Execute(flagContext)
				Expect(serviceRepo.FindServiceOfferingByLabelAndProviderCallCount()).To(Equal(1))
				name, provider := serviceRepo.FindServiceOfferingByLabelAndProviderArgsForCall(0)
				Expect(name).To(Equal("service-name"))
				Expect(provider).To(Equal("provider-name"))
			})

			Context("when finding the service offering succeeds", func() {
				BeforeEach(func() {
					serviceOffering := models.ServiceOffering{}
					serviceOffering.Guid = "service-offering-guid"
					serviceRepo.FindServiceOfferingByLabelAndProviderReturns(serviceOffering, nil)
				})

				It("asks the user to confirm", func() {
					ui.Inputs = []string{"n"}
					cmd.Execute(flagContext)
					Expect(ui.Outputs).To(ContainSubstrings([]string{"WARNING"}))
					Expect(ui.Prompts).To(ContainSubstrings([]string{"Really purge service offering service-name from Cloud Foundry?"}))
				})

				Context("when the user confirms", func() {
					BeforeEach(func() {
						ui.Inputs = []string{"y"}
					})

					It("tells the user it will purge the service offering", func() {