##// END OF EJS Templates
tests: fix builtin module test on pypy...
tests: fix builtin module test on pypy On pypy datetime and cProfile are modules written in Python, not in C. For the purpose of this test, just list them explicitely as builtins, which silences warnings about them being imported before stdlib modules.

File last commit:

r27284:f624b0e6 default
r28713:806d260c default
Show More
fakepatchtime.py
32 lines | 999 B | text/x-python | PythonLexer
FUJIWARA Katsunori
tests: add extension to emulate invoking internalpatch at the specific time...
r25756 # extension to emulate invoking 'patch.internalpatch()' at the time
# specified by '[fakepatchtime] fakenow'
Gregory Szorc
tests/fakepatchtime.py: use absolute_import
r27284 from __future__ import absolute_import
from mercurial import (
extensions,
patch as patchmod,
util,
)
FUJIWARA Katsunori
tests: add extension to emulate invoking internalpatch at the specific time...
r25756
def internalpatch(orig, ui, repo, patchobj, strip,
prefix='', files=None,
eolmode='strict', similarity=0):
if files is None:
files = set()
r = orig(ui, repo, patchobj, strip,
prefix=prefix, files=files,
eolmode=eolmode, similarity=similarity)
fakenow = ui.config('fakepatchtime', 'fakenow')
if fakenow:
# parsing 'fakenow' in YYYYmmddHHMM format makes comparison between
# 'fakenow' value and 'touch -t YYYYmmddHHMM' argument easy
fakenow = util.parsedate(fakenow, ['%Y%m%d%H%M'])[0]
for f in files:
repo.wvfs.utime(f, (fakenow, fakenow))
return r
def extsetup(ui):
extensions.wrapfunction(patchmod, 'internalpatch', internalpatch)