##// END OF EJS Templates
tests: make tests work if directory contains special characters...
tests: make tests work if directory contains special characters With this quoting tests will work e.g. in "/tmp/foo bar/mercurial/".

File last commit:

r15446:c5c9ca37 default
r16350:4f795f5f stable
Show More
test-wireproto.t
114 lines | 9.0 KiB | text/troff | Tads3Lexer
Mads Kiilerich
tests: use 'hghave serve' to guard tests that requires serve daemon management
r15446 $ "$TESTDIR/hghave" serve || exit 80
Peter Arrenbrecht
debug: add debugwireargs to test argument passing over the wire...
r13720
Test wire protocol argument passing
Setup repo:
$ hg init repo
Local:
Peter Arrenbrecht
wireproto: fix handling of '*' args for HTTP and SSH
r13721 $ hg debugwireargs repo eins zwei --three drei --four vier
Peter Arrenbrecht
wireproto: add test for new optional arg missing on server...
r14048 eins zwei drei vier None
Peter Arrenbrecht
wireproto: fix handling of '*' args for HTTP and SSH
r13721 $ hg debugwireargs repo eins zwei --four vier
Peter Arrenbrecht
wireproto: add test for new optional arg missing on server...
r14048 eins zwei None vier None
Peter Arrenbrecht
debug: add debugwireargs to test argument passing over the wire...
r13720 $ hg debugwireargs repo eins zwei
Peter Arrenbrecht
wireproto: add test for new optional arg missing on server...
r14048 eins zwei None None None
$ hg debugwireargs repo eins zwei --five fuenf
eins zwei None None fuenf
Peter Arrenbrecht
debug: add debugwireargs to test argument passing over the wire...
r13720
HTTP:
$ hg serve -R repo -p $HGPORT -d --pid-file=hg1.pid -E error.log -A access.log
$ cat hg1.pid >> $DAEMON_PIDS
Peter Arrenbrecht
wireproto: fix handling of '*' args for HTTP and SSH
r13721 $ hg debugwireargs http://localhost:$HGPORT/ un deux trois quatre
Peter Arrenbrecht
wireproto: add test for new optional arg missing on server...
r14048 un deux trois quatre None
Steven Brown
httprepo: long arguments support (issue2126)...
r14093 $ hg debugwireargs http://localhost:$HGPORT/ \ un deux trois\ qu\ \ atre
un deux trois qu atre None
Peter Arrenbrecht
wireproto: fix handling of '*' args for HTTP and SSH
r13721 $ hg debugwireargs http://localhost:$HGPORT/ eins zwei --four vier
Peter Arrenbrecht
wireproto: add test for new optional arg missing on server...
r14048 eins zwei None vier None
Peter Arrenbrecht
debug: add debugwireargs to test argument passing over the wire...
r13720 $ hg debugwireargs http://localhost:$HGPORT/ eins zwei
Peter Arrenbrecht
wireproto: add test for new optional arg missing on server...
r14048 eins zwei None None None
$ hg debugwireargs http://localhost:$HGPORT/ eins zwei --five fuenf
eins zwei None None None
Steven Brown
httprepo: long arguments support (issue2126)...
r14093 $ hg debugwireargs http://localhost:$HGPORT/ un deux trois onethousandcharactersxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
un deux trois onethousandcharactersxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx None
$ cat error.log
Peter Arrenbrecht
debug: add debugwireargs to test argument passing over the wire...
r13720 $ cat access.log
* - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
Matt Mackall
http: minor tweaks to long arg handling...
r14094 * - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:four=quatre&one=un&three=trois&two=deux (glob)
* - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:four=quatre&one=un&three=trois&two=deux (glob)
Steven Brown
httprepo: long arguments support (issue2126)...
r14093 * - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
Matt Mackall
http: minor tweaks to long arg handling...
r14094 * - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:four=qu++atre&one=+un&three=trois+&two=deux (glob)
* - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:four=qu++atre&one=+un&three=trois+&two=deux (glob)
Steven Brown
httprepo: long arguments support (issue2126)...
r14093 * - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
Matt Mackall
http: minor tweaks to long arg handling...
r14094 * - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:four=vier&one=eins&two=zwei (glob)
* - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:four=vier&one=eins&two=zwei (glob)
Steven Brown
httprepo: long arguments support (issue2126)...
r14093 * - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
Matt Mackall
http: minor tweaks to long arg handling...
r14094 * - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:one=eins&two=zwei (glob)
* - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:one=eins&two=zwei (glob)
Steven Brown
httprepo: long arguments support (issue2126)...
r14093 * - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
Matt Mackall
http: minor tweaks to long arg handling...
r14094 * - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:one=eins&two=zwei (glob)
* - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:one=eins&two=zwei (glob)
Steven Brown
httprepo: long arguments support (issue2126)...
r14093 * - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
Matt Mackall
http: minor tweaks to long arg handling...
r14094 * - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:four=onethousandcharactersxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&one x-hgarg-2:=un&three=trois&two=deux (glob)
* - - [*] "GET /?cmd=debugwireargs HTTP/1.1" 200 - x-hgarg-1:four=onethousandcharactersxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&one x-hgarg-2:=un&three=trois&two=deux (glob)
Steven Brown
httprepo: long arguments support (issue2126)...
r14093
HTTP without the httpheader capability:
$ HGRCPATH="`pwd`/repo/.hgrc"
Mads Kiilerich
tests: HGRCPATH must be exported after assignment...
r14734 $ export HGRCPATH
Steven Brown
httprepo: long arguments support (issue2126)...
r14093 $ CAP=httpheader
$ . "$TESTDIR/notcapable"
$ hg serve -R repo -p $HGPORT2 -d --pid-file=hg2.pid -E error2.log -A access2.log
$ cat hg2.pid >> $DAEMON_PIDS
$ hg debugwireargs http://localhost:$HGPORT2/ un deux trois quatre
un deux trois quatre None
$ hg debugwireargs http://localhost:$HGPORT2/ eins zwei --four vier
eins zwei None vier None
$ hg debugwireargs http://localhost:$HGPORT2/ eins zwei
eins zwei None None None
$ hg debugwireargs http://localhost:$HGPORT2/ eins zwei --five fuenf
eins zwei None None None
$ cat error2.log
$ cat access2.log
* - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
Peter Arrenbrecht
wireproto: fix handling of '*' args for HTTP and SSH
r13721 * - - [*] "GET /?cmd=debugwireargs&four=quatre&one=un&three=trois&two=deux HTTP/1.1" 200 - (glob)
* - - [*] "GET /?cmd=debugwireargs&four=quatre&one=un&three=trois&two=deux HTTP/1.1" 200 - (glob)
* - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
* - - [*] "GET /?cmd=debugwireargs&four=vier&one=eins&two=zwei HTTP/1.1" 200 - (glob)
* - - [*] "GET /?cmd=debugwireargs&four=vier&one=eins&two=zwei HTTP/1.1" 200 - (glob)
* - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
Peter Arrenbrecht
debug: add debugwireargs to test argument passing over the wire...
r13720 * - - [*] "GET /?cmd=debugwireargs&one=eins&two=zwei HTTP/1.1" 200 - (glob)
* - - [*] "GET /?cmd=debugwireargs&one=eins&two=zwei HTTP/1.1" 200 - (glob)
Peter Arrenbrecht
wireproto: add test for new optional arg missing on server...
r14048 * - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
* - - [*] "GET /?cmd=debugwireargs&one=eins&two=zwei HTTP/1.1" 200 - (glob)
* - - [*] "GET /?cmd=debugwireargs&one=eins&two=zwei HTTP/1.1" 200 - (glob)
Peter Arrenbrecht
debug: add debugwireargs to test argument passing over the wire...
r13720
SSH (try to exercise the ssh functionality with a dummy script):
$ cat <<EOF > dummyssh
> import sys
> import os
> os.chdir(os.path.dirname(sys.argv[0]))
> if sys.argv[1] != "user@dummy":
> sys.exit(-1)
> if not os.path.exists("dummyssh"):
> sys.exit(-1)
> os.environ["SSH_CLIENT"] = "127.0.0.1 1 2"
> r = os.system(sys.argv[2])
> sys.exit(bool(r))
> EOF
Peter Arrenbrecht
wireproto: fix handling of '*' args for HTTP and SSH
r13721 $ hg debugwireargs --ssh "python ./dummyssh" ssh://user@dummy/repo uno due tre quattro
Peter Arrenbrecht
wireproto: add test for new optional arg missing on server...
r14048 uno due tre quattro None
Peter Arrenbrecht
wireproto: fix handling of '*' args for HTTP and SSH
r13721 $ hg debugwireargs --ssh "python ./dummyssh" ssh://user@dummy/repo eins zwei --four vier
Peter Arrenbrecht
wireproto: add test for new optional arg missing on server...
r14048 eins zwei None vier None
Peter Arrenbrecht
debug: add debugwireargs to test argument passing over the wire...
r13720 $ hg debugwireargs --ssh "python ./dummyssh" ssh://user@dummy/repo eins zwei
Peter Arrenbrecht
wireproto: add test for new optional arg missing on server...
r14048 eins zwei None None None
$ hg debugwireargs --ssh "python ./dummyssh" ssh://user@dummy/repo eins zwei --five fuenf
eins zwei None None None
Peter Arrenbrecht
debug: add debugwireargs to test argument passing over the wire...
r13720