bucket: fix success code of HEAD request

The current code returns 204 when HEAD Buecket succeeds, but AWS S3 returns
200.

Change-Id: Id7d335f48e4453edce32191e9e7a79641ff8e96b
This commit is contained in:
MORITA Kazutaka
2014-07-07 20:50:49 +09:00
parent 272ea27a8e
commit e05ef6ed27
2 changed files with 10 additions and 1 deletions

View File

@@ -33,7 +33,9 @@ class BucketController(Controller):
"""
Handle HEAD Bucket (Get Metadata) request
"""
return req.get_response(self.app)
resp = req.get_response(self.app)
return HTTPOk(headers=resp.headers)
def GET(self, req):
"""

View File

@@ -48,6 +48,13 @@ class TestSwift3Bucket(Swift3TestCase):
self.setup_objects()
def test_bucket_HEAD(self):
req = Request.blank('/junk',
environ={'REQUEST_METHOD': 'HEAD'},
headers={'Authorization': 'AWS test:tester:hmac'})
status, headers, body = self.call_swift3(req)
self.assertEquals(status.split()[0], '200')
def test_bucket_GET_error(self):
code = self._test_method_error('GET', '/bucket', swob.HTTPUnauthorized)
self.assertEquals(code, 'SignatureDoesNotMatch')