测试中的有效日期时间模拟
freezefrog的Python项目详细描述
freezebrog允许您在单元测试中有效地模拟日期时间。
(对这样的项目感兴趣?Close.io正在寻找great engineers加入我们的团队)
Why FreezeFrog?
freezebrog是一个python库,它允许您在单元测试中模拟日期时间。它的 目标是简单快捷。
- 与某些其他时间冻结库相比,冻结蛙不循环 通过所有导入的模块,即使是更大的项目也能快速完成。
- FroezeFrog目前支持模拟以下基本方法:
- datetime.datetime.now(如果指定了tz_delta)
- datetime.datetime.utcnow
- time.time
Usage
使用FreezeTime上下文管理器冻结时间。通过所需的 datetime对象到构造函数。构造函数还接受tick 关键字参数(False默认),使时钟开始计时。
fromfreezefrogimportFreezeTimeimportdatetimewithFreezeTime(datetime.datetime(2014,1,1)):# The clock is frozen.# Always prints 2014-01-01 00:00:00printdatetime.datetime.utcnow()withFreezeTime(datetime.datetime(2014,1,1),tick=True):# The clock starts ticking immediately.# Example output: 2014-01-01 00:00:00.000005printdatetime.datetime.utcnow()