}) } It("To subscribe to the dea.heartbeat subject", func() { Expect(messageBus.Subscriptions("dea.heartbeat")).To(HaveLen(1)) }) It("To subscribe to the dea.advertise subject", func() { Expect(messageBus.Subscriptions("dea.advertise")).NotTo(BeNil()) Expect(messageBus.Subscriptions("dea.advertise")).To(HaveLen(1)) }) It("To start tracking store usage", func() { Expect(usageTracker.StartTrackingUsageCallCount()).To(Equal(1)) Expect(usageTracker.MeasureUsageCallCount()).To(Equal(1)) Expect(metricsAccountant.TrackActualStateListenerStoreUsageFractionCallCount()).To(Equal(1)) Expect(metricsAccountant.TrackActualStateListenerStoreUsageFractionArgsForCall(0)).To(Equal(0.7)) }) It("To save heartbeats on a timer", func() { beat() clock.Increment(conf.ListenerHeartbeatSyncInterval()) Eventually(store.SyncHeartbeatsCallCount).Should(Equal(1)) beat() Consistently(store.SyncHeartbeatsCallCount).Should(Equal(1)) clock.Increment(conf.ListenerHeartbeatSyncInterval()) Eventually(store.SyncHeartbeatsCallCount).Should(Equal(2)) })