fakeBBS.ActualLRPGroupByProcessGuidAndIndexStub = func(processGuid string, index int) (*models.ActualLRPGroup, error) {
			return &models.ActualLRPGroup{
				Instance: model_helpers.NewValidActualLRP(processGuid, int32(index)),
			}, nil
		}
	})

	JustBeforeEach(func() {
		killHandler := handlers.NewKillIndexHandler(logger, fakeBBS)
		killHandler.KillIndex(responseRecorder, request)
	})

	It("invokes the bbs to retire", func() {
		Expect(fakeBBS.RetireActualLRPCallCount()).To(Equal(1))

		actualLRPKey := fakeBBS.RetireActualLRPArgsForCall(0)
		Expect(actualLRPKey.ProcessGuid).To(Equal("process-guid-0"))
		Expect(actualLRPKey.Index).To(BeEquivalentTo(1))
	})

	It("responds with 202 Accepted", func() {
		Expect(responseRecorder.Code).To(Equal(http.StatusAccepted))
	})

	Context("when the bbs fails", func() {
		BeforeEach(func() {
			fakeBBS.ActualLRPGroupByProcessGuidAndIndexReturns(nil, errors.New("oh no"))
		})

		It("responds with a ServiceUnavailabe error", func() {
			Expect(responseRecorder.Code).To(Equal(http.StatusServiceUnavailable))