Все мои модели, включая Report
, наследуются от BaseModel
:
class Report(BaseModel):
...
class BaseModel(models.Model):
created_date = models.DateTimeField(auto_now_add=True, db_index=True)
modified_date = models.DateTimeField(auto_now=True, db_index=True)
class Meta:
abstract = True
Я пытаюсь протестировать запланированные задачи, которые удаляют старые Report
объекты.
Ниже приведено устройство:
@pytest.fixture(scope="function")
def old_dummy_report(request, db):
### set the date to far back
old_date = datetime.datetime.now() - datetime.timedelta(days=900)
return mixer.blend("core.report", , created_date=old_date, ios_report={'1': 1}, android_report={'1': 1})
Однако, когда я запускаю тест и проверяю поле created_date
для old_dummy_report
, я всегда получаю дату в то время, когда тестзапустить.
Как это исправить, кроме переустановки даты на old_date
в самой тестовой функции (которая кажется непифонической).