def test_context_manager(self): mgr = Manager(stream=self.tty.stdout, enabled=False) with mgr.counter(total=10, leave=False) as ctr: self.assertTrue(ctr in mgr.counters) ctr.update() self.assertFalse(ctr in mgr.counters)
def sleep_from(wait_time: float, moment: float, manager: enlighten.Manager = None) -> float: """ Sleeps for a specific amount of time, accordingly to a previous moment. :param wait_time: The minimum amount of time that must be waited since the specified moment. :param moment: Epoch time. :param manager: Progressbar Manager """ passed = time.time() - moment time_slept = wait_time - passed if time_slept > 0.01: if manager: time_slept = round(time_slept, 2) total, delay = ceil(time_slept * 100), time_slept / 100 bar = manager.counter(total=total, desc='Sleeping...', leave=False) for _ in range(total): time.sleep(delay) bar.update() bar.close() else: time.sleep(time_slept) return time_slept else: return 0