Mercurial > hg
view tests/test-doctest.py @ 33279:7912404b70f2
transaction: apply checkambig=True only on limited files for similarity
Now, transaction can determine whether avoidance of file stat
ambiguity is needed for each files, by blacklist "checkambigfiles".
For similarity to truncation in _playback(), this patch apply
checkambig=True only on limited files in code paths below.
- restoring files by util.copyfile(), in _playback()
(checkambigfiles itself is examined at first, because it as a
keyword argument might be None)
- writing files at finalization of transaction, in _generatefiles()
This patch reduces cost of checking stat at writing out and restoring
files, which aren't filecache-ed.
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Tue, 04 Jul 2017 23:13:47 +0900 |
parents | 05abc47f3746 |
children | 52ec9ac0303b |
line wrap: on
line source
# this is hack to make sure no escape characters are inserted into the output from __future__ import absolute_import import doctest import os import sys ispy3 = (sys.version_info[0] >= 3) if 'TERM' in os.environ: del os.environ['TERM'] # TODO: migrate doctests to py3 and enable them on both versions def testmod(name, optionflags=0, testtarget=None, py2=True, py3=False): if not (not ispy3 and py2 or ispy3 and py3): return __import__(name) mod = sys.modules[name] if testtarget is not None: mod = getattr(mod, testtarget) doctest.testmod(mod, optionflags=optionflags) testmod('mercurial.changegroup') testmod('mercurial.changelog') testmod('mercurial.color') testmod('mercurial.config') testmod('mercurial.context') testmod('mercurial.dagparser', optionflags=doctest.NORMALIZE_WHITESPACE) testmod('mercurial.dispatch') testmod('mercurial.encoding') testmod('mercurial.formatter') testmod('mercurial.hg') testmod('mercurial.hgweb.hgwebdir_mod') testmod('mercurial.match') testmod('mercurial.mdiff') testmod('mercurial.minirst') testmod('mercurial.patch') testmod('mercurial.pathutil') testmod('mercurial.parser') testmod('mercurial.pycompat', py3=True) testmod('mercurial.revsetlang') testmod('mercurial.smartset') testmod('mercurial.store') testmod('mercurial.subrepo') testmod('mercurial.templatefilters') testmod('mercurial.templater') testmod('mercurial.ui') testmod('mercurial.url') testmod('mercurial.util') testmod('mercurial.util', testtarget='platform') testmod('hgext.convert.convcmd') testmod('hgext.convert.cvsps') testmod('hgext.convert.filemap') testmod('hgext.convert.p4') testmod('hgext.convert.subversion') testmod('hgext.mq')