跳转到主要内容

测试中的日期时间模拟

项目描述

https://circleci.com/gh/closeio/freezefrog/tree/master.svg?style=svg&circle-token=010565a97316df8a248f0f32d584357021a3873b

FreezeFrog 允许您在测试中模拟日期时间。

(对类似项目感兴趣? Close.io 正在寻找 优秀的工程师 加入我们的团队。)

为什么选择FreezeFrog?

FreezeFrog是一个Python库,允许您在测试中模拟日期时间。它的目标是简单和快速。

  • 与其他某些时间冻结库相比,FreezeFrog不会遍历所有导入的模块,即使对于较大的项目也很快。

  • FreezeFrog目前支持模拟以下基本方法

    • datetime.datetime.now

    • datetime.datetime.utcnow

    • time.time

  • FreezeFrog支持datetime和pytz时区对象。

使用方法

使用 FreezeTime 上下文管理器来冻结时间。将期望的 datetime 对象传递给构造函数,并传递时区以模拟系统的时区(默认为 datetime.timezone.utc)。构造函数还接受 fold 参数(默认为 0),用于定义模糊时间是指其第一次还是第二次出现,以及 tick 参数(默认为 False),它使时钟开始滴答。

import datetime

from freezefrog import FreezeTime

with FreezeTime(datetime.datetime(2014, 1, 1)):
    # The clock is frozen.
    # Always prints 2014-01-01 00:00:00
    print(datetime.datetime.utcnow())

with FreezeTime(datetime.datetime(2014, 1, 1), tick=True):
    # The clock starts ticking immediately.
    # Example output: 2014-01-01 00:00:00.000005
    print(datetime.datetime.utcnow())

项目详情


下载文件

下载适合您平台文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

freezefrog-0.4.1.tar.gz (3.8 kB 查看哈希值)

上传时间

支持

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面