Add test for muiltpart copy without 'x-amz-copy-source-range' header

This commit is contained in:
Malcolm Lee 2018-01-24 13:55:53 +08:00
parent 6bef6ad125
commit 800a9a758f

View file

@ -5397,6 +5397,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')