logger = lagertest.NewTestLogger("test") reportInterval = 100 * time.Millisecond executorClient = new(fakes.FakeClient) sender = fake.NewFakeMetricSender() dropsonde_metrics.Initialize(sender, nil) executorClient.TotalResourcesReturns(executor.ExecutorResources{ MemoryMB: 1024, DiskMB: 2048, Containers: 4096, }, nil) executorClient.RemainingResourcesReturns(executor.ExecutorResources{ MemoryMB: 128, DiskMB: 256, Containers: 512, }, nil) executorClient.ListContainersReturns([]executor.Container{ {Guid: "container-1"}, {Guid: "container-2"}, {Guid: "container-3"}, }, nil) }) JustBeforeEach(func() { reporter = ifrit.Envoke(&metrics.Reporter{ ExecutorSource: executorClient, Interval: reportInterval, Logger: logger,
Guid: "da-task", Resource: executor.NewResource(40, 30, "rootfs"), Tags: executor.Tags{ rep.LifecycleTag: rep.TaskLifecycle, rep.DomainTag: "domain", }, }, { Guid: "other-task", Resource: executor.NewResource(40, 30, "rootfs"), Tags: nil, }, } client.TotalResourcesReturns(totalResources, nil) client.RemainingResourcesReturns(availableResources, nil) client.ListContainersReturns(containers, nil) }) It("queries the client and returns state", func() { state, err := cellRep.State() Expect(err).NotTo(HaveOccurred()) Expect(state.Evacuating).To(BeTrue()) Expect(state.RootFSProviders).To(Equal(rep.RootFSProviders{ models.PreloadedRootFSScheme: rep.NewFixedSetRootFSProvider("linux"), "docker": rep.ArbitraryRootFSProvider{}, })) Expect(state.AvailableResources).To(Equal(rep.Resources{ MemoryMB: int32(availableResources.MemoryMB),