Expect(response.Error.Error()).To(Equal("can't unclaim this")) }) It("only emits events for deleting evacuating", func() { Eventually(actualHub.EmitCallCount).Should(Equal(1)) event := actualHub.EmitArgsForCall(0) removeEvent, ok := event.(*models.ActualLRPRemovedEvent) Expect(ok).To(BeTrue()) Expect(removeEvent.ActualLrpGroup).To(Equal(&models.ActualLRPGroup{Evacuating: actual})) }) }) }) Context("when requesting the lrp auction fails", func() { BeforeEach(func() { fakeAuctioneerClient.RequestLRPAuctionsReturns(errors.New("boom!")) }) It("does not return the error or keep the container", func() { response := models.EvacuationResponse{} err := response.Unmarshal(responseRecorder.Body.Bytes()) Expect(err).NotTo(HaveOccurred()) Expect(response.KeepContainer).To(BeFalse()) Expect(response.Error).To(BeNil()) }) }) Context("when the request is invalid", func() { BeforeEach(func() { request = newTestRequest("{{") })