我有一些类依赖于time.perf_counter()
时间戳事件并在经过一定时间后执行操作,如下所示:
class Alarm:
def setAlarm(self):
self.alarmed = False
self._saved = time.perf_counter()
def runStep(self):
now = time.perf_counter()
if now - self._saved > 1000.0 and self._saved != -1:
self.alarmed = True
self._saved = -1
我想Alarm
用一个假时钟来测试这个类,它没有必要被调用time.perf_counter()
(虽然我猜如果它会更优雅)。我希望假时钟不会自行增加,而是根据我的命令增加,如下所示:
alarm = Alarm()
alarm.setAlarm()
clock.increment(999.0)
alarm.runStep()
self.assertFalse(alarm.alarmed)
clock.increment(1.1) # tick another second
alarm.runStep()
self.assertTrue(alarm.alarmed)
您能否建议如何time.perf_counter()
为它模拟或模拟我的课程,以及这种工作应该使用什么样的工具?