}) AfterEach(func() { process.Signal(syscall.SIGTERM) }) JustBeforeEach(func() { process = ifrit.Invoke(routeRegister) }) Context("registration", func() { Context("with no errors", func() { BeforeEach(func() { database.SaveRouteStub = func(route models.Route) error { return nil } }) It("registers the route for a routing api on init", func() { Eventually(database.SaveRouteCallCount).Should(Equal(1)) Eventually(func() models.Route { return database.SaveRouteArgsForCall(0) }).Should(Equal(route)) }) It("registers on an interval", func() { timeChan <- time.Now() Eventually(database.SaveRouteCallCount).Should(Equal(2)) Eventually(func() models.Route { return database.SaveRouteArgsForCall(1) }).Should(Equal(route)) Eventually(logger.Logs).Should(HaveLen(0))