Skip to main content

resettabletimer

CI Release

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

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)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

resettabletimer-1.0.0-py3-none-any.whl (4.0 kB view details)

Uploaded Python 3

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

Hashes for resettabletimer-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a2ca68f40b8743f825118fec9a5a769a78790ce2351bacf8f79e6c3eb9ca7a22
MD5 541ee88be619e91959b2c08a9da6aec3
BLAKE2b-256 875f7c7dc782c934d1a6c8af64b2b9a37541b995da02ec238f06a9b088df41e8

See more details on using hashes here.

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

Hashes for resettabletimer-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 37409ccb6899dc997d96e8692741af091880e172ac62724cf289e406d6d622d1
MD5 7137cc1cb678e7283cb251678e04c64a
BLAKE2b-256 3cb2226feccd7832500924a1d378840c59d50d5b03bbe08869176e0158662750

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 files

0.7.0

1 file

0.6.3

1 file

0.6.2

1 file

0.6.1

1 file

0.6.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page