问题标签 [freezegun]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何暂停pytest计时器?
我有一个参数化(py)测试,在运行逻辑之前清理数据库中的一些表:
在测试结束时,我得到:
问题是大约 2-3 分钟是表清理。
如何在清理之前暂停计时器并在清理完成后继续计时器?
就像在 Golang 的测试库中一样 - T.StopTimer() & T.StartTime()
我搜索了整个谷歌,我偶然发现的最接近的是freezegun。
我试过了,但无法摆脱清理时间,也许我用错了:/
据我所知,它操纵的是 datetime 对象,而不是 pytest 的计时器(机制):(
python-3.x - 使用 python 包 FreezeGun 模拟连续时间调用,如 unittest.mock.Mock side_effect
我试图datetime.now
用包模拟两个连续的调用freezegun
,但无法弄清楚为每个调用设置不同的返回值的方法。
有没有办法获得与 forunittest.mock.Mock
和设置类似side_effect
的结果iterable
python - 如何在 freezegun 中使用忽略包?
当我将 freezegun 与 google storage api 一起使用时,出现以下错误。
google.auth.exceptions.RefreshError: ('invalid_grant: Invalid JWT: Token must be a short-lived token (60 minutes) and in a reasonable timeframe. Check your iat and exp values in the JWT claim.', {'error': 'invalid_grant', 'error_description': 'Invalid JWT: Token must be a short-lived token (60 minutes) and in a reasonable timeframe. Check your iat and exp values in the JWT claim.'})
我认为忽略包可能会解决问题。参考:https ://github.com/spulec/freezegun/pull/185
有时需要忽略特定包(即库)的 FreezeGun 行为。一次调用可以忽略它们:
我尝试在忽略列表中添加 ["google", "google.auth", "google.cloud"],但仍然遇到相同的错误。
我对如何正确使用忽略包感到困惑。例如:
无论我是否将 urllib3 添加到忽略列表,它仍然会引发SystemTimeWarning: System time is way off (before 2020-07-01). This will probably lead to SSL verification errors
python - 如何正确使用`unittest.mock`?
我有这个遗留功能,我想写一个单元测试:
如何datetime.now()
使用标准库进行模拟unittest
?
我设法在我的测试功能上使用Freezegun装饰器来做到这一点@freeze_time("2022-01-01")
,它工作得非常好,但我想知道如果没有外部包怎么能做到这一点。