Wrapper for threading.Timer to allow resetting
Project description
resettabletimer
Wrapper for threading.Timer
to provide a resettable Timer implementation. Also provides fake timer for testing.
Usage
ResettableTimer
from resettabletimer import ResettableTimer
delay = 5 # seconds
function = print
# Create resettable timer
t = ResettableTimer(delay, function, ["Hello"], {"end":" timer!\n"})
# Starting and canceling work similarly than with threading.Timer
t.start()
# Wait 1-5 seconds
# Reset the timer
t.reset()
# Hello should be printed after five seconds
FakeTimer
from resettabletimer import FakeTimer
t = FakeTimer(2, print, ["Hello"], {"end":" timer!\n"})
# Starting and canceling work similarly than with threading.Timer
t.start()
# Wait >2 seconds
# Nothing happens
# Time passage is controlled with pass_time
t.pass_time(2)
# Hello should be printed
Testing
Check and automatically fix formatting with:
pycodestyle resettabletimer
autopep8 -aaar --in-place resettabletimer
Run static analysis with:
pylint -E --enable=invalid-name,unused-import,useless-object-inheritance resettabletimer
Run unit tests:
# Run unit tests
python3 -m unittest discover -s tst/
# Run unit tests with coverage analysis
coverage run \
--branch \
--source resettabletimer/ \
-m unittest discover -s tst/
coverage report -m
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
resettabletimer-1.0.0.tar.gz
(3.0 kB
view details)
Built Distribution
File details
Details for the file resettabletimer-1.0.0.tar.gz
.
File metadata
- Download URL: resettabletimer-1.0.0.tar.gz
- Upload date:
- Size: 3.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2ca68f40b8743f825118fec9a5a769a78790ce2351bacf8f79e6c3eb9ca7a22 |
|
MD5 | 541ee88be619e91959b2c08a9da6aec3 |
|
BLAKE2b-256 | 875f7c7dc782c934d1a6c8af64b2b9a37541b995da02ec238f06a9b088df41e8 |
File details
Details for the file resettabletimer-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: resettabletimer-1.0.0-py3-none-any.whl
- Upload date:
- Size: 4.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 37409ccb6899dc997d96e8692741af091880e172ac62724cf289e406d6d622d1 |
|
MD5 | 7137cc1cb678e7283cb251678e04c64a |
|
BLAKE2b-256 | 3cb2226feccd7832500924a1d378840c59d50d5b03bbe08869176e0158662750 |