From c788b7d0cdd2203da1b2e019fe39dfd50784b4fb Mon Sep 17 00:00:00 2001 From: Andrew Gaul Date: Fri, 18 Dec 2015 12:12:59 -0800 Subject: [PATCH] Test begin to overwrite file with MPU then abort Signed-off-by: Andrew Gaul --- s3tests/functional/test_s3.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/s3tests/functional/test_s3.py b/s3tests/functional/test_s3.py index 0040e43..31002d0 100644 --- a/s3tests/functional/test_s3.py +++ b/s3tests/functional/test_s3.py @@ -5671,6 +5671,27 @@ def test_atomic_write_bucket_gone(): eq(e.reason, 'Not Found') eq(e.error_code, 'NoSuchBucket') +@attr(resource='object') +@attr(method='put') +@attr(operation='begin to overwrite file with multipart upload then abort') +@attr(assertion='read back original key contents') +def test_atomic_multipart_upload_write(): + bucket = get_new_bucket() + key = bucket.new_key('foo') + key.set_contents_from_string('bar') + + upload = bucket.initiate_multipart_upload(key) + + key = bucket.get_key('foo') + got = key.get_contents_as_string() + eq(got, 'bar') + + upload.cancel_upload() + + key = bucket.get_key('foo') + got = key.get_contents_as_string() + eq(got, 'bar') + @attr(resource='object') @attr(method='get') @attr(operation='range')