annotate tests/hgweberror.py @ 51316:178e50edb4f8

changelog: stop useless enforcing split at the end of transaction Changelogs are no longer created inline, and existing changelogs are automatically split. Since we now enforce splitting at the start of any write, we don't need to enforce splitting at the end of the transaction. This has the nice side effect of killing the only user of "side_write".
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Thu, 11 Jan 2024 16:35:52 +0100
parents 6000f5b25c9b
children 99632adff795
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
23409
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
1 # A dummy extension that installs an hgweb command that throws an Exception.
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
2
27299
74e6de99ce7f tests: use absolute_import in hgweberror.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23409
diff changeset
3
43076
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 40155
diff changeset
4 from mercurial.hgweb import webcommands
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 40155
diff changeset
5
23409
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
6
36887
4daa22071d5d hgweb: stop passing req and tmpl into @webcommand functions (API)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36876
diff changeset
7 def raiseerror(web):
23409
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
8 '''Dummy web command that raises an uncaught Exception.'''
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
9
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
10 # Simulate an error after partial response.
40155
0199fb5dde20 py3: byteify hgweberror.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36887
diff changeset
11 if b'partialresponse' in web.req.qsparams:
36876
97f44b0720e2 hgweb: port archive command to modern response API
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36865
diff changeset
12 web.res.status = b'200 Script output follows'
97f44b0720e2 hgweb: port archive command to modern response API
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36865
diff changeset
13 web.res.headers[b'Content-Type'] = b'text/plain'
97f44b0720e2 hgweb: port archive command to modern response API
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36865
diff changeset
14 web.res.setbodywillwrite()
97f44b0720e2 hgweb: port archive command to modern response API
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36865
diff changeset
15 list(web.res.sendresponse())
97f44b0720e2 hgweb: port archive command to modern response API
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36865
diff changeset
16 web.res.getbodyfile().write(b'partial content\n')
23409
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
17
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
18 raise AttributeError('I am an uncaught error!')
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
19
43076
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 40155
diff changeset
20
23409
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
21 def extsetup(ui):
dc4d2cd3aa3e hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
22 setattr(webcommands, 'raiseerror', raiseerror)
40155
0199fb5dde20 py3: byteify hgweberror.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36887
diff changeset
23 webcommands.__all__.append(b'raiseerror')