У меня есть несколько тестов, которые зависят от текущего времени, и я пока не могу найти решение для этого.Я пробовал некоторые насмешливые библиотеки, такие как mock
, но он высмеивает весь модуль и не работает.Любая помощь будет по достоинству оценена (если я только высмеиваю DateTime.utc_now
, все в порядке)
Примечание: тесты сильно зависят от других функций DateTime
и Date
, поэтому имитация целых модулей не очень хорошая опция (Я пробовал это тоже, но не смог из-за очень сложных случаев, и мне нужно это во многих тестах)
Фактический тест: у меня есть две даты, start date
и end date
в качестве входных данных для функции, которую я пытаюсьтестировать.Перед вызовом функции в целях тестирования я вставляю некоторые данные, релевантные для текущей недели (текущая дата для следующих семи дней).Теперь функция получит текущее время и проверит определенные дни (каждая запись сообщит, относится ли она к текущему дню недели и к диапазону текущего периода времени, для которого выполняется итерация -> даты начала и окончания).например, одна запись относится к mon
-> 2:12 до 3:13