Ignore S3 ACL for now since we do not implement it.

This commit is contained in:
Steve Pulec 2014-08-13 22:13:17 -04:00
parent 0bb3ecd1d5
commit 64ed605c14
2 changed files with 23 additions and 2 deletions

View File

@ -253,7 +253,7 @@ class ResponseObject(object):
if method == 'GET':
return self._key_response_get(bucket_name, query, key_name, headers)
elif method == 'PUT':
return self._key_response_put(request, body, bucket_name, query, key_name, headers)
return self._key_response_put(request, parsed_url, body, bucket_name, query, key_name, headers)
elif method == 'HEAD':
return self._key_response_head(bucket_name, key_name, headers)
elif method == 'DELETE':
@ -284,7 +284,7 @@ class ResponseObject(object):
else:
return 404, headers, ""
def _key_response_put(self, request, body, bucket_name, query, key_name, headers):
def _key_response_put(self, request, parsed_url, body, bucket_name, query, key_name, headers):
if 'uploadId' in query and 'partNumber' in query:
upload_id = query['uploadId'][0]
part_number = int(query['partNumber'][0])
@ -305,6 +305,10 @@ class ResponseObject(object):
storage_class = request.headers.get('x-amz-storage-class', 'STANDARD')
if parsed_url.query == 'acl':
# We don't implement ACL yet, so just return
return 200, headers, ""
if 'x-amz-copy-source' in request.headers:
# Copy key
src_bucket, src_key = request.headers.get("x-amz-copy-source").split("/", 1)

View File

@ -589,3 +589,20 @@ def test_list_versions():
versions[1].name.should.equal('the-key')
versions[1].version_id.should.equal('1')
versions[1].get_contents_as_string().should.equal("Version 2")
@mock_s3
def test_acl_is_ignored_for_now():
conn = boto.connect_s3()
bucket = conn.create_bucket('foobar')
content = 'imafile'
keyname = 'test.txt'
key = Key(bucket, name=keyname)
key.content_type = 'text/plain'
key.set_contents_from_string(content)
key.make_public()
key = bucket.get_key(keyname)
assert key.get_contents_as_string() == content