Mercurial > hg
annotate tests/test-http-bad-server.t @ 49326:3840d16595cf
bundlespec: add a `overwrite` parameter to set_param
This will open the way for the configuration value to yield in front of the
explicit bundle type.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Tue, 17 May 2022 18:14:32 +0100 |
parents | 63fd0282ad40 |
children | 4f36738a869a |
rev | line source |
---|---|
37845
b4b7427b5786
tests: remove #require killdaemons
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37556
diff
changeset
|
1 #require serve zstd |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
2 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
3 Client version is embedded in HTTP request and is effectively dynamic. Pin the |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
4 version so behavior is deterministic. |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
5 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
6 $ cat > fakeversion.py << EOF |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
7 > from mercurial import util |
40982
c296b8faa926
py3: byteify the fakeversion extension in test-http-bad-server.t
Matt Harbison <matt_harbison@yahoo.com>
parents:
40973
diff
changeset
|
8 > util.version = lambda: b'4.2' |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
9 > EOF |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
10 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
11 $ cat >> $HGRCPATH << EOF |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
12 > [extensions] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
13 > fakeversion = `pwd`/fakeversion.py |
40886
8aa7879adacf
test: explicitly disable sparse-revlog in test-http-bad-server.t
Boris Feld <boris.feld@octobus.net>
parents:
40881
diff
changeset
|
14 > [format] |
8aa7879adacf
test: explicitly disable sparse-revlog in test-http-bad-server.t
Boris Feld <boris.feld@octobus.net>
parents:
40881
diff
changeset
|
15 > sparse-revlog = no |
46876
a8fa270a0e86
persistent-nodemap: disable it unconditionally for test-http-bad-server.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46633
diff
changeset
|
16 > use-persistent-nodemap = no |
34322
10e162bb9bf5
pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents:
34308
diff
changeset
|
17 > [devel] |
10e162bb9bf5
pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents:
34308
diff
changeset
|
18 > legacy.exchange = phases |
44412
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
42897
diff
changeset
|
19 > [server] |
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
42897
diff
changeset
|
20 > concurrent-push-mode = strict |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
21 > EOF |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
22 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
23 $ hg init server0 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
24 $ cd server0 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
25 $ touch foo |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
26 $ hg -q commit -A -m initial |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
27 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
28 Also disable compression because zstd is optional and causes output to vary |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
29 and because debugging partial responses is hard when compression is involved |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
30 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
31 $ cat > .hg/hgrc << EOF |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
32 > [extensions] |
48605
089cb4d6af5a
test-http-bad-server: move the extension in `testlib`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46876
diff
changeset
|
33 > badserver = $TESTDIR/testlib/badserverext.py |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
34 > [server] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
35 > compressionengines = none |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
36 > EOF |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
37 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
38 Failure to accept() socket should result in connection related error message |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
39 ---------------------------------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
40 |
48606
ee1235afda4b
test-http-bad-server: rename config to use `-`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48605
diff
changeset
|
41 $ hg serve --config badserver.close-before-accept=true -p $HGPORT -d --pid-file=hg.pid |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
42 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
43 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
44 $ hg clone http://localhost:$HGPORT/ clone |
40973
97484e1d1834
tests: followup on network related errors on Debian 9
Boris Feld <boris.feld@octobus.net>
parents:
40936
diff
changeset
|
45 abort: error: (\$ECONNRESET\$|\$EADDRNOTAVAIL\$) (re) |
45839
ebee234d952a
errors: set detailed exit code to 100 for some remote errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
44412
diff
changeset
|
46 [100] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
47 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
48 (The server exits on its own, but there is a race between that and starting a new server. |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
49 So ensure the process is dead.) |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
50 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
51 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
52 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
53 Failure immediately after accept() should yield connection related error message |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
54 -------------------------------------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
55 |
48606
ee1235afda4b
test-http-bad-server: rename config to use `-`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48605
diff
changeset
|
56 $ hg serve --config badserver.close-after-accept=true -p $HGPORT -d --pid-file=hg.pid |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
57 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
58 |
32064
f82cdd5ee57e
tests: work around flaky test failure on FreeBSD and relatives
Augie Fackler <augie@google.com>
parents:
32024
diff
changeset
|
59 TODO: this usually outputs good results, but sometimes emits abort: |
f82cdd5ee57e
tests: work around flaky test failure on FreeBSD and relatives
Augie Fackler <augie@google.com>
parents:
32024
diff
changeset
|
60 error: '' on FreeBSD and OS X. |
f82cdd5ee57e
tests: work around flaky test failure on FreeBSD and relatives
Augie Fackler <augie@google.com>
parents:
32024
diff
changeset
|
61 What we ideally want are: |
f82cdd5ee57e
tests: work around flaky test failure on FreeBSD and relatives
Augie Fackler <augie@google.com>
parents:
32024
diff
changeset
|
62 |
35232
a037b6647d8c
tests: add a substitution for ECONNRESET/WSAECONNRESET messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35074
diff
changeset
|
63 abort: error: $ECONNRESET$ |
32064
f82cdd5ee57e
tests: work around flaky test failure on FreeBSD and relatives
Augie Fackler <augie@google.com>
parents:
32024
diff
changeset
|
64 |
f82cdd5ee57e
tests: work around flaky test failure on FreeBSD and relatives
Augie Fackler <augie@google.com>
parents:
32024
diff
changeset
|
65 The flakiness in this output was observable easily with |
f82cdd5ee57e
tests: work around flaky test failure on FreeBSD and relatives
Augie Fackler <augie@google.com>
parents:
32024
diff
changeset
|
66 --runs-per-test=20 on macOS 10.12 during the freeze for 4.2. |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
67 $ hg clone http://localhost:$HGPORT/ clone |
32064
f82cdd5ee57e
tests: work around flaky test failure on FreeBSD and relatives
Augie Fackler <augie@google.com>
parents:
32024
diff
changeset
|
68 abort: error: * (glob) |
45839
ebee234d952a
errors: set detailed exit code to 100 for some remote errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
44412
diff
changeset
|
69 [100] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
70 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
71 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
72 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
73 Failure to read all bytes in initial HTTP request should yield connection related error message |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
74 ----------------------------------------------------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
75 |
48606
ee1235afda4b
test-http-bad-server: rename config to use `-`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48605
diff
changeset
|
76 $ hg serve --config badserver.close-after-recv-bytes=1 -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
77 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
78 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
79 $ hg clone http://localhost:$HGPORT/ clone |
40926
21f5810df848
test: fix test-http-bad-server with current python 2.7
Julien Cristau <jcristau@mozilla.com>
parents:
39722
diff
changeset
|
80 abort: error: bad HTTP status line: * (glob) |
45839
ebee234d952a
errors: set detailed exit code to 100 for some remote errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
44412
diff
changeset
|
81 [100] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
82 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
83 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
84 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
85 $ cat error.log |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
86 readline(1 from ~) -> (1) G |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
87 read limit reached; closing socket |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
88 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
89 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
90 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
91 Same failure, but server reads full HTTP request line |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
92 ----------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
93 |
48638
1ae83cafaa39
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48636
diff
changeset
|
94 $ hg serve \ |
1ae83cafaa39
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48636
diff
changeset
|
95 > --config badserver.close-after-recv-patterns="GET /\?cmd=capabilities" \ |
1ae83cafaa39
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48636
diff
changeset
|
96 > --config badserver.close-after-recv-bytes=7 \ |
1ae83cafaa39
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48636
diff
changeset
|
97 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
98 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
99 $ hg clone http://localhost:$HGPORT/ clone |
40926
21f5810df848
test: fix test-http-bad-server with current python 2.7
Julien Cristau <jcristau@mozilla.com>
parents:
39722
diff
changeset
|
100 abort: error: bad HTTP status line: * (glob) |
45839
ebee234d952a
errors: set detailed exit code to 100 for some remote errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
44412
diff
changeset
|
101 [100] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
102 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
103 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
104 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
105 $ cat error.log |
48638
1ae83cafaa39
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48636
diff
changeset
|
106 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
107 readline(7 from *) -> (7) Accept- (glob) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
108 read limit reached; closing socket |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
109 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
110 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
111 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
112 Failure on subsequent HTTP request on the same socket (cmd?batch) |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
113 ----------------------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
114 |
48639
ebd515d129c6
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48638
diff
changeset
|
115 $ hg serve \ |
48640
316b912c47f5
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48639
diff
changeset
|
116 > --config badserver.close-after-recv-patterns="GET /\?cmd=batch,GET /\?cmd=batch" \ |
316b912c47f5
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48639
diff
changeset
|
117 > --config badserver.close-after-recv-bytes=15,197 \ |
48639
ebd515d129c6
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48638
diff
changeset
|
118 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
119 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
120 $ hg clone http://localhost:$HGPORT/ clone |
40926
21f5810df848
test: fix test-http-bad-server with current python 2.7
Julien Cristau <jcristau@mozilla.com>
parents:
39722
diff
changeset
|
121 abort: error: bad HTTP status line: * (glob) |
45839
ebee234d952a
errors: set detailed exit code to 100 for some remote errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
44412
diff
changeset
|
122 [100] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
123 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
124 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
125 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
126 $ cat error.log |
48639
ebd515d129c6
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48638
diff
changeset
|
127 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
ebd515d129c6
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48638
diff
changeset
|
128 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
ebd515d129c6
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48638
diff
changeset
|
129 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
ebd515d129c6
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48638
diff
changeset
|
130 readline(*) -> (*) host: localhost:$HGPORT\r\n (glob) |
ebd515d129c6
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48638
diff
changeset
|
131 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
ebd515d129c6
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48638
diff
changeset
|
132 readline(*) -> (2) \r\n (glob) |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
133 sendall(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
134 sendall(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
135 write(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py3 no-py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
136 write(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py3 no-py36 !) |
48639
ebd515d129c6
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48638
diff
changeset
|
137 readline(~) -> (26) GET /?cmd=batch HTTP/1.1\r\n (glob) |
ebd515d129c6
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48638
diff
changeset
|
138 readline(*) -> (1?) Accept-Encoding* (glob) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
139 read limit reached; closing socket |
48640
316b912c47f5
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48639
diff
changeset
|
140 readline(~) -> (26) GET /?cmd=batch HTTP/1.1\r\n |
316b912c47f5
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48639
diff
changeset
|
141 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
316b912c47f5
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48639
diff
changeset
|
142 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
316b912c47f5
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48639
diff
changeset
|
143 readline(*) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\r\n (glob) |
316b912c47f5
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48639
diff
changeset
|
144 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
316b912c47f5
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48639
diff
changeset
|
145 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
146 readline(4 from *) -> (4) host (glob) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
147 read limit reached; closing socket |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
148 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
149 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
150 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
151 Failure to read getbundle HTTP request |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
152 -------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
153 |
48641
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
154 $ hg serve \ |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
155 > --config badserver.close-after-recv-patterns="GET /\?cmd=batch,user-agent: mercurial/proto-1.0,GET /\?cmd=getbundle" \ |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
156 > --config badserver.close-after-recv-bytes=110,26,274 \ |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
157 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
158 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
159 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
160 requesting all changes |
40926
21f5810df848
test: fix test-http-bad-server with current python 2.7
Julien Cristau <jcristau@mozilla.com>
parents:
39722
diff
changeset
|
161 abort: error: bad HTTP status line: * (glob) |
45839
ebee234d952a
errors: set detailed exit code to 100 for some remote errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
44412
diff
changeset
|
162 [100] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
163 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
164 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
165 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
166 $ cat error.log |
35268
44b8b5ad30eb
pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents:
35259
diff
changeset
|
167 readline(1 from -1) -> (1) x (?) |
44b8b5ad30eb
pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents:
35259
diff
changeset
|
168 readline(1 from -1) -> (1) x (?) |
48641
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
169 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
170 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
171 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
172 readline(*) -> (*) host: localhost:$HGPORT\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
173 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
174 readline(*) -> (2) \r\n (glob) |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
175 sendall(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
176 sendall(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
177 write(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py3 no-py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
178 write(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py3 no-py36 !) |
48641
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
179 readline(~) -> (26) GET /?cmd=batch HTTP/1.1\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
180 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
181 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
182 readline(*) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
183 readline(*) -> (1?) x-hgproto-1:* (glob) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
184 read limit reached; closing socket |
48641
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
185 readline(~) -> (26) GET /?cmd=batch HTTP/1.1\r\n |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
186 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
187 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
188 readline(*) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
189 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
190 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
191 readline(*) -> (*) host: localhost:$HGPORT\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
192 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
193 readline(*) -> (2) \r\n (glob) |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
194 sendall(159) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\n (py36 !) |
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
195 sendall(42) -> 96ee1d7354c4ad7372047672c36a1f561e3a6a4c\n; (py36 !) |
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
196 write(159) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\n (py3 no-py36 !) |
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
197 write(42) -> 96ee1d7354c4ad7372047672c36a1f561e3a6a4c\n; (py3 no-py36 !) |
48641
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
198 readline(24 from ~) -> (*) GET /?cmd=getbundle HTTP* (glob) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
199 read limit reached; closing socket |
48641
36a41521ed57
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48640
diff
changeset
|
200 readline(~) -> (30) GET /?cmd=getbundle HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
201 readline(274 from *) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
202 readline(247 from *) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
203 readline(218 from *) -> (218) x-hgarg-1: bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtag (glob) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
204 read limit reached; closing socket |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
205 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
206 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
207 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
208 Now do a variation using POST to send arguments |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
209 =============================================== |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
210 |
48642
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
211 $ hg serve \ |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
212 > --config badserver.close-after-recv-patterns="x-hgargs-post:,user-agent: mercurial/proto-1.0" \ |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
213 > --config badserver.close-after-recv-bytes="14,26" \ |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
214 > --config experimental.httppostargs=true \ |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
215 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
216 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
217 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
218 $ hg clone http://localhost:$HGPORT/ clone |
40926
21f5810df848
test: fix test-http-bad-server with current python 2.7
Julien Cristau <jcristau@mozilla.com>
parents:
39722
diff
changeset
|
219 abort: error: bad HTTP status line: * (glob) |
45839
ebee234d952a
errors: set detailed exit code to 100 for some remote errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
44412
diff
changeset
|
220 [100] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
221 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
222 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
223 |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
224 $ cat error.log | "$PYTHON" $TESTDIR/filtertraceback.py |
48642
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
225 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
226 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
227 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
228 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
229 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
230 readline(*) -> (2) \r\n (glob) |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
231 sendall(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
232 sendall(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx httppostargs known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
233 write(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py3 no-py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
234 write(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx httppostargs known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py3 no-py36 !) |
48642
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
235 readline(~) -> (27) POST /?cmd=batch HTTP/1.1\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
236 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
237 readline(*) -> (41) content-type: application/mercurial-0.1\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
238 readline(*) -> (33) vary: X-HgArgs-Post,X-HgProto-1\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
239 readline(*) -> (19) x-hgargs-post: 28\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
240 readline(*) -> (1?) x-hgproto-1: * (glob) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
241 read limit reached; closing socket |
48642
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
242 readline(~) -> (27) POST /?cmd=batch HTTP/1.1\r\n |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
243 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
244 readline(*) -> (41) content-type: application/mercurial-0.1\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
245 readline(*) -> (33) vary: X-HgArgs-Post,X-HgProto-1\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
246 readline(*) -> (19) x-hgargs-post: 28\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
247 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
248 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
249 readline(*) -> (20) content-length: 28\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
250 readline(*) -> (*) host: localhost:$HGPORT\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
251 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
252 readline(*) -> (2) \r\n (glob) |
009e86022a9d
test-http-bad-server: use the new pattern-reading for a test-case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48641
diff
changeset
|
253 read(24 from 28) -> (*) cmds=* (glob) |
48608
f87b632406a9
test-http-bad-server: align output by using `;`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48607
diff
changeset
|
254 read limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
255 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=batch': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
256 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
257 Exception: connection closed after receiving N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
258 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
259 write(126) -> HTTP/1.1 500 Internal Server Error\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nTransfer-Encoding: chunked\r\n\r\n (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
260 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
261 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
262 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
263 Now move on to partial server responses |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
264 ======================================= |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
265 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
266 Server sends a single character from the HTTP response line |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
267 ----------------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
268 |
48606
ee1235afda4b
test-http-bad-server: rename config to use `-`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48605
diff
changeset
|
269 $ hg serve --config badserver.close-after-send-bytes=1 -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
270 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
271 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
272 $ hg clone http://localhost:$HGPORT/ clone |
34308
9bd003052d55
keepalive: add more context to bad status line errors
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32319
diff
changeset
|
273 abort: error: bad HTTP status line: H |
45839
ebee234d952a
errors: set detailed exit code to 100 for some remote errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
44412
diff
changeset
|
274 [100] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
275 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
276 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
277 |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
278 $ cat error.log | "$PYTHON" $TESTDIR/filtertraceback.py |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
279 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
280 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
281 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
282 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
283 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
284 readline(*) -> (2) \r\n (glob) |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
285 sendall(1 from 160) -> (0) H (py36 !) |
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
286 write(1 from 160) -> (0) H (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
287 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
288 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=capabilities': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
289 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
290 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
291 |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
292 write(286) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\nHTTP/1.1 500 Internal Server Error\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nTransfer-Encoding: chunked\r\n\r\n (glob) (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
293 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
294 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
295 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
296 Server sends an incomplete capabilities response body |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
297 ----------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
298 |
48619
e5313a1e0a26
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48615
diff
changeset
|
299 $ hg serve \ |
e5313a1e0a26
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48615
diff
changeset
|
300 > --config badserver.close-after-send-patterns='batch branchmap bund' \ |
e5313a1e0a26
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48615
diff
changeset
|
301 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
302 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
303 |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
304 $ hg clone http://localhost:$HGPORT/ clone |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
305 abort: HTTP request error (incomplete response; expected * bytes got 20) (glob) |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
306 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
307 [255] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
308 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
309 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
310 |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
311 $ cat error.log | "$PYTHON" $TESTDIR/filtertraceback.py |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
312 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
313 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
314 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
315 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
316 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
317 readline(*) -> (2) \r\n (glob) |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
318 sendall(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
319 sendall(20 from *) -> (0) batch branchmap bund (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
320 write(160) -> (20) HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py3 no-py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
321 write(20 from *) -> (0) batch branchmap bund (glob) (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
322 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
323 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=capabilities': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
324 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
325 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
326 |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
327 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
328 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
329 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
330 Server sends incomplete headers for batch request |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
331 ------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
332 |
48620
c5f734ef0b15
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48619
diff
changeset
|
333 $ hg serve \ |
c5f734ef0b15
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48619
diff
changeset
|
334 > --config badserver.close-after-send-patterns='(.*Content-Type: applicat){2}' \ |
c5f734ef0b15
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48619
diff
changeset
|
335 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
336 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
337 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
338 TODO this output is horrible |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
339 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
340 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
341 abort: 'http://localhost:$HGPORT/' does not appear to be an hg repository: |
35259
ad5f2b923b0d
push: include a 'check:bookmarks' part when possible
Boris Feld <boris.feld@octobus.net>
parents:
35232
diff
changeset
|
342 ---%<--- (applicat) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
343 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
344 ---%<--- |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45839
diff
changeset
|
345 |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
346 [255] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
347 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
348 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
349 |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
350 $ cat error.log | "$PYTHON" $TESTDIR/filtertraceback.py |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
351 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
352 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
353 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
354 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
355 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
356 readline(*) -> (2) \r\n (glob) |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
357 sendall(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
358 sendall(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
359 write(160) -> (568) HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py3 no-py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
360 write(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py3 no-py36 !) |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
361 readline(~) -> (26) GET /?cmd=batch HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
362 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
363 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
364 readline(*) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
365 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
366 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
367 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
368 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
369 readline(*) -> (2) \r\n (glob) |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
370 sendall(118 from 159) -> (0) HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: applicat (py36 !) |
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
371 write(118 from 159) -> (0) HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: applicat (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
372 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
373 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=batch': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
374 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
375 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
376 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
377 write(285) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\nHTTP/1.1 500 Internal Server Error\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nTransfer-Encoding: chunked\r\n\r\n (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
378 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
379 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
380 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
381 Server sends an incomplete HTTP response body to batch request |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
382 -------------------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
383 |
48621
b38a15822208
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48620
diff
changeset
|
384 $ hg serve \ |
b38a15822208
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48620
diff
changeset
|
385 > --config badserver.close-after-send-patterns=96ee1d7354c4ad7372047672 \ |
b38a15822208
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48620
diff
changeset
|
386 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
387 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
388 |
49248
63fd0282ad40
node: stop converting binascii.Error to TypeError in bin()
Manuel Jacob <me@manueljacob.de>
parents:
48874
diff
changeset
|
389 $ hg clone http://localhost:$HGPORT/ clone |
63fd0282ad40
node: stop converting binascii.Error to TypeError in bin()
Manuel Jacob <me@manueljacob.de>
parents:
48874
diff
changeset
|
390 abort: unexpected response: |
63fd0282ad40
node: stop converting binascii.Error to TypeError in bin()
Manuel Jacob <me@manueljacob.de>
parents:
48874
diff
changeset
|
391 '96ee1d7354c4ad7372047672' |
34483
a6d95a8b7243
serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
34322
diff
changeset
|
392 [255] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
393 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
394 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
395 |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
396 $ cat error.log | "$PYTHON" $TESTDIR/filtertraceback.py |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
397 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
398 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
399 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
400 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
401 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
402 readline(*) -> (2) \r\n (glob) |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
403 sendall(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
404 sendall(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
405 write(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py3 no-py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
406 write(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py3 no-py36 !) |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
407 readline(~) -> (26) GET /?cmd=batch HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
408 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
409 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
410 readline(*) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
411 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
412 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
413 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
414 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
415 readline(*) -> (2) \r\n (glob) |
48621
b38a15822208
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48620
diff
changeset
|
416 sendall(159) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\n (py36 !) |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
417 sendall(24 from 42) -> (0) 96ee1d7354c4ad7372047672 (py36 !) |
48621
b38a15822208
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48620
diff
changeset
|
418 write(159) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\n (py3 no-py36 !) |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
419 write(24 from 42) -> (0) 96ee1d7354c4ad7372047672 (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
420 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
421 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=batch': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
422 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
423 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
424 |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
425 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
426 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
427 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
428 Server sends incomplete headers for getbundle response |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
429 ------------------------------------------------------ |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
430 |
48622
7de3e7451763
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48621
diff
changeset
|
431 $ hg serve \ |
7de3e7451763
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48621
diff
changeset
|
432 > --config badserver.close-after-send-patterns='(.*Content-Type: application/mercuri){3}' \ |
7de3e7451763
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48621
diff
changeset
|
433 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
434 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
435 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
436 TODO this output is terrible |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
437 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
438 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
439 requesting all changes |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
440 abort: 'http://localhost:$HGPORT/' does not appear to be an hg repository: |
35268
44b8b5ad30eb
pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents:
35259
diff
changeset
|
441 ---%<--- (application/mercuri) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
442 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
443 ---%<--- |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45839
diff
changeset
|
444 |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
445 [255] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
446 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
447 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
448 |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
449 $ cat error.log | "$PYTHON" $TESTDIR/filtertraceback.py |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
450 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
451 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
452 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
453 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
454 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
455 readline(*) -> (2) \r\n (glob) |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
456 sendall(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
457 sendall(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
458 write(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py3 no-py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
459 write(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py3 no-py36 !) |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
460 readline(~) -> (26) GET /?cmd=batch HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
461 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
462 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
463 readline(*) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
464 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
465 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
466 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
467 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
468 readline(*) -> (2) \r\n (glob) |
48622
7de3e7451763
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48621
diff
changeset
|
469 sendall(159) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\n (py36 !) |
7de3e7451763
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48621
diff
changeset
|
470 sendall(42) -> 96ee1d7354c4ad7372047672c36a1f561e3a6a4c\n; (py36 !) |
7de3e7451763
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48621
diff
changeset
|
471 write(159) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\n (py3 no-py36 !) |
7de3e7451763
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48621
diff
changeset
|
472 write(42) -> 96ee1d7354c4ad7372047672c36a1f561e3a6a4c\n; (py3 no-py36 !) |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
473 readline(~) -> (30) GET /?cmd=getbundle HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
474 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
475 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
46633
7015b0232c5e
exchange: stop advertising rev-branch-cache bundle capability
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
476 readline(*) -> (440) x-hgarg-1: bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Astream%253Dv2&cg=1&common=0000000000000000000000000000000000000000&heads=96ee1d7354c4ad7372047672c36a1f561e3a6a4c&listkeys=phases%2Cbookmarks\r\n (glob) |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
477 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
478 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
479 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
480 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
481 readline(*) -> (2) \r\n (glob) |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
482 sendall(129 from 167) -> (0) HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercuri (py36 !) |
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
483 write(129 from 167) -> (0) HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercuri (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
484 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
485 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
486 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
487 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
488 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
489 write(293) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\nHTTP/1.1 500 Internal Server Error\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nTransfer-Encoding: chunked\r\n\r\n (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
490 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
491 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
492 |
39484
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
493 Server stops before it sends transfer encoding |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
494 ---------------------------------------------- |
39484
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
495 |
48624
8a452efcce3c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48623
diff
changeset
|
496 $ hg serve \ |
8a452efcce3c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48623
diff
changeset
|
497 > --config badserver.close-after-send-patterns="Transfer-Encoding: chunke" \ |
8a452efcce3c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48623
diff
changeset
|
498 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
39484
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
499 $ cat hg.pid > $DAEMON_PIDS |
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
500 |
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
501 $ hg clone http://localhost:$HGPORT/ clone |
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
502 requesting all changes |
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
503 abort: stream ended unexpectedly (got 0 bytes, expected 1) |
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
504 [255] |
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
505 |
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
506 $ killdaemons.py $DAEMON_PIDS |
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
507 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
508 #if py36 |
48623
38028f3ef80c
test-http-bad-server: modify some `tail` call fit their goal
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48622
diff
changeset
|
509 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -6 |
38028f3ef80c
test-http-bad-server: modify some `tail` call fit their goal
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48622
diff
changeset
|
510 sendall(162 from 167) -> (0) HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunke |
38028f3ef80c
test-http-bad-server: modify some `tail` call fit their goal
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48622
diff
changeset
|
511 write limit reached; closing socket |
38028f3ef80c
test-http-bad-server: modify some `tail` call fit their goal
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48622
diff
changeset
|
512 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
513 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
514 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
515 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
516 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
517 #else |
48623
38028f3ef80c
test-http-bad-server: modify some `tail` call fit their goal
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48622
diff
changeset
|
518 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -7 |
48624
8a452efcce3c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48623
diff
changeset
|
519 write(41) -> Content-Type: application/mercurial-0.2\r\n |
48623
38028f3ef80c
test-http-bad-server: modify some `tail` call fit their goal
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48622
diff
changeset
|
520 write(25 from 28) -> (0) Transfer-Encoding: chunke |
38028f3ef80c
test-http-bad-server: modify some `tail` call fit their goal
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48622
diff
changeset
|
521 write limit reached; closing socket |
48611
f91f98e9834a
test-http-bad-server: unify log printing for `sendall` and `write`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48608
diff
changeset
|
522 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
523 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
524 Exception: connection closed after sending N bytes |
48611
f91f98e9834a
test-http-bad-server: unify log printing for `sendall` and `write`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48608
diff
changeset
|
525 write(293) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\nHTTP/1.1 500 Internal Server Error\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nTransfer-Encoding: chunked\r\n\r\n (py3 !) |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
526 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
527 #endif |
39484
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
528 |
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
529 $ rm -f error.log |
98995b689e03
httppeer: use util.readexactly() to abort on incomplete responses
Anton Shestakov <av6@dwimlabs.net>
parents:
39483
diff
changeset
|
530 |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
531 Server sends empty HTTP body for getbundle |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
532 ------------------------------------------ |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
533 |
48625
fd7c578ddfd3
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48624
diff
changeset
|
534 $ hg serve \ |
fd7c578ddfd3
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48624
diff
changeset
|
535 > --config badserver.close-after-send-patterns='Transfer-Encoding: chunked\r\n\r\n' \ |
fd7c578ddfd3
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48624
diff
changeset
|
536 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
537 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
538 |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
539 $ hg clone http://localhost:$HGPORT/ clone |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
540 requesting all changes |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
541 abort: HTTP request error (incomplete response) |
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
542 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
543 [255] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
544 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
545 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
546 |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
547 $ cat error.log | "$PYTHON" $TESTDIR/filtertraceback.py |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
548 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
549 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
550 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
551 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
552 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
553 readline(*) -> (2) \r\n (glob) |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
554 sendall(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
555 sendall(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
556 write(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py3 no-py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
557 write(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py3 no-py36 !) |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
558 readline(~) -> (26) GET /?cmd=batch HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
559 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
560 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
561 readline(*) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
562 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
563 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
564 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
565 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
566 readline(*) -> (2) \r\n (glob) |
48625
fd7c578ddfd3
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48624
diff
changeset
|
567 sendall(159) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\n (py36 !) |
fd7c578ddfd3
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48624
diff
changeset
|
568 sendall(42) -> 96ee1d7354c4ad7372047672c36a1f561e3a6a4c\n; (py36 !) |
fd7c578ddfd3
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48624
diff
changeset
|
569 write(159) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\n (py3 no-py36 !) |
fd7c578ddfd3
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48624
diff
changeset
|
570 write(42) -> 96ee1d7354c4ad7372047672c36a1f561e3a6a4c\n; (py3 no-py36 !) |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
571 readline(~) -> (30) GET /?cmd=getbundle HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
572 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
573 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
46633
7015b0232c5e
exchange: stop advertising rev-branch-cache bundle capability
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
574 readline(*) -> (440) x-hgarg-1: bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Astream%253Dv2&cg=1&common=0000000000000000000000000000000000000000&heads=96ee1d7354c4ad7372047672c36a1f561e3a6a4c&listkeys=phases%2Cbookmarks\r\n (glob) |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
575 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
576 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
577 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
578 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
579 readline(*) -> (2) \r\n (glob) |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
580 sendall(167 from 167) -> (0) HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py36 !) |
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
581 write(167 from 167) -> (0) HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
582 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
583 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
584 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
585 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
586 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
587 write(293) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\nHTTP/1.1 500 Internal Server Error\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nTransfer-Encoding: chunked\r\n\r\n (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
588 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
589 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
590 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
591 Server sends partial compression string |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
592 --------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
593 |
48626
62f1c8588fcc
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48625
diff
changeset
|
594 $ hg serve \ |
62f1c8588fcc
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48625
diff
changeset
|
595 > --config badserver.close-after-send-patterns='4\r\nHG20\r\n' \ |
62f1c8588fcc
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48625
diff
changeset
|
596 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
597 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
598 |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
599 $ hg clone http://localhost:$HGPORT/ clone |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
600 requesting all changes |
35268
44b8b5ad30eb
pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents:
35259
diff
changeset
|
601 abort: HTTP request error (incomplete response) |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
602 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
603 [255] |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
604 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
605 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
606 |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
607 $ cat error.log | "$PYTHON" $TESTDIR/filtertraceback.py |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
608 readline(~) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
609 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
610 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
611 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
612 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
613 readline(*) -> (2) \r\n (glob) |
48643
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
614 sendall(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
615 sendall(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
616 write(160) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: *\r\n\r\n (glob) (py3 no-py36 !) |
1e28c4209fff
test-http-bad-server: abstract the `streamreqs` value
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48642
diff
changeset
|
617 write(*) -> batch branchmap $USUAL_BUNDLE2_CAPS_NO_PHASES$ changegroupsubset compression=none getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=* unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (glob) (py3 no-py36 !) |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
618 readline(~) -> (26) GET /?cmd=batch HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
619 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
620 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
621 readline(*) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
622 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
623 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
624 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
625 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
626 readline(*) -> (2) \r\n (glob) |
48626
62f1c8588fcc
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48625
diff
changeset
|
627 sendall(159) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\n (py36 !) |
62f1c8588fcc
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48625
diff
changeset
|
628 sendall(42) -> 96ee1d7354c4ad7372047672c36a1f561e3a6a4c\n; (py36 !) |
62f1c8588fcc
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48625
diff
changeset
|
629 write(159) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.1\r\nContent-Length: 42\r\n\r\n (py3 no-py36 !) |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
630 readline(~) -> (30) GET /?cmd=getbundle HTTP/1.1\r\n |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
631 readline(*) -> (27) Accept-Encoding: identity\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
632 readline(*) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n (glob) |
46633
7015b0232c5e
exchange: stop advertising rev-branch-cache bundle capability
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
633 readline(*) -> (440) x-hgarg-1: bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Astream%253Dv2&cg=1&common=0000000000000000000000000000000000000000&heads=96ee1d7354c4ad7372047672c36a1f561e3a6a4c&listkeys=phases%2Cbookmarks\r\n (glob) |
41465
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
634 readline(*) -> (61) x-hgproto-1: 0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
635 readline(*) -> (35) accept: application/mercurial-0.1\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
636 readline(*) -> (2?) host: localhost:$HGPORT\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
637 readline(*) -> (49) user-agent: mercurial/proto-1.0 (Mercurial 4.2)\r\n (glob) |
33560f3bbcd3
tests: glob away readline(-1)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41462
diff
changeset
|
638 readline(*) -> (2) \r\n (glob) |
48626
62f1c8588fcc
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48625
diff
changeset
|
639 sendall(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py36 !) |
62f1c8588fcc
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48625
diff
changeset
|
640 sendall(6) -> 1\\r\\n\x04\\r\\n (esc) (py36 !) |
62f1c8588fcc
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48625
diff
changeset
|
641 sendall(9) -> 4\r\nnone\r\n (py36 !) |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
642 sendall(9 from 9) -> (0) 4\r\nHG20\r\n (py36 !) |
48626
62f1c8588fcc
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48625
diff
changeset
|
643 write(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py3 no-py36 !) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
644 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
645 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
646 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
647 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
648 |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
649 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
650 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
651 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
652 Server sends partial bundle2 header magic |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
653 ----------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
654 |
48627
26105e9b0487
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48626
diff
changeset
|
655 $ hg serve \ |
26105e9b0487
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48626
diff
changeset
|
656 > --config badserver.close-after-send-patterns='4\r\nHG2' \ |
26105e9b0487
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48626
diff
changeset
|
657 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
658 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
659 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
660 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
661 requesting all changes |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
662 abort: HTTP request error (incomplete response) (py3 !) |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
663 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
664 [255] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
665 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
666 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
667 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
668 #if py36 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
669 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -9 |
48627
26105e9b0487
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48626
diff
changeset
|
670 sendall(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n |
26105e9b0487
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48626
diff
changeset
|
671 sendall(6) -> 1\\r\\n\x04\\r\\n (esc) |
26105e9b0487
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48626
diff
changeset
|
672 sendall(9) -> 4\r\nnone\r\n |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
673 sendall(6 from 9) -> (0) 4\r\nHG2 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
674 write limit reached; closing socket |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
675 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
676 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
677 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
678 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
679 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
680 #else |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
681 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -11 |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
682 readline(~) -> (2) \r\n (py3 !) |
48627
26105e9b0487
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48626
diff
changeset
|
683 write(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py3 !) |
26105e9b0487
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48626
diff
changeset
|
684 write(6) -> 1\\r\\n\x04\\r\\n (esc) |
26105e9b0487
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48626
diff
changeset
|
685 write(9) -> 4\r\nnone\r\n |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
686 write(6 from 9) -> (0) 4\r\nHG2 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
687 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
688 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
689 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
690 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
691 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
692 #endif |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
693 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
694 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
695 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
696 Server sends incomplete bundle2 stream params length |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
697 ---------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
698 |
48628
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
699 $ hg serve \ |
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
700 > --config badserver.close-after-send-patterns='4\r\n\0\0\0' \ |
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
701 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
702 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
703 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
704 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
705 requesting all changes |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
706 abort: HTTP request error (incomplete response) (py3 !) |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
707 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
708 [255] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
709 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
710 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
711 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
712 #if py36 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
713 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -10 |
48628
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
714 sendall(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n |
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
715 sendall(6) -> 1\\r\\n\x04\\r\\n (esc) |
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
716 sendall(9) -> 4\r\nnone\r\n |
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
717 sendall(9) -> 4\r\nHG20\r\n |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
718 sendall(6 from 9) -> (0) 4\\r\\n\x00\x00\x00 (esc) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
719 write limit reached; closing socket |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
720 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
721 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
722 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
723 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
724 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
725 #else |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
726 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -12 |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
727 readline(~) -> (2) \r\n (py3 !) |
48628
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
728 write(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py3 !) |
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
729 write(41) -> Content-Type: application/mercurial-0.2\r\n |
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
730 write(6) -> 1\\r\\n\x04\\r\\n (esc) |
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
731 write(9) -> 4\r\nnone\r\n |
ea2f4f4e464e
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48627
diff
changeset
|
732 write(9) -> 4\r\nHG20\r\n |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
733 write(6 from 9) -> (0) 4\\r\\n\x00\x00\x00 (esc) |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
734 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
735 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
736 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
737 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
738 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
739 #endif |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
740 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
741 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
742 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
743 Servers stops after bundle2 stream params header |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
744 ------------------------------------------------ |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
745 |
48629
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
746 $ hg serve \ |
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
747 > --config badserver.close-after-send-patterns='4\r\n\0\0\0\0\r\n' \ |
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
748 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
749 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
750 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
751 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
752 requesting all changes |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
753 abort: HTTP request error (incomplete response) |
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
754 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
755 [255] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
756 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
757 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
758 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
759 #if py36 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
760 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -10 |
48629
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
761 sendall(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n |
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
762 sendall(6) -> 1\\r\\n\x04\\r\\n (esc) |
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
763 sendall(9) -> 4\r\nnone\r\n |
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
764 sendall(9) -> 4\r\nHG20\r\n |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
765 sendall(9 from 9) -> (0) 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
766 write limit reached; closing socket |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
767 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
768 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
769 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
770 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
771 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
772 #else |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
773 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -12 |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
774 readline(~) -> (2) \r\n (py3 !) |
48629
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
775 write(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py3 !) |
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
776 write(41) -> Content-Type: application/mercurial-0.2\r\n |
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
777 write(6) -> 1\\r\\n\x04\\r\\n (esc) |
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
778 write(9) -> 4\r\nnone\r\n |
177ef11a4a58
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48628
diff
changeset
|
779 write(9) -> 4\r\nHG20\r\n |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
780 write(9 from 9) -> (0) 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
781 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
782 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
783 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
784 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
785 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
786 #endif |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
787 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
788 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
789 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
790 Server stops sending after bundle2 part header length |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
791 ----------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
792 |
48630
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
793 $ hg serve \ |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
794 > --config badserver.close-after-send-patterns='4\r\n\0\0\0\)\r\n' \ |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
795 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
796 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
797 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
798 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
799 requesting all changes |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
800 abort: HTTP request error (incomplete response) |
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
801 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
802 [255] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
803 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
804 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
805 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
806 #if py36 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
807 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -11 |
48630
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
808 sendall(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
809 sendall(6) -> 1\\r\\n\x04\\r\\n (esc) |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
810 sendall(9) -> 4\r\nnone\r\n |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
811 sendall(9) -> 4\r\nHG20\r\n |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
812 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
813 sendall(9 from 9) -> (0) 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
814 write limit reached; closing socket |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
815 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
816 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
817 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
818 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
819 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
820 #else |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
821 |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
822 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -13 |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
823 readline(~) -> (2) \r\n (py3 !) |
48630
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
824 write(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py3 !) |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
825 write(41) -> Content-Type: application/mercurial-0.2\r\n |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
826 write(6) -> 1\\r\\n\x04\\r\\n (esc) |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
827 write(9) -> 4\r\nnone\r\n |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
828 write(9) -> 4\r\nHG20\r\n |
3e0462ae6230
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48629
diff
changeset
|
829 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
830 write(9 from 9) -> (0) 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
831 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
832 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
833 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
834 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
835 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
836 #endif |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
837 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
838 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
839 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
840 Server stops sending after bundle2 part header |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
841 ---------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
842 |
48631
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
843 $ hg serve \ |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
844 > --config badserver.close-after-send-patterns="version02nbchanges1\\r\\n" \ |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
845 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
846 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
847 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
848 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
849 requesting all changes |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
850 adding changesets |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
851 transaction abort! |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
852 rollback completed |
32024
ad41739c6b2b
bundle2: ignore errors seeking a bundle after an exception (issue4784)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32022
diff
changeset
|
853 abort: HTTP request error (incomplete response) |
ad41739c6b2b
bundle2: ignore errors seeking a bundle after an exception (issue4784)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32022
diff
changeset
|
854 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
855 [255] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
856 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
857 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
858 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
859 #if py36 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
860 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -12 |
48631
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
861 sendall(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
862 sendall(6) -> 1\\r\\n\x04\\r\\n (esc) |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
863 sendall(9) -> 4\r\nnone\r\n |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
864 sendall(9) -> 4\r\nHG20\r\n |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
865 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
866 sendall(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
867 sendall(47 from 47) -> (0) 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
868 write limit reached; closing socket |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
869 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
870 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
871 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
872 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
873 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
874 #else |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
875 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -14 |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
876 readline(~) -> (2) \r\n (py3 !) |
48631
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
877 write(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py3 !) |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
878 write(41) -> Content-Type: application/mercurial-0.2\r\n |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
879 write(6) -> 1\\r\\n\x04\\r\\n (esc) |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
880 write(9) -> 4\r\nnone\r\n |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
881 write(9) -> 4\r\nHG20\r\n |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
882 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
42057c14bf69
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48630
diff
changeset
|
883 write(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
884 write(47 from 47) -> (0) 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
885 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
886 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
887 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
888 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
889 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
890 #endif |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
891 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
892 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
893 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
894 Server stops after bundle2 part payload chunk size |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
895 -------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
896 |
48632
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
897 $ hg serve \ |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
898 > --config badserver.close-after-send-patterns='1d2\r\n.......' \ |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
899 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
900 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
901 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
902 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
903 requesting all changes |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
904 adding changesets |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
905 transaction abort! |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
906 rollback completed |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
907 abort: HTTP request error (incomplete response) (py3 !) |
32024
ad41739c6b2b
bundle2: ignore errors seeking a bundle after an exception (issue4784)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32022
diff
changeset
|
908 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
909 [255] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
910 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
911 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
912 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
913 #if py36 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
914 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -14 |
48632
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
915 sendall(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
916 sendall(6) -> 1\\r\\n\x04\\r\\n (esc) |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
917 sendall(9) -> 4\r\nnone\r\n |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
918 sendall(9) -> 4\r\nHG20\r\n |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
919 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
920 sendall(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
921 sendall(47) -> 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
922 sendall(9) -> 4\\r\\n\x00\x00\x01\xd2\\r\\n (esc) |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
923 sendall(12 from 473) -> (0) 1d2\\r\\n\x00\x00\x00\xb2\x96\xee\x1d (esc) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
924 write limit reached; closing socket |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
925 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
926 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
927 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
928 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
929 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
930 #else |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
931 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -15 |
48632
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
932 write(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py3 !) |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
933 write(28) -> Transfer-Encoding: chunked\r\n |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
934 write(6) -> 1\\r\\n\x04\\r\\n (esc) |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
935 write(9) -> 4\r\nnone\r\n |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
936 write(9) -> 4\r\nHG20\r\n |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
937 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
938 write(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
939 write(47) -> 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
387f47807ca7
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48631
diff
changeset
|
940 write(9) -> 4\\r\\n\x00\x00\x01\xd2\\r\\n (esc) |
35268
44b8b5ad30eb
pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents:
35259
diff
changeset
|
941 write(12 from 473) -> (0) 1d2\\r\\n\x00\x00\x00\xb2\x96\xee\x1d (esc) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
942 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
943 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
944 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
945 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
946 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
947 #endif |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
948 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
949 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
950 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
951 Server stops sending in middle of bundle2 payload chunk |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
952 ------------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
953 |
48633
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
954 $ hg serve \ |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
955 > --config badserver.close-after-send-patterns=':jL\0\0\x00\0\0\0\0\0\r\n' \ |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
956 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
957 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
958 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
959 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
960 requesting all changes |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
961 adding changesets |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
962 transaction abort! |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
963 rollback completed |
32024
ad41739c6b2b
bundle2: ignore errors seeking a bundle after an exception (issue4784)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32022
diff
changeset
|
964 abort: HTTP request error (incomplete response) |
ad41739c6b2b
bundle2: ignore errors seeking a bundle after an exception (issue4784)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32022
diff
changeset
|
965 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
966 [255] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
967 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
968 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
969 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
970 #if py36 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
971 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -14 |
48633
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
972 sendall(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
973 sendall(6) -> 1\\r\\n\x04\\r\\n (esc) |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
974 sendall(9) -> 4\r\nnone\r\n |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
975 sendall(9) -> 4\r\nHG20\r\n |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
976 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
977 sendall(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
978 sendall(47) -> 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
979 sendall(9) -> 4\\r\\n\x00\x00\x01\xd2\\r\\n (esc) |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
980 sendall(473 from 473) -> (0) 1d2\\r\\n\x00\x00\x00\xb2\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>6a3df4de388f3c4f8e28f4f9a814299a3cbb5f50\\ntest\\n0 0\\nfoo\\n\\ninitial\x00\x00\x00\x00\x00\x00\x00\xa1j=\xf4\xde8\x8f<O\x8e(\xf4\xf9\xa8\x14)\x9a<\xbb_P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00-foo\x00b80de5d138758541c5f05265ad144ab9fa86d1db\\n\x00\x00\x00\x00\x00\x00\x00\x07foo\x00\x00\x00h\xb8\\r\xe5\xd18u\x85A\xc5\xf0Re\xad\x14J\xb9\xfa\x86\xd1\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\\r\\n (esc) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
981 write limit reached; closing socket |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
982 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
983 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
984 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
985 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
986 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
987 #else |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
988 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -16 |
48615
e38776a4c2cb
test-http-bad-server: replace the default 65537 value in output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48611
diff
changeset
|
989 readline(~) -> (2) \r\n (py3 !) |
48633
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
990 write(167) -> HTTP/1.1 200 Script output follows\r\nServer: badhttpserver\r\nDate: $HTTP_DATE$\r\nContent-Type: application/mercurial-0.2\r\nTransfer-Encoding: chunked\r\n\r\n (py3 !) |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
991 write(41) -> Content-Type: application/mercurial-0.2\r\n |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
992 write(6) -> 1\\r\\n\x04\\r\\n (esc) |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
993 write(9) -> 4\r\nnone\r\n |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
994 write(9) -> 4\r\nHG20\r\n |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
995 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
996 write(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
997 write(47) -> 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
52aa9b505c8f
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48632
diff
changeset
|
998 write(9) -> 4\\r\\n\x00\x00\x01\xd2\\r\\n (esc) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
999 write(473 from 473) -> (0) 1d2\\r\\n\x00\x00\x00\xb2\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>6a3df4de388f3c4f8e28f4f9a814299a3cbb5f50\\ntest\\n0 0\\nfoo\\n\\ninitial\x00\x00\x00\x00\x00\x00\x00\xa1j=\xf4\xde8\x8f<O\x8e(\xf4\xf9\xa8\x14)\x9a<\xbb_P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00-foo\x00b80de5d138758541c5f05265ad144ab9fa86d1db\\n\x00\x00\x00\x00\x00\x00\x00\x07foo\x00\x00\x00h\xb8\\r\xe5\xd18u\x85A\xc5\xf0Re\xad\x14J\xb9\xfa\x86\xd1\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\\r\\n (esc) |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1000 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1001 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1002 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1003 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1004 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1005 #endif |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1006 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1007 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1008 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1009 Server stops sending after 0 length payload chunk size |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
1010 ------------------------------------------------------ |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1011 |
48634
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1012 $ hg serve \ |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1013 > --config badserver.close-after-send-patterns=LISTKEYS \ |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1014 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1015 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1016 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1017 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1018 requesting all changes |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1019 adding changesets |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1020 adding manifests |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1021 adding file changes |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1022 transaction abort! |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1023 rollback completed |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1024 abort: HTTP request error (incomplete response) (py3 !) |
32002
bf855efe5664
httppeer: wrap HTTPResponse.read() globally
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32001
diff
changeset
|
1025 (this may be an intermittent network failure; if the error persists, consider contacting the network or server operator) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1026 [255] |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1027 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1028 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1029 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
1030 #if py36 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1031 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -16 |
48634
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1032 sendall(6) -> 1\\r\\n\x04\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1033 sendall(9) -> 4\r\nnone\r\n |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1034 sendall(9) -> 4\r\nHG20\r\n |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1035 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1036 sendall(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1037 sendall(47) -> 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1038 sendall(9) -> 4\\r\\n\x00\x00\x01\xd2\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1039 sendall(473) -> 1d2\\r\\n\x00\x00\x00\xb2\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>6a3df4de388f3c4f8e28f4f9a814299a3cbb5f50\\ntest\\n0 0\\nfoo\\n\\ninitial\x00\x00\x00\x00\x00\x00\x00\xa1j=\xf4\xde8\x8f<O\x8e(\xf4\xf9\xa8\x14)\x9a<\xbb_P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00-foo\x00b80de5d138758541c5f05265ad144ab9fa86d1db\\n\x00\x00\x00\x00\x00\x00\x00\x07foo\x00\x00\x00h\xb8\\r\xe5\xd18u\x85A\xc5\xf0Re\xad\x14J\xb9\xfa\x86\xd1\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1040 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1041 sendall(9) -> 4\\r\\n\x00\x00\x00 \\r\\n (esc) |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1042 sendall(13 from 38) -> (0) 20\\r\\n\x08LISTKEYS (esc) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1043 write limit reached; closing socket |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1044 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1045 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1046 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1047 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1048 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1049 #else |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1050 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -17 |
48634
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1051 write(2) -> \r\n |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1052 write(6) -> 1\\r\\n\x04\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1053 write(9) -> 4\r\nnone\r\n |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1054 write(9) -> 4\r\nHG20\r\n |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1055 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1056 write(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1057 write(47) -> 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1058 write(9) -> 4\\r\\n\x00\x00\x01\xd2\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1059 write(473) -> 1d2\\r\\n\x00\x00\x00\xb2\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>6a3df4de388f3c4f8e28f4f9a814299a3cbb5f50\\ntest\\n0 0\\nfoo\\n\\ninitial\x00\x00\x00\x00\x00\x00\x00\xa1j=\xf4\xde8\x8f<O\x8e(\xf4\xf9\xa8\x14)\x9a<\xbb_P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00-foo\x00b80de5d138758541c5f05265ad144ab9fa86d1db\\n\x00\x00\x00\x00\x00\x00\x00\x07foo\x00\x00\x00h\xb8\\r\xe5\xd18u\x85A\xc5\xf0Re\xad\x14J\xb9\xfa\x86\xd1\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1060 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
4e772a5dfa5b
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48633
diff
changeset
|
1061 write(9) -> 4\\r\\n\x00\x00\x00 \\r\\n (esc) |
35268
44b8b5ad30eb
pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents:
35259
diff
changeset
|
1062 write(13 from 38) -> (0) 20\\r\\n\x08LISTKEYS (esc) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1063 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1064 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1065 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1066 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1067 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1068 #endif |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1069 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1070 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1071 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1072 Server stops sending after 0 part bundle part header (indicating end of bundle2 payload) |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
1073 ---------------------------------------------------------------------------------------- |
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
1074 |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1075 This is before the 0 size chunked transfer part that signals end of HTTP response. |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1076 |
48635
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1077 $ hg serve \ |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1078 > --config badserver.close-after-send-patterns='(.*4\r\n\0\0\0\0\r\n){5}' \ |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1079 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1080 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1081 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1082 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1083 requesting all changes |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1084 adding changesets |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1085 adding manifests |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1086 adding file changes |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1087 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
|
1088 new changesets 96ee1d7354c4 |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1089 updating to branch default |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1090 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1091 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1092 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1093 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
1094 #if py36 |
46633
7015b0232c5e
exchange: stop advertising rev-branch-cache bundle capability
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
1095 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -20 |
48635
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1096 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1097 sendall(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1098 sendall(47) -> 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1099 sendall(9) -> 4\\r\\n\x00\x00\x01\xd2\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1100 sendall(473) -> 1d2\\r\\n\x00\x00\x00\xb2\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>6a3df4de388f3c4f8e28f4f9a814299a3cbb5f50\\ntest\\n0 0\\nfoo\\n\\ninitial\x00\x00\x00\x00\x00\x00\x00\xa1j=\xf4\xde8\x8f<O\x8e(\xf4\xf9\xa8\x14)\x9a<\xbb_P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00-foo\x00b80de5d138758541c5f05265ad144ab9fa86d1db\\n\x00\x00\x00\x00\x00\x00\x00\x07foo\x00\x00\x00h\xb8\\r\xe5\xd18u\x85A\xc5\xf0Re\xad\x14J\xb9\xfa\x86\xd1\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1101 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1102 sendall(9) -> 4\\r\\n\x00\x00\x00 \\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1103 sendall(38) -> 20\\r\\n\x08LISTKEYS\x00\x00\x00\x01\x01\x00 \x06namespacephases\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1104 sendall(9) -> 4\\r\\n\x00\x00\x00:\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1105 sendall(64) -> 3a\r\n96ee1d7354c4ad7372047672c36a1f561e3a6a4c 1\npublishing True\r\n |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1106 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1107 sendall(9) -> 4\\r\\n\x00\x00\x00#\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1108 sendall(41) -> 23\\r\\n\x08LISTKEYS\x00\x00\x00\x02\x01\x00 namespacebookmarks\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1109 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1110 sendall(9 from 9) -> (0) 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1111 write limit reached; closing socket |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1112 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1113 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1114 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1115 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1116 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1117 #else |
46633
7015b0232c5e
exchange: stop advertising rev-branch-cache bundle capability
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
1118 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -21 |
48635
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1119 write(9) -> 4\r\nHG20\r\n |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1120 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1121 write(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1122 write(47) -> 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1123 write(9) -> 4\\r\\n\x00\x00\x01\xd2\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1124 write(473) -> 1d2\\r\\n\x00\x00\x00\xb2\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>6a3df4de388f3c4f8e28f4f9a814299a3cbb5f50\\ntest\\n0 0\\nfoo\\n\\ninitial\x00\x00\x00\x00\x00\x00\x00\xa1j=\xf4\xde8\x8f<O\x8e(\xf4\xf9\xa8\x14)\x9a<\xbb_P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00-foo\x00b80de5d138758541c5f05265ad144ab9fa86d1db\\n\x00\x00\x00\x00\x00\x00\x00\x07foo\x00\x00\x00h\xb8\\r\xe5\xd18u\x85A\xc5\xf0Re\xad\x14J\xb9\xfa\x86\xd1\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1125 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1126 write(9) -> 4\\r\\n\x00\x00\x00 \\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1127 write(38) -> 20\\r\\n\x08LISTKEYS\x00\x00\x00\x01\x01\x00 \x06namespacephases\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1128 write(9) -> 4\\r\\n\x00\x00\x00:\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1129 write(64) -> 3a\r\n96ee1d7354c4ad7372047672c36a1f561e3a6a4c 1\npublishing True\r\n |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1130 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1131 write(9) -> 4\\r\\n\x00\x00\x00#\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1132 write(41) -> 23\\r\\n\x08LISTKEYS\x00\x00\x00\x02\x01\x00 namespacebookmarks\\r\\n (esc) |
6a9f3cd38faa
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48634
diff
changeset
|
1133 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1134 write(9 from 9) -> (0) 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1135 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1136 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1137 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1138 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1139 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1140 #endif |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1141 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1142 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1143 $ rm -rf clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1144 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1145 Server sends a size 0 chunked-transfer size without terminating \r\n |
48607
89485747b8f7
test-http-bad-server: highlight each test with section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48606
diff
changeset
|
1146 -------------------------------------------------------------------- |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1147 |
48636
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1148 $ hg serve \ |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1149 > --config badserver.close-after-send-patterns="(.*4\\r\\n\0\0\0\0\\r\\n0\r\n)" \ |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1150 > -p $HGPORT -d --pid-file=hg.pid -E error.log |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1151 $ cat hg.pid > $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1152 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1153 $ hg clone http://localhost:$HGPORT/ clone |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1154 requesting all changes |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1155 adding changesets |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1156 adding manifests |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1157 adding file changes |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1158 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
|
1159 new changesets 96ee1d7354c4 |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1160 updating to branch default |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1161 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1162 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1163 $ killdaemons.py $DAEMON_PIDS |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1164 |
41467
1016b81fa43e
tests: conditionalize test-http-bad-server.t for Python 3.5
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41466
diff
changeset
|
1165 #if py36 |
46633
7015b0232c5e
exchange: stop advertising rev-branch-cache bundle capability
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
1166 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -21 |
48636
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1167 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1168 sendall(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1169 sendall(47) -> 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1170 sendall(9) -> 4\\r\\n\x00\x00\x01\xd2\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1171 sendall(473) -> 1d2\\r\\n\x00\x00\x00\xb2\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>6a3df4de388f3c4f8e28f4f9a814299a3cbb5f50\\ntest\\n0 0\\nfoo\\n\\ninitial\x00\x00\x00\x00\x00\x00\x00\xa1j=\xf4\xde8\x8f<O\x8e(\xf4\xf9\xa8\x14)\x9a<\xbb_P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00-foo\x00b80de5d138758541c5f05265ad144ab9fa86d1db\\n\x00\x00\x00\x00\x00\x00\x00\x07foo\x00\x00\x00h\xb8\\r\xe5\xd18u\x85A\xc5\xf0Re\xad\x14J\xb9\xfa\x86\xd1\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1172 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1173 sendall(9) -> 4\\r\\n\x00\x00\x00 \\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1174 sendall(38) -> 20\\r\\n\x08LISTKEYS\x00\x00\x00\x01\x01\x00 \x06namespacephases\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1175 sendall(9) -> 4\\r\\n\x00\x00\x00:\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1176 sendall(64) -> 3a\r\n96ee1d7354c4ad7372047672c36a1f561e3a6a4c 1\npublishing True\r\n |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1177 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1178 sendall(9) -> 4\\r\\n\x00\x00\x00#\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1179 sendall(41) -> 23\\r\\n\x08LISTKEYS\x00\x00\x00\x02\x01\x00 namespacebookmarks\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1180 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1181 sendall(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1182 sendall(3 from 5) -> (0) 0\r\n |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1183 write limit reached; closing socket |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1184 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1185 Traceback (most recent call last): |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1186 Exception: connection closed after sending N bytes |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1187 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1188 |
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1189 #else |
46633
7015b0232c5e
exchange: stop advertising rev-branch-cache bundle capability
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
1190 $ "$PYTHON" $TESTDIR/filtertraceback.py < error.log | tail -22 |
48636
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1191 write(9) -> 4\r\nHG20\r\n |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1192 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1193 write(9) -> 4\\r\\n\x00\x00\x00)\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1194 write(47) -> 29\\r\\n\x0bCHANGEGROUP\x00\x00\x00\x00\x01\x01\x07\x02 \x01version02nbchanges1\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1195 write(9) -> 4\\r\\n\x00\x00\x01\xd2\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1196 write(473) -> 1d2\\r\\n\x00\x00\x00\xb2\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>6a3df4de388f3c4f8e28f4f9a814299a3cbb5f50\\ntest\\n0 0\\nfoo\\n\\ninitial\x00\x00\x00\x00\x00\x00\x00\xa1j=\xf4\xde8\x8f<O\x8e(\xf4\xf9\xa8\x14)\x9a<\xbb_P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00-foo\x00b80de5d138758541c5f05265ad144ab9fa86d1db\\n\x00\x00\x00\x00\x00\x00\x00\x07foo\x00\x00\x00h\xb8\\r\xe5\xd18u\x85A\xc5\xf0Re\xad\x14J\xb9\xfa\x86\xd1\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\xee\x1dsT\xc4\xadsr\x04vr\xc3j\x1fV\x1e:jL\x00\x00\x00\x00\x00\x00\x00\x00\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1197 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1198 write(9) -> 4\\r\\n\x00\x00\x00 \\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1199 write(38) -> 20\\r\\n\x08LISTKEYS\x00\x00\x00\x01\x01\x00 \x06namespacephases\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1200 write(9) -> 4\\r\\n\x00\x00\x00:\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1201 write(64) -> 3a\r\n96ee1d7354c4ad7372047672c36a1f561e3a6a4c 1\npublishing True\r\n |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1202 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1203 write(9) -> 4\\r\\n\x00\x00\x00#\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1204 write(41) -> 23\\r\\n\x08LISTKEYS\x00\x00\x00\x02\x01\x00 namespacebookmarks\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1205 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
b169767ecc8c
test-http-bad-server: move on test from bytes-count to pattern
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48635
diff
changeset
|
1206 write(9) -> 4\\r\\n\x00\x00\x00\x00\\r\\n (esc) |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1207 write(3 from 5) -> (0) 0\r\n |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1208 write limit reached; closing socket |
41462
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1209 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/?cmd=getbundle': (glob) |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1210 Traceback (most recent call last): |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1211 Exception: connection closed after sending N bytes |
9b2b8794f801
hgweb: log error before attempting I/O
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40982
diff
changeset
|
1212 |
41466
4d5aae86c9bd
tests: log sendall() operations and port test-http-bad-server.t
Gregory Szorc <gregory.szorc@gmail.com>
parents:
41465
diff
changeset
|
1213 #endif |
32001
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1214 |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1215 $ rm -f error.log |
c85f19c66e8d
tests: add tests for poorly behaving HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1216 $ rm -rf clone |