Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 22 Jan 2022 01:51:28 +0100] rev 48640
test-bad-http-server: introduce sock closing when writing a pattern
Instead of using a fixed number a bytes, a very unstable method. We introduce a
new config that can define a regex. One this regex is detected, nothing after
it will be written and the socket will be closed.
Tests will be migrated to this new method in later changesets.
Differential Revision: https://phab.mercurial-scm.org/D12049
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 22 Jan 2022 01:13:12 +0100] rev 48639
test-http-bad-server: document that the value are actually a list
I don't really expect this doc to be read a lot, but mentioning that this is a
list seems important.
Differential Revision: https://phab.mercurial-scm.org/D12048
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jan 2022 12:44:39 +0100] rev 48638
test-http-bad-server: refactor the writing logic to avoid early return
Our ultimate goal is to add another way to define the connection needs to be
closed. To do so, we need the "read" code to be more unified.
Differential Revision: https://phab.mercurial-scm.org/D12047
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jan 2022 11:58:55 +0100] rev 48637
test-http-bad-server: replace the default 65537 value in output
This is the default block value that we use here and it make the output overall
less readable. So we replace it with `~`
Differential Revision: https://phab.mercurial-scm.org/D12046
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jan 2022 11:15:56 +0100] rev 48636
test-http-bad-server: refactor the reading logic to avoid early return
Our ultimate goal is to add another way to define the connection needs to be
closed. To do so, we need the "read" code to be more unified.
Differential Revision: https://phab.mercurial-scm.org/D12045
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jan 2022 03:05:43 +0100] rev 48635
test-http-bad-server: factor code dealing with "read" in the new object
This will make sure both `read` and `readline` do the same processing and make
it simpler to update that processing in the future.
Differential Revision: https://phab.mercurial-scm.org/D12044
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jan 2022 00:54:15 +0100] rev 48634
test-http-bad-server: factor code dealing with "write" in the new object
This will make sure both `sendall` and `write` do the same processing and make
it simpler to update that processing in the future.
Differential Revision: https://phab.mercurial-scm.org/D12043
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 23 Jan 2022 21:25:01 +0100] rev 48633
test-http-bad-server: unify log printing for `sendall` and `write`
The `write` function was logging before calling the function while the `sendall`
function were logging after calling the function.
We align the `write` behavior on the `sendall` behavior before unifying the
code.
Differential Revision: https://phab.mercurial-scm.org/D12042
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Jan 2022 01:07:50 +0100] rev 48632
test-http-bad-server: track close condition in an object
In order to make the logic more advanced, we need to unify it. To unify it, we
introduce a small object that will be responsible for tracking and enforcing
"premature socket close" conditions for both proxy object (socketproxy and
fileobjectproxy).
More logic will be moved into the object in later changesets.
Differential Revision: https://phab.mercurial-scm.org/D12041
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 19 Jan 2022 19:14:17 +0100] rev 48631
test-http-bad-server: use more readable name for variable
This make the code more accessible overall.
Differential Revision: https://phab.mercurial-scm.org/D12040