mirror of
https://github.com/ceph/s3-tests.git
synced 2024-11-25 03:47:22 +00:00
Merge pull request #27 from xylv/wip-test-issue-10311
s3tests: add regression test for bug #10311 - rgw: Object is deleted automatically if conditional PUT returns 412 Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
This commit is contained in:
commit
4d0af2149f
1 changed files with 12 additions and 0 deletions
|
@ -2086,6 +2086,9 @@ def test_put_object_ifmatch_failed():
|
||||||
eq(e.reason, 'Precondition Failed')
|
eq(e.reason, 'Precondition Failed')
|
||||||
eq(e.error_code, 'PreconditionFailed')
|
eq(e.error_code, 'PreconditionFailed')
|
||||||
|
|
||||||
|
got_old_data = key.get_contents_as_string()
|
||||||
|
eq(got_old_data, 'bar')
|
||||||
|
|
||||||
|
|
||||||
@attr(resource='object')
|
@attr(resource='object')
|
||||||
@attr(method='put')
|
@attr(method='put')
|
||||||
|
@ -2117,6 +2120,10 @@ def test_put_object_ifmatch_nonexisted_failed():
|
||||||
eq(e.reason, 'Precondition Failed')
|
eq(e.reason, 'Precondition Failed')
|
||||||
eq(e.error_code, 'PreconditionFailed')
|
eq(e.error_code, 'PreconditionFailed')
|
||||||
|
|
||||||
|
e = assert_raises(boto.exception.S3ResponseError, key.get_contents_as_string)
|
||||||
|
eq(e.status, 404)
|
||||||
|
eq(e.reason, 'Not Found')
|
||||||
|
eq(e.error_code, 'NoSuchKey')
|
||||||
|
|
||||||
@attr(resource='object')
|
@attr(resource='object')
|
||||||
@attr(method='put')
|
@attr(method='put')
|
||||||
|
@ -2153,6 +2160,8 @@ def test_put_object_ifnonmatch_failed():
|
||||||
eq(e.reason, 'Precondition Failed')
|
eq(e.reason, 'Precondition Failed')
|
||||||
eq(e.error_code, 'PreconditionFailed')
|
eq(e.error_code, 'PreconditionFailed')
|
||||||
|
|
||||||
|
got_old_data = key.get_contents_as_string()
|
||||||
|
eq(got_old_data, 'bar')
|
||||||
|
|
||||||
@attr(resource='object')
|
@attr(resource='object')
|
||||||
@attr(method='put')
|
@attr(method='put')
|
||||||
|
@ -2185,6 +2194,9 @@ def test_put_object_ifnonmatch_overwrite_existed_failed():
|
||||||
eq(e.reason, 'Precondition Failed')
|
eq(e.reason, 'Precondition Failed')
|
||||||
eq(e.error_code, 'PreconditionFailed')
|
eq(e.error_code, 'PreconditionFailed')
|
||||||
|
|
||||||
|
got_old_data = key.get_contents_as_string()
|
||||||
|
eq(got_old_data, 'bar')
|
||||||
|
|
||||||
|
|
||||||
def _setup_request(bucket_acl=None, object_acl=None):
|
def _setup_request(bucket_acl=None, object_acl=None):
|
||||||
"""
|
"""
|
||||||
|
|
Loading…
Reference in a new issue