Я хочу смоделировать datetime.utcnow().isoformat()
для юнит-тестирования приложения python3 flask.
Я уже проверил сообщение StackOverflow о Python: как мне сменить datetime.utcnow () ? , но не удалось адаптировать его к utcnow().isoformat.()
.
Я пытался редактировать следующий код, но он не работал.
import pytest
import unittest
from unittest import mock
def fake_datetime(*args, **kwargs):
class FakeTime:
@classmethod
def utcnow(self):
return "2020-03-17T10:02:01.285418"
return Faketime
@mock.patch('app.utils.datetime', side_effect=fake_datetime)
class FlaskRoutesTest(unittest.TestCase):
def setUp(self):
self.app = app.create_app().test_client()
def test_app_route_recovered(self, mock_datetime):
print(mock_get.utcnow().isoformat())