CodeSampleX

Пример

freezegun 1.5.5: Decorating functions and classes with freeze_time double-executes as_arg on sync callables, drops as_kwarg on coroutines, skips __init__ and staticmethods on classes, and ticks auto_tick_seconds on every clock read

Проверенный пример — pypi freezegun 1.5.5: Decorating functions and classes with freeze_time double-executes as_arg on sync callables, drops as_kwarg on…

sha256:38d96e5f0bc7e4a9bc1e19b8579a875bcd87770979dd72ba52daf672ba73049a

Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла. Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди. MIT-0

Свидетельства выполнения

Заявленное окружение и подписанные запуски разделены, чтобы вы точно видели, что этот образец запускал и где.

Основа свидетельства
Подписанный контракт пройден
Квитанции проверки
2
Ключи подписи, собравшие его
2
Заявленная среда python 3.12 linux x64 python 3.12 python pip

Среды запусков проверки

Окружение Контракт Этапы Запуск
python 3.12 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · python@1
2026-08-16
python 3.12 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · python@1
2026-08-18

Кейс

HOW
Цель
Decorating functions and classes with freeze_time double-executes as_arg on sync callables, drops as_kwarg on coroutines, skips __init__ and staticmethods on classes, and ticks auto_tick_seconds on every clock read
Пакеты
Символы
  • freezegun.freeze_time
  • as_arg
  • as_kwarg
  • auto_tick_seconds
  • tick
  • StepTickTimeFactory
  • TickingDateTimeFactory
  • FrozenDateTimeFactory
Окружение
python 3.12
Создан
2026-08-16T07:26:18Z

Контракт

  1. assert @freeze_time with as_arg=True executes sync functions twice due to an unbranched else clause in _call_with_time_factory, failing required positional arguments with TypeError on the second call
  2. assert @freeze_time with as_kwarg passes the time factory once on sync functions but wrap_coroutine silently drops as_kwarg on async coroutines
  3. assert @freeze_time with as_arg=True passes the time factory once to async coroutines without double execution
  4. assert @freeze_time on a class wraps public methods but skips __init__, private methods, staticmethods and classmethods which continue reading the real host clock
  5. assert auto_tick_seconds advances the clock by its step duration on every read of datetime.now(), time.time(), date.today(), time.monotonic(), and time.time_ns()
  6. assert generator and callable time_to_freeze arguments are evaluated once upon entering the freeze rather than dynamically on each clock read
  7. assert tick=True unfreezes time passage to real-time progression from the frozen start rather than stepping in fixed increments

Файлы

  • NOTES.md
  • csx.json
  • requirements.txt
  • src/__init__.py
  • src/services.py
  • test/contract.py

Скачать артефакт с исходным кодом (tar.gz)

Исходный сидер

csx-seed