Merge pull request #205 from malc0lm/multipartcopy-no-range

Add test for muiltpart copy without 'x-amz-copy-source-range' header
This commit is contained in:
Ali Maredia 2018-02-13 14:03:15 -05:00 committed by GitHub
commit 5fb7f7a709
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -5401,6 +5401,25 @@ def test_multipart_copy_invalid_range():
# no standard error code defined # no standard error code defined
# eq(e.error_code, 'InvalidArgument') # eq(e.error_code, 'InvalidArgument')
@attr(resource='object')
@attr(method='put')
@attr(operation='check multipart copies without x-amz-copy-source-range')
def test_multipart_copy_without_range():
(src_bucket, src_key) = _create_key_with_random_content('source', size=10)
dst_bucket = get_new_bucket()
dst_keyname = "mymultipartcopy"
upload = dst_bucket.initiate_multipart_upload(dst_keyname)
# MultiPartUpload.copy_part_from_key() always add "x-amz-copy-source-range" in header
# So we can use copy_key() with query_args
query_args = 'uploadId=%s&partNumber=%d' % (upload.id, 1)
dst_bucket.copy_key(dst_keyname, src_bucket.name, src_key.name, query_args=query_args)
upload.complete_upload()
key2 = dst_bucket.get_key(dst_keyname)
eq(key2.size, 10)
_check_key_content(src_key, key2)
@attr(resource='object') @attr(resource='object')
@attr(method='put') @attr(method='put')
@attr(operation='check multipart copies with single small part') @attr(operation='check multipart copies with single small part')