Mercurial > hg
annotate tests/test-http.t @ 32258:9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Turns out we had no coverage for this important case.
author | Siddharth Agarwal <sid0@fb.com> |
---|---|
date | Mon, 08 May 2017 18:47:24 -0700 |
parents | 9a782e7e651e |
children | 076f1ff43f0f |
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 |
12446 | 34 $ hg clone --uncompressed http://localhost:$HGPORT/ copy 2>&1 |
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 |
12446 | 51 $ hg clone --uncompressed http://localhost:$HGPORT1/ copy2 |
52 requesting all changes | |
53 adding changesets | |
54 adding manifests | |
55 adding file changes | |
56 added 1 changesets with 4 changes to 4 files | |
57 updating to branch default | |
58 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
|
59 |
32258
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
60 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
|
61 |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
62 $ cat > $TESTTMP/removesupportedformat.py << EOF |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
63 > from mercurial import localrepo |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
64 > def extsetup(ui): |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
65 > localrepo.localrepository.supportedformats.remove('generaldelta') |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
66 > EOF |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
67 |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
68 $ hg clone --config extensions.rsf=$TESTTMP/removesupportedformat.py --uncompressed http://localhost:$HGPORT/ copy3 |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
69 requesting all changes |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
70 adding changesets |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
71 adding manifests |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
72 adding file changes |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
73 added 1 changesets with 4 changes to 4 files |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
74 updating to branch default |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
75 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
|
76 |
12446 | 77 clone via pull |
2673
109a22f5434a
hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2622
diff
changeset
|
78 |
12446 | 79 $ hg clone http://localhost:$HGPORT1/ copy-pull |
80 requesting all changes | |
81 adding changesets | |
82 adding manifests | |
83 adding file changes | |
84 added 1 changesets with 4 changes to 4 files | |
85 updating to branch default | |
86 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
87 $ hg verify -R copy-pull | |
88 checking changesets | |
89 checking manifests | |
90 crosschecking files in changesets and manifests | |
91 checking files | |
92 4 files, 1 changesets, 4 total revisions | |
93 $ cd test | |
94 $ echo bar > bar | |
95 $ hg commit -A -d '1 0' -m 2 | |
96 adding bar | |
97 $ cd .. | |
2673
109a22f5434a
hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2622
diff
changeset
|
98 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
99 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
|
100 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
101 $ 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
|
102 requesting all changes |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
103 adding changesets |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
104 adding manifests |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
105 adding file changes |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
106 added 2 changesets with 5 changes to 5 files |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
107 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
|
108 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
|
109 $ 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
|
110 changeset: 0:8b6053c928fe |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
111 user: test |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
112 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
|
113 summary: 1 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
114 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
115 $ rm -rf updated |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
116 |
14161
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
117 incoming via HTTP |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
118 |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
119 $ hg clone http://localhost:$HGPORT1/ --rev 0 partial |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
120 adding changesets |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
121 adding manifests |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
122 adding file changes |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
123 added 1 changesets with 4 changes to 4 files |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
124 updating to branch default |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
125 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
|
126 $ cd partial |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
127 $ touch LOCAL |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
128 $ hg ci -qAm LOCAL |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
129 $ hg incoming http://localhost:$HGPORT1/ --template '{desc}\n' |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
130 comparing with http://localhost:$HGPORT1/ |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
131 searching for changes |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
132 2 |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
133 $ cd .. |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
134 |
12446 | 135 pull |
136 | |
137 $ 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
|
138 $ 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
|
139 > [hooks] |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29564
diff
changeset
|
140 > 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
|
141 > EOF |
12446 | 142 $ hg pull |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12446
diff
changeset
|
143 pulling from http://localhost:$HGPORT1/ |
12446 | 144 searching for changes |
145 adding changesets | |
146 adding manifests | |
147 adding file changes | |
148 added 1 changesets with 1 changes to 1 files | |
31747
aff7b32b3c05
hook: add hook name information to external hook
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31746
diff
changeset
|
149 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 | 150 (run 'hg update' to get a working copy) |
151 $ cd .. | |
13445
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
152 |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
153 clone from invalid URL |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
154 |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
155 $ 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
|
156 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
|
157 [255] |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
158 |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
159 test http authentication |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
160 + 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
|
161 |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
162 $ cd test |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
163 $ cat << EOT > userpass.py |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
164 > import base64 |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
165 > from mercurial.hgweb import common |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
166 > def perform_authentication(hgweb, req, op): |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
167 > auth = req.env.get('HTTP_AUTHORIZATION') |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
168 > if not auth: |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
169 > raise common.ErrorResponse(common.HTTP_UNAUTHORIZED, 'who', |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
170 > [('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
|
171 > 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
|
172 > raise common.ErrorResponse(common.HTTP_FORBIDDEN, 'no') |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
173 > def extsetup(): |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
174 > common.permhooks.insert(0, perform_authentication) |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
175 > EOT |
28549 | 176 $ 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
|
177 > --config server.preferuncompressed=True \ |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
178 > --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
|
179 $ cat pid >> $DAEMON_PIDS |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
180 |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
181 $ cat << EOF > get_pass.py |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
182 > import getpass |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
183 > def newgetpass(arg): |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
184 > return "pass" |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
185 > getpass.getpass = newgetpass |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
186 > EOF |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
187 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
188 $ 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
|
189 abort: http authorization required for http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
190 [255] |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
191 $ hg id http://localhost:$HGPORT2/ |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
192 abort: http authorization required for http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
193 [255] |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
194 $ 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
|
195 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
|
196 realm: mercurial |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
197 user: user |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
198 password: 5fed3813f7f5 |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
199 $ hg id http://user:pass@localhost:$HGPORT2/ |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
200 5fed3813f7f5 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
201 $ echo '[auth]' >> .hg/hgrc |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
202 $ echo 'l.schemes=http' >> .hg/hgrc |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
203 $ echo 'l.prefix=lo' >> .hg/hgrc |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
204 $ echo 'l.username=user' >> .hg/hgrc |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
205 $ 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
|
206 $ hg id http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
207 5fed3813f7f5 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
208 $ hg id http://localhost:$HGPORT2/ |
15026
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 $ hg id http://user@localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
211 5fed3813f7f5 |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
212 $ 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
|
213 streaming all changes |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
214 7 files to transfer, 916 bytes of data |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
215 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
|
216 searching for changes |
2dc6b7917cdf
clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents:
22960
diff
changeset
|
217 no changes found |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
218 updating to branch default |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
219 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
|
220 --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
|
221 $ 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
|
222 requesting all changes |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
223 adding changesets |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
224 adding manifests |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
225 adding file changes |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
226 added 2 changesets with 5 changes to 5 files |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
227 updating to branch default |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
228 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
|
229 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
230 $ 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
|
231 abort: http authorization required for http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
232 [255] |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
233 $ hg id http://user:pass2@localhost:$HGPORT2/ |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
234 abort: HTTP Error 403: no |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
235 [255] |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
236 |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
237 $ 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
|
238 $ 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
|
239 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
|
240 searching for changes |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
241 remote: adding changesets |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
242 remote: adding manifests |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
243 remote: adding file changes |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
244 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
|
245 $ hg rollback -q |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
246 |
29564
db565a506729
test-http: use sed instead of fixed-with cut for reading access.log
Augie Fackler <augie@google.com>
parents:
29064
diff
changeset
|
247 $ 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
|
248 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
249 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
250 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
251 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
252 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
253 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
254 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
255 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
256 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
257 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
258 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
259 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
260 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
261 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
262 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
263 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
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 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
265 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
266 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
267 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
268 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
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 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
270 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
271 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
272 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
273 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
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 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
275 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
276 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
277 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
278 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
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 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
280 "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
281 "GET /?cmd=stream_out HTTP/1.1" 401 - x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
282 "GET /?cmd=stream_out HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
283 "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D5fed3813f7f5e1824344fdc9cf8f63bb662c292d x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
284 "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=0&common=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=phases%2Cbookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
285 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
286 "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
287 "GET /?cmd=getbundle HTTP/1.1" 401 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=phases%2Cbookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
288 "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=phases%2Cbookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
23546
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
289 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
290 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
291 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
292 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
293 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
294 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
295 "GET /?cmd=listkeys HTTP/1.1" 403 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
296 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
297 "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D7f4e523d01f2cc3765ac8934da3d14db775ff872 x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
298 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
299 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
300 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
301 "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
302 "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
303 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
28996 | 304 "POST /?cmd=unbundle HTTP/1.1" 200 - x-hgarg-1:heads=666f726365* (glob) |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
305 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
306 |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
307 $ cd .. |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
308 |
15055
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
309 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
|
310 |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
311 $ 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
|
312 $ echo empty > test/sub/empty |
e432fb4b4221
tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents:
17023
diff
changeset
|
313 $ 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
|
314 $ 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
|
315 $ 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
|
316 $ 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
|
317 $ 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
|
318 $ 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
|
319 $ 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
|
320 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
|
321 adding changesets |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
322 adding manifests |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
323 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
|
324 added 3 changesets with 7 changes to 7 files |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
325 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
|
326 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
|
327 [255] |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
328 $ 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
|
329 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
|
330 adding changesets |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
331 adding manifests |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
332 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
|
333 added 3 changesets with 7 changes to 7 files |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
334 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
|
335 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
|
336 [255] |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
337 |
13445
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
338 check error log |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
339 |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
340 $ 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
|
341 |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
342 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
|
343 |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
344 $ $RUNTESTDIR/killdaemons.py |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
345 $ hg -R test serve -p $HGPORT -d --pid-file=hg3.pid -E error.log --config extensions.crash=${TESTDIR}/crashgetbundler.py |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
346 $ 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
|
347 $ 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
|
348 requesting all changes |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
349 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
|
350 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
|
351 [255] |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
352 $ 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
|
353 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
354 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
|
355 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
356 $ 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
|
357 > bad format |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
358 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
359 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
360 $ 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
|
361 (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
|
362 56f9bc90cce6 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
363 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
364 $ killdaemons.py |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
365 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
366 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
|
367 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
|
368 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
|
369 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
370 $ 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
|
371 > 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
|
372 > 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
|
373 > 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
|
374 > 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
|
375 > if not cookie: |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
376 > 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
|
377 > 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
|
378 > def extsetup(): |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
379 > 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
|
380 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
381 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
382 $ 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
|
383 $ 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
|
384 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
385 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
|
386 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
387 $ 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
|
388 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
|
389 [255] |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
390 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
391 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
|
392 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
393 $ 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
|
394 > # HTTP Cookie File |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
395 > # 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
|
396 > .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
|
397 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
398 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
399 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
|
400 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
401 $ 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
|
402 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
|
403 [255] |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
404 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
405 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
|
406 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
407 $ 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
|
408 > 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
|
409 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
410 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
411 $ 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
|
412 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
|
413 [255] |