Mercurial > hg
view tests/pullext.py @ 48642:009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
This test case is now less sensitive to change of unrelated bits of the
client/server exchange.
Since this introduce some churn in the output, we do it independently for each
test cases. This patch is the last of such changes, for both sent and recv
cases.
Differential Revision: https://phab.mercurial-scm.org/D12073
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Fri, 21 Jan 2022 19:57:47 +0100 |
parents | 77b8588dd84e |
children | 6000f5b25c9b |
line wrap: on
line source
# pullext.py - Simple extension to test pulling # # Copyright 2018 Gregory Szorc <gregory.szorc@gmail.com> # # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. from __future__ import absolute_import from mercurial.i18n import _ from mercurial import ( commands, error, extensions, localrepo, requirements, ) def clonecommand(orig, ui, repo, *args, **kwargs): if kwargs.get('include') or kwargs.get('exclude'): kwargs['narrow'] = True if kwargs.get('depth'): try: kwargs['depth'] = int(kwargs['depth']) except ValueError: raise error.Abort(_('--depth must be an integer')) return orig(ui, repo, *args, **kwargs) def featuresetup(ui, features): features.add(requirements.NARROW_REQUIREMENT) def extsetup(ui): entry = extensions.wrapcommand(commands.table, b'clone', clonecommand) hasinclude = any(x[1] == b'include' for x in entry[1]) hasdepth = any(x[1] == b'depth' for x in entry[1]) if not hasinclude: entry[1].append( (b'', b'include', [], _(b'pattern of file/directory to clone')) ) entry[1].append( (b'', b'exclude', [], _(b'pattern of file/directory to not clone')) ) if not hasdepth: entry[1].append( (b'', b'depth', b'', _(b'ancestry depth of changesets to fetch')) ) localrepo.featuresetupfuncs.add(featuresetup)