Mercurial > hg
view mercurial/testing/__init__.py @ 46984:99c629101b73
testing: add a utility function to wait for file create
This is similar to `tests/testlib/wait-on-file`, but for the python code
Differential Revision: https://phab.mercurial-scm.org/D10476
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 19 Apr 2021 19:10:18 +0200 |
parents | ae531f5e583c |
children | 52cee44aa1a0 |
line wrap: on
line source
from __future__ import ( absolute_import, division, ) import os import time # work around check-code complains # # This is a simple log level module doing simple test related work, we can't # import more things, and we do not need it. environ = getattr(os, 'environ') def _timeout_factor(): """return the current modification to timeout""" default = int(environ.get('HGTEST_TIMEOUT_DEFAULT', 1)) current = int(environ.get('HGTEST_TIMEOUT', default)) return current / float(default) def wait_file(path, timeout=10): timeout *= _timeout_factor() start = time.time() while not os.path.exists(path): if time.time() - start > timeout: raise RuntimeError(b"timed out waiting for file: %s" % path) time.sleep(0.01)