Pytest plugin providing a fixture interface for spulec/freezegun
Project description
pytest-freezer
Pytest plugin providing a fixture interface for freezegun.
Installation:
$ python -m pip install pytest-freezer
Usage:
The fixture name is freezer. It is a freezegun.api.FrozenDateTimeFactory instance, so refer to upstream freezegun usage for the methods.
Time is frozen by default when the fixture is injected:
def test_frozen_date(freezer):
now = datetime.now()
time.sleep(1)
later = datetime.now()
assert now == later
Time can be controlled within a test by using methods on the fixture:
def test_freezer_methods(freezer):
freezer.move_to("2022-10-17")
assert datetime.now() == datetime(2022, 10, 17)
freezer.tick()
assert datetime.now() == datetime(2022, 10, 17, 0, 0, 1)
freezer.tick(delta=12)
assert datetime.now() == datetime(2022, 10, 17, 0, 0, 13)
Acknowledgements:
Credit to Tomasz Kontusz for the original pytest-freezegun plugin.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pytest_freezer-0.4.6.tar.gz
(8.7 MB
view hashes)
Built Distribution
Close
Hashes for pytest_freezer-0.4.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca549c30a7e12bc7b242978b6fa0bb91e73cd1bd7d5b2bb658f0f9d7f1694cac |
|
MD5 | 173f95c17ca188a021a3c5095456d1e1 |
|
BLAKE2b-256 | b91eed615b4285443b47694a3cf1579e451c85dda71d2e58cfffcf21b7410870 |