##// END OF EJS Templates
revlog: subclass the new `repository.iverifyproblem` Protocol class...
revlog: subclass the new `repository.iverifyproblem` Protocol class This is the same transformation as 3a90a6fd710d did for dirstate, but the CamelCase naming was already cleaned up here. We shouldn't have to explicitly subclass, but I'm doing so to test the interplay of regular attributes and the `attrs` class. Also, PyCharm has a nifty feature that puts a jump point in the gutter to navigate back and forth between the base class and subclasses (and override functions and base class functions) when there's an explicit subclassing. Additionally, PyCharm will immediately flag signature mismatches without a 40m pytype run.

File last commit:

r49515:7ee07e1a default
r53365:4ef6dbc2 default
Show More
test-narrow-sparse.t
98 lines | 2.1 KiB | text/troff | Tads3Lexer
/ tests / test-narrow-sparse.t
Testing interaction of sparse and narrow when both are enabled on the client
side and we do a non-ellipsis clone
#testcases tree flat
$ . "$TESTDIR/narrow-library.sh"
$ cat << EOF >> $HGRCPATH
> [extensions]
> sparse =
> EOF
#if tree
$ cat << EOF >> $HGRCPATH
> [experimental]
> treemanifest = 1
> EOF
#endif
$ hg init master
$ cd master
$ mkdir inside
$ echo 'inside' > inside/f
$ hg add inside/f
$ hg commit -m 'add inside'
$ mkdir widest
$ echo 'widest' > widest/f
$ hg add widest/f
$ hg commit -m 'add widest'
$ mkdir outside
$ echo 'outside' > outside/f
$ hg add outside/f
$ hg commit -m 'add outside'
$ cd ..
narrow clone the inside file
$ hg clone --narrow ssh://user@dummy/master narrow --include inside/f
requesting all changes
adding changesets
adding manifests
adding file changes
added 3 changesets with 1 changes to 1 files
new changesets *:* (glob)
updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd narrow
$ hg tracked
I path:inside/f
$ hg files
inside/f
XXX: we should have a flag in `hg debugsparse` to list the sparse profile
$ test -f .hg/sparse
[1]
$ hg debugrequires
dotencode
dirstate-v2 (dirstate-v2 !)
fncache
generaldelta
narrowhg-experimental
persistent-nodemap (rust !)
revlog-compression-zstd (zstd !)
revlogv1
share-safe
sparserevlog
store
treemanifest (tree !)
$ hg debugrebuilddirstate
We only make the following assertions for the flat test case since in the
treemanifest test case debugsparse fails with "path ends in directory
separator: outside/" which seems like a bug unrelated to the regression this is
testing for.
#if flat
widening with both sparse and narrow is possible
$ cat >> .hg/hgrc <<EOF
> [extensions]
> sparse =
> narrow =
> EOF
$ hg debugsparse -X outside/f -X widest/f
$ hg tracked -q --addinclude outside/f
$ find . -name .hg -prune -o -type f -print | sort
./inside/f
$ hg debugsparse -d outside/f
$ find . -name .hg -prune -o -type f -print | sort
./inside/f
./outside/f
#endif