better no-cover for windows

This commit is contained in:
Anthony Sottile 2018-12-27 17:31:25 -08:00
parent 8c550d0157
commit 2af0b0b4f3
6 changed files with 11 additions and 15 deletions

View file

@ -41,14 +41,14 @@ try: # pragma: no cover (windows)
# "Regions should be locked only briefly and should be unlocked
# before closing a file or exiting the program."
msvcrt.locking(fileno, msvcrt.LK_UNLCK, _region)
except ImportError: # pragma: no cover (posix)
except ImportError: # pragma: windows no cover
import fcntl
@contextlib.contextmanager
def _locked(fileno, blocked_cb):
try:
fcntl.flock(fileno, fcntl.LOCK_EX | fcntl.LOCK_NB)
except IOError:
except IOError: # pragma: no cover (tests are single-threaded)
blocked_cb()
fcntl.flock(fileno, fcntl.LOCK_EX)
try: