Python - Полный Курс для Начинающих
🐍 Python-разработчики часто тестируют код с зависимостью от времени
Но обычный mock для дат — это намного сложнее, чем кажется. Библиотека time-machine решает эту проблему: она позволяет буквально «перемещать время» внутри тестов. Например: import datetime as dt import time_machine @time_machine.travel("2030-01-01") def test_future(): assert dt.date.today() == dt.date(2030, 1, 1) В отличие от популярных подходов вроде freezegun, библиотека не ищет и не заменяет все импорты в проекте. Она работает на уровне C API CPython, перехватывая функции даты и времени напрямую...