mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2025-02-20 17:52:50 +00:00
test_web: workaround broken HEAD behavior in twisted-2.5.0 and earlier
This commit is contained in:
parent
6af4619928
commit
bcbb51fe4a
@ -99,6 +99,18 @@ class HTTPClientHEADFactory(client.HTTPClientFactory):
|
||||
client.HTTPClientFactory.__init__(self, *args, **kwargs)
|
||||
self.deferred.addCallback(lambda res: self.response_headers)
|
||||
|
||||
def noPage(self, reason):
|
||||
# Twisted-2.5.0 and earlier had a bug, in which they would raise an
|
||||
# exception when the response to a HEAD request had no body (when in
|
||||
# fact they are defined to never have a body). This was fixed in
|
||||
# Twisted-8.0 . To work around this, we catch the
|
||||
# PartialDownloadError and make it disappear.
|
||||
if (reason.check(client.PartialDownloadError)
|
||||
and self.method.upper() == "HEAD"):
|
||||
self.page("")
|
||||
return
|
||||
return client.HTTPClientFactory.noPage(self, reason)
|
||||
|
||||
|
||||
class WebMixin(object):
|
||||
def setUp(self):
|
||||
|
Loading…
x
Reference in New Issue
Block a user