##// END OF EJS Templates
errors: stop passing non-strings to Abort's constructor...
errors: stop passing non-strings to Abort's constructor The next patch will change `Abort`'s constructor and `__bytes__` functions and they will start assuming that the first argument is the messages as `bytes`. Differential Revision: https://phab.mercurial-scm.org/D9178

File last commit:

r40462:30a7d3b6 default
r46273:a736ab68 default
Show More
test-narrow-clone-non-narrow-server.t
67 lines | 2.0 KiB | text/troff | Tads3Lexer
/ tests / test-narrow-clone-non-narrow-server.t
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096 Test attempting a narrow clone against a server that doesn't support narrowhg.
$ . "$TESTDIR/narrow-library.sh"
$ hg init master
$ cd master
$ for x in `$TESTDIR/seq.py 10`; do
> echo $x > "f$x"
> hg add "f$x"
> hg commit -m "Add $x"
> done
$ hg serve -a localhost -p $HGPORT1 --config extensions.narrow=! -d \
> --pid-file=hg.pid
$ cat hg.pid >> "$DAEMON_PIDS"
$ hg serve -a localhost -p $HGPORT2 -d --pid-file=hg.pid
$ cat hg.pid >> "$DAEMON_PIDS"
Verify that narrow is advertised in the bundle2 capabilities:
Pulkit Goyal
py3: use urllib.parse.unquote_plus instead of urllib.unquote_plus...
r37679
$ cat >> unquote.py <<EOF
> from __future__ import print_function
> import sys
> if sys.version[0] == '3':
> import urllib.parse as up
> unquote = up.unquote_plus
> else:
> import urllib
> unquote = urllib.unquote_plus
> print(unquote(list(sys.stdin)[1]))
> EOF
Augie Fackler
tests: use `hello` not `capabilities` over ssh...
r36120 $ echo hello | hg -R . serve --stdio | \
av6
tests: split capabilities into separate lines while searching for "narrow"...
r39756 > "$PYTHON" unquote.py | tr ' ' '\n' | grep narrow
exp-narrow-1
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096
$ cd ..
$ hg clone --narrow --include f1 http://localhost:$HGPORT1/ narrowclone
requesting all changes
Pulkit Goyal
narrow: check for servers' narrow support before doing anything (BC)...
r40000 abort: server does not support narrow clones
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096 [255]
Make a narrow clone (via HGPORT2), then try to narrow and widen
into it (from HGPORT1) to prove that narrowing is fine and widening fails
gracefully:
$ hg clone -r 0 --narrow --include f1 http://localhost:$HGPORT2/ narrowclone
adding changesets
adding manifests
adding file changes
added 1 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 narrowclone
$ hg tracked --addexclude f2 http://localhost:$HGPORT1/
comparing with http://localhost:$HGPORT1/
searching for changes
looking for local changes to affected paths
Pulkit Goyal
narrow: rework logic to check whether we need to widen and narrow...
r40462
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096 $ hg tracked --addinclude f1 http://localhost:$HGPORT1/
Pulkit Goyal
narrow: rework logic to check whether we need to widen and narrow...
r40462 nothing to widen or narrow
$ hg tracked --addinclude f9 http://localhost:$HGPORT1/
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096 comparing with http://localhost:$HGPORT1/
Pulkit Goyal
narrow: check for servers' narrow support before doing anything (BC)...
r40000 abort: server does not support narrow clones
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096 [255]