--- a/tests/test-narrow-expanddirstate.t Fri Dec 21 09:48:30 2018 -0800
+++ b/tests/test-narrow-expanddirstate.t Sat Oct 27 22:56:31 2018 -0700
@@ -56,9 +56,13 @@
> from mercurial import patch
> from mercurial import util as hgutil
>
+ > narrowspecexpanded = False
> def expandnarrowspec(ui, repo, newincludes=None):
> if not newincludes:
> return
+ > if getattr(repo, '_narrowspecexpanded', False):
+ > return
+ > repo._narrowspecexpanded = True
> import sys
> newincludes = set([newincludes])
> includes, excludes = repo.narrowpats
@@ -72,24 +76,14 @@
> for f in repo[b'.'].manifest().walk(added):
> repo.dirstate.normallookup(f)
>
- > def wrapds(ui, repo, ds):
- > class expandingdirstate(ds.__class__):
- > @hgutil.propertycache
- > def _map(self):
- > ret = super(expandingdirstate, self)._map
+ > def reposetup(ui, repo):
+ > class expandingrepo(repo.__class__):
+ > def narrowmatch(self, *args, **kwargs):
> with repo.wlock(), repo.lock(), repo.transaction(
> b'expandnarrowspec'):
> expandnarrowspec(ui, repo,
> encoding.environ.get(b'DIRSTATEINCLUDES'))
- > return ret
- > ds.__class__ = expandingdirstate
- > return ds
- >
- > def reposetup(ui, repo):
- > class expandingrepo(repo.__class__):
- > def _makedirstate(self):
- > dirstate = super(expandingrepo, self)._makedirstate()
- > return wrapds(ui, repo, dirstate)
+ > return super(expandingrepo, self).narrowmatch(*args, **kwargs)
> repo.__class__ = expandingrepo
>
> def extsetup(unused_ui):