key.set_contents_from_string('bar')
-@attr('fails_on_dho')
@attr(resource='object')
@attr(method='post')
@attr(operation='delete multiple objects')
@attr(method='post')
@attr(operation='anonymous browser based upload via POST request')
@attr(assertion='succeeds and returns written data')
-@attr('fails_on_dho')
def test_post_object_anonymous_request():
bucket = get_new_bucket()
bucket.set_acl('public-read-write')
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='succeeds and returns written data')
-@attr('fails_on_dho')
def test_post_object_authenticated_request():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='anonymous browser based upload via POST request')
@attr(assertion='succeeds with status 201')
-@attr('fails_on_dho')
def test_post_object_set_success_code():
bucket = get_new_bucket()
bucket.set_acl('public-read-write')
@attr(method='post')
@attr(operation='anonymous browser based upload via POST request')
@attr(assertion='succeeds with status 204')
-@attr('fails_on_dho')
def test_post_object_set_invalid_success_code():
bucket = get_new_bucket()
bucket.set_acl('public-read-write')
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='succeeds and returns written data')
-@attr('fails_on_dho')
def test_post_object_upload_larger_than_chunk():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='succeeds and returns written data')
-@attr('fails_on_dho')
def test_post_object_set_key_from_filename():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='succeeds with status 204')
-@attr('fails_on_dho')
def test_post_object_ignored_header():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='succeeds with status 204')
-@attr('fails_on_dho')
def test_post_object_case_insensitive_condition_fields():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='succeeds with escaped leading $ and returns written data')
-@attr('fails_on_dho')
def test_post_object_escaped_field_values():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='succeeds and returns redirect url')
-@attr('fails_on_dho')
def test_post_object_success_redirect_action():
bucket = get_new_bucket()
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with invalid signature error')
-@attr('fails_on_dho')
def test_post_object_invalid_signature():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with access key does not exist error')
-@attr('fails_on_dho')
def test_post_object_invalid_access_key():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with invalid expiration error')
-@attr('fails_on_dho')
def test_post_object_invalid_date_format():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with missing key error')
-@attr('fails_on_dho')
def test_post_object_no_key_specified():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with missing signature error')
-@attr('fails_on_dho')
def test_post_object_missing_signature():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with extra input fields policy error')
-@attr('fails_on_dho')
def test_post_object_missing_policy_condition():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='succeeds using starts-with restriction on metadata header')
-@attr('fails_on_dho')
def test_post_object_user_specified_header():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with policy condition failed error due to missing field in POST request')
-@attr('fails_on_dho')
def test_post_object_request_missing_policy_specified_field():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with conditions must be list error')
-@attr('fails_on_dho')
def test_post_object_condition_is_case_sensitive():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with expiration must be string error')
-@attr('fails_on_dho')
def test_post_object_expires_is_case_sensitive():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with policy expired error')
-@attr('fails_on_dho')
def test_post_object_expired_policy():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails using equality restriction on metadata header')
-@attr('fails_on_dho')
def test_post_object_invalid_request_field_value():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with policy missing expiration error')
-@attr('fails_on_dho')
def test_post_object_missing_expires_condition():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with policy missing conditions error')
-@attr('fails_on_dho')
def test_post_object_missing_conditions_list():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with allowable upload size exceeded error')
-@attr('fails_on_dho')
def test_post_object_upload_size_limit_exceeded():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with invalid content length error')
-@attr('fails_on_dho')
def test_post_object_missing_content_length_argument():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with invalid JSON error')
-@attr('fails_on_dho')
def test_post_object_invalid_content_length_argument():
bucket = get_new_bucket()
conn = s3.main
@attr(method='post')
@attr(operation='authenticated browser based upload via POST request')
@attr(assertion='fails with upload size less than minimum allowable error')
-@attr('fails_on_dho')
def test_post_object_upload_size_below_minimum():
bucket = get_new_bucket()
conn = s3.main