Mercurial > hg
annotate tests/test-http.t @ 35074:62e10bf001a9
test-pattern: actually update tests using the patterns
We mass update the tests now. This will help the next soul touching the http
protocol.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Sun, 05 Nov 2017 08:23:12 +0100 |
parents | eb586ed5d8ce |
children | 1b22d325089c |
rev | line source |
---|---|
31936
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
1 #require killdaemons serve |
2612
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
2 |
12446 | 3 $ hg init test |
4 $ cd test | |
5 $ echo foo>foo | |
6 $ mkdir foo.d foo.d/bAr.hg.d foo.d/baR.d.hg | |
7 $ echo foo>foo.d/foo | |
8 $ echo bar>foo.d/bAr.hg.d/BaR | |
9 $ echo bar>foo.d/baR.d.hg/bAR | |
10 $ hg commit -A -m 1 | |
11 adding foo | |
12 adding foo.d/bAr.hg.d/BaR | |
13 adding foo.d/baR.d.hg/bAR | |
14 adding foo.d/foo | |
13445
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
15 $ hg serve -p $HGPORT -d --pid-file=../hg1.pid -E ../error.log |
28549 | 16 $ hg serve --config server.uncompressed=False -p $HGPORT1 -d --pid-file=../hg2.pid |
12446 | 17 |
18 Test server address cannot be reused | |
4289
e17598881509
test-http: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4130
diff
changeset
|
19 |
17023
3e2d8120528b
test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17018
diff
changeset
|
20 #if windows |
3e2d8120528b
test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17018
diff
changeset
|
21 $ hg serve -p $HGPORT1 2>&1 |
31768
49e9124cfc23
test-http: update output for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
31747
diff
changeset
|
22 abort: cannot start server at 'localhost:$HGPORT1': * (glob) |
17023
3e2d8120528b
test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17018
diff
changeset
|
23 [255] |
3e2d8120528b
test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17018
diff
changeset
|
24 #else |
12446 | 25 $ hg serve -p $HGPORT1 2>&1 |
31009
161ab32b44a1
runtests: set web.address to localhost
Jun Wu <quark@fb.com>
parents:
30914
diff
changeset
|
26 abort: cannot start server at 'localhost:$HGPORT1': Address already in use |
12446 | 27 [255] |
17023
3e2d8120528b
test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17018
diff
changeset
|
28 #endif |
12446 | 29 $ cd .. |
30 $ cat hg1.pid hg2.pid >> $DAEMON_PIDS | |
31 | |
32 clone via stream | |
9506
49b62395e910
streamclone: partially encode filename over the wire, not for local read (issue1847)
Greg Ward <greg-hg@gerg.ca>
parents:
8167
diff
changeset
|
33 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
34 $ hg clone --stream http://localhost:$HGPORT/ copy 2>&1 |
12446 | 35 streaming all changes |
36 6 files to transfer, 606 bytes of data | |
14023
2cd1520664b8
tests: check for (*/sec) instead of (*B/sec) to match (X bytes/sec)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13445
diff
changeset
|
37 transferred * bytes in * seconds (*/sec) (glob) |
23116
2dc6b7917cdf
clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents:
22960
diff
changeset
|
38 searching for changes |
2dc6b7917cdf
clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents:
22960
diff
changeset
|
39 no changes found |
12446 | 40 updating to branch default |
41 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
42 $ hg verify -R copy | |
43 checking changesets | |
44 checking manifests | |
45 crosschecking files in changesets and manifests | |
46 checking files | |
47 4 files, 1 changesets, 4 total revisions | |
48 | |
49 try to clone via stream, should use pull instead | |
2612
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
50 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
51 $ hg clone --stream http://localhost:$HGPORT1/ copy2 |
32259
076f1ff43f0f
clone: warn when streaming was requested but couldn't be performed
Siddharth Agarwal <sid0@fb.com>
parents:
32258
diff
changeset
|
52 warning: stream clone requested but server has them disabled |
12446 | 53 requesting all changes |
54 adding changesets | |
55 adding manifests | |
56 adding file changes | |
57 added 1 changesets with 4 changes to 4 files | |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
58 new changesets 8b6053c928fe |
12446 | 59 updating to branch default |
60 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
2612
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
61 |
32258
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
62 try to clone via stream but missing requirements, so should use pull instead |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
63 |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
64 $ cat > $TESTTMP/removesupportedformat.py << EOF |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
65 > from mercurial import localrepo |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
66 > def extsetup(ui): |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
67 > localrepo.localrepository.supportedformats.remove('generaldelta') |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
68 > EOF |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
69 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
70 $ hg clone --config extensions.rsf=$TESTTMP/removesupportedformat.py --stream http://localhost:$HGPORT/ copy3 |
32259
076f1ff43f0f
clone: warn when streaming was requested but couldn't be performed
Siddharth Agarwal <sid0@fb.com>
parents:
32258
diff
changeset
|
71 warning: stream clone requested but client is missing requirements: generaldelta |
076f1ff43f0f
clone: warn when streaming was requested but couldn't be performed
Siddharth Agarwal <sid0@fb.com>
parents:
32258
diff
changeset
|
72 (see https://www.mercurial-scm.org/wiki/MissingRequirement for more information) |
32258
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
73 requesting all changes |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
74 adding changesets |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
75 adding manifests |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
76 adding file changes |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
77 added 1 changesets with 4 changes to 4 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
78 new changesets 8b6053c928fe |
32258
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
79 updating to branch default |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
80 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
81 |
12446 | 82 clone via pull |
2673
109a22f5434a
hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2622
diff
changeset
|
83 |
12446 | 84 $ hg clone http://localhost:$HGPORT1/ copy-pull |
85 requesting all changes | |
86 adding changesets | |
87 adding manifests | |
88 adding file changes | |
89 added 1 changesets with 4 changes to 4 files | |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
90 new changesets 8b6053c928fe |
12446 | 91 updating to branch default |
92 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
93 $ hg verify -R copy-pull | |
94 checking changesets | |
95 checking manifests | |
96 crosschecking files in changesets and manifests | |
97 checking files | |
98 4 files, 1 changesets, 4 total revisions | |
99 $ cd test | |
100 $ echo bar > bar | |
101 $ hg commit -A -d '1 0' -m 2 | |
102 adding bar | |
103 $ cd .. | |
2673
109a22f5434a
hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2622
diff
changeset
|
104 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
105 clone over http with --update |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
106 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
107 $ hg clone http://localhost:$HGPORT1/ updated --update 0 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
108 requesting all changes |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
109 adding changesets |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
110 adding manifests |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
111 adding file changes |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
112 added 2 changesets with 5 changes to 5 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
113 new changesets 8b6053c928fe:5fed3813f7f5 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
114 updating to branch default |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
115 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
116 $ hg log -r . -R updated |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
117 changeset: 0:8b6053c928fe |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
118 user: test |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
119 date: Thu Jan 01 00:00:00 1970 +0000 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
120 summary: 1 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
121 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
122 $ rm -rf updated |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
123 |
14161
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
124 incoming via HTTP |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
125 |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
126 $ hg clone http://localhost:$HGPORT1/ --rev 0 partial |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
127 adding changesets |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
128 adding manifests |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
129 adding file changes |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
130 added 1 changesets with 4 changes to 4 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
131 new changesets 8b6053c928fe |
14161
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
132 updating to branch default |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
133 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
134 $ cd partial |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
135 $ touch LOCAL |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
136 $ hg ci -qAm LOCAL |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
137 $ hg incoming http://localhost:$HGPORT1/ --template '{desc}\n' |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
138 comparing with http://localhost:$HGPORT1/ |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
139 searching for changes |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
140 2 |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
141 $ cd .. |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
142 |
12446 | 143 pull |
144 | |
145 $ cd copy-pull | |
30234
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29564
diff
changeset
|
146 $ cat >> .hg/hgrc <<EOF |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29564
diff
changeset
|
147 > [hooks] |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29564
diff
changeset
|
148 > changegroup = sh -c "printenv.py changegroup" |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29564
diff
changeset
|
149 > EOF |
12446 | 150 $ hg pull |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12446
diff
changeset
|
151 pulling from http://localhost:$HGPORT1/ |
12446 | 152 searching for changes |
153 adding changesets | |
154 adding manifests | |
155 adding file changes | |
156 added 1 changesets with 1 changes to 1 files | |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
157 new changesets 5fed3813f7f5 |
31747
aff7b32b3c05
hook: add hook name information to external hook
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31746
diff
changeset
|
158 changegroup hook: HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=5fed3813f7f5e1824344fdc9cf8f63bb662c292d HG_NODE_LAST=5fed3813f7f5e1824344fdc9cf8f63bb662c292d HG_SOURCE=pull HG_TXNID=TXN:$ID$ HG_URL=http://localhost:$HGPORT1/ |
12446 | 159 (run 'hg update' to get a working copy) |
160 $ cd .. | |
13445
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
161 |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
162 clone from invalid URL |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
163 |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
164 $ hg clone http://localhost:$HGPORT/bad |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
165 abort: HTTP Error 404: Not Found |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
166 [255] |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
167 |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
168 test http authentication |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
169 + use the same server to test server side streaming preference |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
170 |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
171 $ cd test |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
172 $ cat << EOT > userpass.py |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
173 > import base64 |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
174 > from mercurial.hgweb import common |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
175 > def perform_authentication(hgweb, req, op): |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
176 > auth = req.env.get('HTTP_AUTHORIZATION') |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
177 > if not auth: |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
178 > raise common.ErrorResponse(common.HTTP_UNAUTHORIZED, 'who', |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
179 > [('WWW-Authenticate', 'Basic Realm="mercurial"')]) |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
180 > if base64.b64decode(auth.split()[1]).split(':', 1) != ['user', 'pass']: |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
181 > raise common.ErrorResponse(common.HTTP_FORBIDDEN, 'no') |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
182 > def extsetup(): |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
183 > common.permhooks.insert(0, perform_authentication) |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
184 > EOT |
28549 | 185 $ hg serve --config extensions.x=userpass.py -p $HGPORT2 -d --pid-file=pid \ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
186 > --config server.preferuncompressed=True \ |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
187 > --config web.push_ssl=False --config web.allow_push=* -A ../access.log |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
188 $ cat pid >> $DAEMON_PIDS |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
189 |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
190 $ cat << EOF > get_pass.py |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
191 > import getpass |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
192 > def newgetpass(arg): |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
193 > return "pass" |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
194 > getpass.getpass = newgetpass |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
195 > EOF |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
196 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
197 $ hg id http://localhost:$HGPORT2/ |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
198 abort: http authorization required for http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
199 [255] |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
200 $ hg id http://localhost:$HGPORT2/ |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
201 abort: http authorization required for http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
202 [255] |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
203 $ hg id --config ui.interactive=true --config extensions.getpass=get_pass.py http://user@localhost:$HGPORT2/ |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
204 http authorization required for http://localhost:$HGPORT2/ |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
205 realm: mercurial |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
206 user: user |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
207 password: 5fed3813f7f5 |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
208 $ hg id http://user:pass@localhost:$HGPORT2/ |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
209 5fed3813f7f5 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
210 $ echo '[auth]' >> .hg/hgrc |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
211 $ echo 'l.schemes=http' >> .hg/hgrc |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
212 $ echo 'l.prefix=lo' >> .hg/hgrc |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
213 $ echo 'l.username=user' >> .hg/hgrc |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
214 $ echo 'l.password=pass' >> .hg/hgrc |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
215 $ hg id http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
216 5fed3813f7f5 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
217 $ hg id http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
218 5fed3813f7f5 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
219 $ hg id http://user@localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
220 5fed3813f7f5 |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
221 $ hg clone http://user:pass@localhost:$HGPORT2/ dest 2>&1 |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
222 streaming all changes |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
223 7 files to transfer, 916 bytes of data |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
224 transferred * bytes in * seconds (*/sec) (glob) |
23116
2dc6b7917cdf
clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents:
22960
diff
changeset
|
225 searching for changes |
2dc6b7917cdf
clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents:
22960
diff
changeset
|
226 no changes found |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
227 updating to branch default |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
228 5 files updated, 0 files merged, 0 files removed, 0 files unresolved |
23546
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
229 --pull should override server's preferuncompressed |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
230 $ hg clone --pull http://user:pass@localhost:$HGPORT2/ dest-pull 2>&1 |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
231 requesting all changes |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
232 adding changesets |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
233 adding manifests |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
234 adding file changes |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
235 added 2 changesets with 5 changes to 5 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
236 new changesets 8b6053c928fe:5fed3813f7f5 |
23546
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
237 updating to branch default |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
238 5 files updated, 0 files merged, 0 files removed, 0 files unresolved |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
239 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
240 $ hg id http://user2@localhost:$HGPORT2/ |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
241 abort: http authorization required for http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
242 [255] |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
243 $ hg id http://user:pass2@localhost:$HGPORT2/ |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
244 abort: HTTP Error 403: no |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
245 [255] |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
246 |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
247 $ hg -R dest tag -r tip top |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
248 $ hg -R dest push http://user:pass@localhost:$HGPORT2/ |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
249 pushing to http://user:***@localhost:$HGPORT2/ |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
250 searching for changes |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
251 remote: adding changesets |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
252 remote: adding manifests |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
253 remote: adding file changes |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
254 remote: added 1 changesets with 1 changes to 1 files |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
255 $ hg rollback -q |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
256 |
29564
db565a506729
test-http: use sed instead of fixed-with cut for reading access.log
Augie Fackler <augie@google.com>
parents:
29064
diff
changeset
|
257 $ sed 's/.*] "/"/' < ../access.log |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
258 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
259 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
260 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
261 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
262 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
263 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
264 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
265 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
266 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
267 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
268 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
269 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
270 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
271 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
272 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
273 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
274 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
275 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
276 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
277 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
278 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
279 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
280 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
281 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
282 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
283 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
284 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
285 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
286 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
287 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
288 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
289 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
290 "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
291 "GET /?cmd=stream_out HTTP/1.1" 401 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
292 "GET /?cmd=stream_out HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
293 "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D5fed3813f7f5e1824344fdc9cf8f63bb662c292d x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
294 "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:$USUAL_BUNDLE_CAPS$&cg=0&common=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
295 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
296 "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
297 "GET /?cmd=getbundle HTTP/1.1" 401 - x-hgarg-1:$USUAL_BUNDLE_CAPS$&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
298 "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:$USUAL_BUNDLE_CAPS$&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
23546
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
299 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
300 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
301 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
302 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
303 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
304 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
305 "GET /?cmd=listkeys HTTP/1.1" 403 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
306 "GET /?cmd=capabilities HTTP/1.1" 200 - |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
307 "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D7f4e523d01f2cc3765ac8934da3d14db775ff872 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
308 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
309 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
310 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
311 "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
312 "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
313 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
28996 | 314 "POST /?cmd=unbundle HTTP/1.1" 200 - x-hgarg-1:heads=666f726365* (glob) |
35074
62e10bf001a9
test-pattern: actually update tests using the patterns
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
315 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
316 |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
317 $ cd .. |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
318 |
15055
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
319 clone of serve with repo in root and unserved subrepo (issue2970) |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
320 |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
321 $ hg --cwd test init sub |
17260
e432fb4b4221
tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents:
17023
diff
changeset
|
322 $ echo empty > test/sub/empty |
e432fb4b4221
tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents:
17023
diff
changeset
|
323 $ hg --cwd test/sub add empty |
e432fb4b4221
tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents:
17023
diff
changeset
|
324 $ hg --cwd test/sub commit -qm 'add empty' |
e432fb4b4221
tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents:
17023
diff
changeset
|
325 $ hg --cwd test/sub tag -r 0 something |
15055
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
326 $ echo sub = sub > test/.hgsub |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
327 $ hg --cwd test add .hgsub |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
328 $ hg --cwd test commit -qm 'add subrepo' |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
329 $ hg clone http://localhost:$HGPORT noslash-clone |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
330 requesting all changes |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
331 adding changesets |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
332 adding manifests |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
333 adding file changes |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
334 added 3 changesets with 7 changes to 7 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
335 new changesets 8b6053c928fe:56f9bc90cce6 |
15055
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
336 updating to branch default |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
337 abort: HTTP Error 404: Not Found |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
338 [255] |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
339 $ hg clone http://localhost:$HGPORT/ slash-clone |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
340 requesting all changes |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
341 adding changesets |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
342 adding manifests |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
343 adding file changes |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
344 added 3 changesets with 7 changes to 7 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
345 new changesets 8b6053c928fe:56f9bc90cce6 |
15055
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
346 updating to branch default |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
347 abort: HTTP Error 404: Not Found |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
348 [255] |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
349 |
13445
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
350 check error log |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
351 |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
352 $ cat error.log |
30914
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
353 |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
354 check abort error reporting while pulling/cloning |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
355 |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
356 $ $RUNTESTDIR/killdaemons.py |
34483
a6d95a8b7243
serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
34393
diff
changeset
|
357 $ hg serve -R test -p $HGPORT -d --pid-file=hg3.pid -E error.log --config extensions.crash=${TESTDIR}/crashgetbundler.py |
30914
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
358 $ cat hg3.pid >> $DAEMON_PIDS |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
359 $ hg clone http://localhost:$HGPORT/ abort-clone |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
360 requesting all changes |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
361 remote: abort: this is an exercise |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
362 abort: pull failed on remote |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
363 [255] |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
364 $ cat error.log |
31936
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
365 |
32260
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
366 disable pull-based clones |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
367 |
34483
a6d95a8b7243
serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
34393
diff
changeset
|
368 $ hg serve -R test -p $HGPORT1 -d --pid-file=hg4.pid -E error.log --config server.disablefullbundle=True |
32260
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
369 $ cat hg4.pid >> $DAEMON_PIDS |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
370 $ hg clone http://localhost:$HGPORT1/ disable-pull-clone |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
371 requesting all changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
372 remote: abort: server has pull-based clones disabled |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
373 abort: pull failed on remote |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
374 (remove --pull if specified or upgrade Mercurial) |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
375 [255] |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
376 |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
377 ... but keep stream clones working |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
378 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
379 $ hg clone --stream --noupdate http://localhost:$HGPORT1/ test-stream-clone |
32260
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
380 streaming all changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
381 * files to transfer, * of data (glob) |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
382 transferred * in * seconds (*/sec) (glob) |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
383 searching for changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
384 no changes found |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
385 $ cat error.log |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
386 |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
387 ... and also keep partial clones and pulls working |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
388 $ hg clone http://localhost:$HGPORT1 --rev 0 test-partial-clone |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
389 adding changesets |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
390 adding manifests |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
391 adding file changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
392 added 1 changesets with 4 changes to 4 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
393 new changesets 8b6053c928fe |
32260
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
394 updating to branch default |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
395 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
396 $ hg pull -R test-partial-clone |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
397 pulling from http://localhost:$HGPORT1/ |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
398 searching for changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
399 adding changesets |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
400 adding manifests |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
401 adding file changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
402 added 2 changesets with 3 changes to 3 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
403 new changesets 5fed3813f7f5:56f9bc90cce6 |
32260
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
404 (run 'hg update' to get a working copy) |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
405 |
31936
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
406 corrupt cookies file should yield a warning |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
407 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
408 $ cat > $TESTTMP/cookies.txt << EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
409 > bad format |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
410 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
411 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
412 $ hg --config auth.cookiefile=$TESTTMP/cookies.txt id http://localhost:$HGPORT/ |
32008
9a782e7e651e
test-http: add a (glob) for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
31936
diff
changeset
|
413 (error loading cookie file $TESTTMP/cookies.txt: '*/cookies.txt' does not look like a Netscape format cookies file; continuing without cookies) (glob) |
31936
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
414 56f9bc90cce6 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
415 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
416 $ killdaemons.py |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
417 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
418 Create dummy authentication handler that looks for cookies. It doesn't do anything |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
419 useful. It just raises an HTTP 500 with details about the Cookie request header. |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
420 We raise HTTP 500 because its message is printed in the abort message. |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
421 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
422 $ cat > cookieauth.py << EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
423 > from mercurial import util |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
424 > from mercurial.hgweb import common |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
425 > def perform_authentication(hgweb, req, op): |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
426 > cookie = req.env.get('HTTP_COOKIE') |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
427 > if not cookie: |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
428 > raise common.ErrorResponse(common.HTTP_SERVER_ERROR, 'no-cookie') |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
429 > raise common.ErrorResponse(common.HTTP_SERVER_ERROR, 'Cookie: %s' % cookie) |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
430 > def extsetup(): |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
431 > common.permhooks.insert(0, perform_authentication) |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
432 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
433 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
434 $ hg serve --config extensions.cookieauth=cookieauth.py -R test -p $HGPORT -d --pid-file=pid |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
435 $ cat pid > $DAEMON_PIDS |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
436 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
437 Request without cookie sent should fail due to lack of cookie |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
438 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
439 $ hg id http://localhost:$HGPORT |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
440 abort: HTTP Error 500: no-cookie |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
441 [255] |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
442 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
443 Populate a cookies file |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
444 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
445 $ cat > cookies.txt << EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
446 > # HTTP Cookie File |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
447 > # Expiration is 2030-01-01 at midnight |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
448 > .example.com TRUE / FALSE 1893456000 hgkey examplevalue |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
449 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
450 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
451 Should not send a cookie for another domain |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
452 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
453 $ hg --config auth.cookiefile=cookies.txt id http://localhost:$HGPORT/ |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
454 abort: HTTP Error 500: no-cookie |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
455 [255] |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
456 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
457 Add a cookie entry for our test server and verify it is sent |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
458 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
459 $ cat >> cookies.txt << EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
460 > localhost.local FALSE / FALSE 1893456000 hgkey localhostvalue |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
461 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
462 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
463 $ hg --config auth.cookiefile=cookies.txt id http://localhost:$HGPORT/ |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
464 abort: HTTP Error 500: Cookie: hgkey=localhostvalue |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
465 [255] |