func itValidatesPresenceOfPlacementError(lrp *models.ActualLRP) { Context("when placement error is set", func() { BeforeEach(func() { lrp.PlacementError = "insufficient capacity" }) It("validate does not return an error", func() { Expect(lrp.Validate()).NotTo(HaveOccurred()) }) }) Context("when placement error is not set", func() { BeforeEach(func() { lrp.PlacementError = "" }) It("validate does not return an error", func() { Expect(lrp.Validate()).NotTo(HaveOccurred()) }) }) }
func itValidatesAbsenceOfPlacementError(lrp *models.ActualLRP) { Context("when placement error is set", func() { BeforeEach(func() { lrp.PlacementError = "insufficient capacity" }) It("validate returns an error", func() { err := lrp.Validate() Expect(err).To(HaveOccurred()) Expect(err.Error()).To(ContainSubstring("placement error")) }) }) Context("when placement error is not set", func() { BeforeEach(func() { lrp.PlacementError = "" }) It("validate does not return an error", func() { Expect(lrp.Validate()).NotTo(HaveOccurred()) }) }) }
models.ActualLRPStateCrashed: receptor.ActualLRPStateCrashed, } for modelState, jsonState := range expectedStateMap { actualLRP.State = modelState Expect(serialization.ActualLRPToResponse(actualLRP, false).State).To(Equal(jsonState)) } actualLRP.State = "" Expect(serialization.ActualLRPToResponse(actualLRP, false).State).To(Equal(receptor.ActualLRPStateInvalid)) }) Context("when there is placement error", func() { BeforeEach(func() { actualLRP.State = models.ActualLRPStateUnclaimed actualLRP.PlacementError = diego_errors.INSUFFICIENT_RESOURCES_MESSAGE }) It("includes the placement error", func() { actualResponse := serialization.ActualLRPToResponse(actualLRP, false) Expect(actualResponse.PlacementError).To(Equal(diego_errors.INSUFFICIENT_RESOURCES_MESSAGE)) }) }) Context("when there is a crash reason", func() { BeforeEach(func() { actualLRP.State = models.ActualLRPStateCrashed actualLRP.CrashReason = "crashed" }) It("includes the placement error", func() {