如何模拟_auto_now?
How to mock _auto_now?
我有一个 ndb.model class,其中 'created_on' 字段的 auto_now_add 设置为 true。
created_on = ndb.DateTimeProperty(auto_now_add=True, indexed=True)
我正在测试创建此 class 对象的方法 'create()'。这是我在测试中所做的事情:
- 使用正在测试的 'create()' 方法创建一个对象。
- 获取对象。
- 与存根(未使用 'create()' 方法创建)进行比较。
问题是我无法将 'created_on' 设置为与存根相匹配。
如何模拟这样的东西? (我可以模拟的后端正在使用 api 吗?)
过去,我曾用freezegun
来嘲笑这种事情。它看起来像:
@freezegun.freeze_time('2015-9-21')
def test():
assert ModelClass.create(...) == ModelClass(...)
如果你不喜欢那样,你可以在两个模型上调用 to_dict
并弹出 'created_on'
属性。
我有一个 ndb.model class,其中 'created_on' 字段的 auto_now_add 设置为 true。
created_on = ndb.DateTimeProperty(auto_now_add=True, indexed=True)
我正在测试创建此 class 对象的方法 'create()'。这是我在测试中所做的事情:
- 使用正在测试的 'create()' 方法创建一个对象。
- 获取对象。
- 与存根(未使用 'create()' 方法创建)进行比较。
问题是我无法将 'created_on' 设置为与存根相匹配。
如何模拟这样的东西? (我可以模拟的后端正在使用 api 吗?)
过去,我曾用freezegun
来嘲笑这种事情。它看起来像:
@freezegun.freeze_time('2015-9-21')
def test():
assert ModelClass.create(...) == ModelClass(...)
如果你不喜欢那样,你可以在两个模型上调用 to_dict
并弹出 'created_on'
属性。