class Record(ndb.Model):
notes = ndb.TextProperty()
last_updated = ndb.DateTimeProperty(auto_now=True)
Часть Испытательная установка блока:Как переопределить поле метки времени для целей единичного тестирования?
record2 = Record()
# trying to set the last_updated timestamp to a previous date
record2.last_updated = previous_date
record2.put()
#after saving it, the timestamp is back to today's date
Поэтому я не могу эмулировать старые записи для моего модульного тестирования. Как переопределить это поле без изменения модели?
Из документов - 'Можно переопределить значение для свойства с помощью auto_now_add = True, но не для одного с auto_now = True. Автоматическое значение не генерируется до тех пор, пока объект не будет записан; то есть эти параметры не обеспечивают динамические значения по умолчанию. (Эти данные отличаются от старого db API.) 'Вам, вероятно, придется возиться с моделью, настраиваясь для тестов. –
@TimHoffman Почему бы не иметь это как ответ вместо комментария? – Lipis
Я часто это делаю, когда я не удовлетворен этим ответом :-) –