actual, _ := store.GetActualState() Ω(actual).Should(ContainElement(app.GetInstance(0).Heartbeat(17))) Ω(actual).Should(ContainElement(app.GetInstance(1).Heartbeat(22))) Ω(actual).Should(ContainElement(anotherApp.GetInstance(0).Heartbeat(11))) }) Context("when the save succeeds", func() { It("bumps the freshness", func() { Ω(store.ActualIsFresh).Should(BeTrue()) Ω(store.ActualFreshnessTimestamp).Should(Equal(timeProvider.Time())) Ω(logger.LoggedSubjects).Should(BeEmpty()) }) Context("when the freshness bump fails", func() { BeforeEach(func() { store.BumpActualFreshnessError = errors.New("oops") }) It("logs about the failed freshness bump", func() { Ω(logger.LoggedSubjects).Should(ContainElement("Could not update actual freshness")) }) }) }) Context("when the save fails", func() { BeforeEach(func() { store.SaveActualStateError = errors.New("oops") }) It("does not bump the freshness", func() { Ω(store.ActualIsFresh).Should(BeFalse())