Mercurial > hg
view tests/lockdelay.py @ 31540:6d5b77abf306
util: add tryunlink function
Throughout mercurial cdoe, there is a common pattern of attempting to remove
a file and ignoring ENOENT errors. Let's move this into a common function to
allow for cleaner code.
author | Ryan McElroy <rmcelroy@fb.com> |
---|---|
date | Tue, 21 Mar 2017 06:50:28 -0700 |
parents | a76d5ba7ac43 |
children | 2372284d9457 |
line wrap: on
line source
# Dummy extension that adds a delay after acquiring a lock. # # This extension can be used to test race conditions between lock acquisition. from __future__ import absolute_import import os import time def reposetup(ui, repo): class delayedlockrepo(repo.__class__): def lock(self): delay = float(os.environ.get('HGPRELOCKDELAY', '0.0')) if delay: time.sleep(delay) res = super(delayedlockrepo, self).lock() delay = float(os.environ.get('HGPOSTLOCKDELAY', '0.0')) if delay: time.sleep(delay) return res repo.__class__ = delayedlockrepo