Ejemplo n.º 1
0
				Expect(appInfo.ActualInstances).To(HaveLen(1))
				Expect(appInfo.ActualInstances[0].HasMetrics).To(BeFalse())
			})
		})
	})

	Describe("NumOfRunningAppInstances", func() {
		It("returns the number of running instances for a given app guid", func() {
			actualLrpsResponse := []receptor.ActualLRPResponse{
				{ProcessGuid: "americano-app", State: receptor.ActualLRPStateRunning, Index: 1},
				{ProcessGuid: "americano-app", State: receptor.ActualLRPStateRunning, Index: 2},
				{ProcessGuid: "americano-app", State: receptor.ActualLRPStateClaimed, Index: 3},
			}
			fakeReceptorClient.ActualLRPsByProcessGuidReturns(actualLrpsResponse, nil)

			count, placementError, err := appExaminer.RunningAppInstancesInfo("americano-app")
			Expect(err).NotTo(HaveOccurred())
			Expect(count).To(Equal(2))
			Expect(placementError).To(BeFalse())

			Expect(fakeReceptorClient.ActualLRPsByProcessGuidCallCount()).To(Equal(1))
			Expect(fakeReceptorClient.ActualLRPsByProcessGuidArgsForCall(0)).To(Equal("americano-app"))
		})

		It("returns errors from the receptor", func() {
			receptorError := errors.New("receptor did not like that request")
			fakeReceptorClient.ActualLRPsByProcessGuidReturns([]receptor.ActualLRPResponse{}, receptorError)

			_, _, err := appExaminer.RunningAppInstancesInfo("nescafe-app")
			Expect(err).To(MatchError(receptorError))
		})