Merge pull request #130 from ceph/wip-aws2-aws4

rgw: skip aws2 requests when testing aws4
This commit is contained in:
Yehuda Sadeh 2016-11-02 11:44:37 -07:00 committed by GitHub
commit 3641923f23

View file

@ -694,6 +694,7 @@ def test_bucket_create_bad_authorization_none():
@attr(assertion='fails 400') @attr(assertion='fails 400')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_md5_invalid_garbage_aws2(): def test_object_create_bad_md5_invalid_garbage_aws2():
check_aws2_support()
key = _setup_bad_object({'Content-MD5':'AWS HAHAHA'}) key = _setup_bad_object({'Content-MD5':'AWS HAHAHA'})
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
eq(e.status, 400) eq(e.status, 400)
@ -708,6 +709,7 @@ def test_object_create_bad_md5_invalid_garbage_aws2():
@attr(assertion='fails 400') @attr(assertion='fails 400')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_contentlength_mismatch_below_aws2(): def test_object_create_bad_contentlength_mismatch_below_aws2():
check_aws2_support()
content = 'bar' content = 'bar'
length = len(content) - 1 length = len(content) - 1
key = _setup_bad_object({'Content-Length': length}) key = _setup_bad_object({'Content-Length': length})
@ -724,6 +726,7 @@ def test_object_create_bad_contentlength_mismatch_below_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_authorization_incorrect_aws2(): def test_object_create_bad_authorization_incorrect_aws2():
check_aws2_support()
key = _setup_bad_object({'Authorization': 'AWS AKIAIGR7ZNNBHC5BKSUB:FWeDfwojDSdS2Ztmpfeubhd9isU='}) key = _setup_bad_object({'Authorization': 'AWS AKIAIGR7ZNNBHC5BKSUB:FWeDfwojDSdS2Ztmpfeubhd9isU='})
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
eq(e.status, 403) eq(e.status, 403)
@ -738,6 +741,7 @@ def test_object_create_bad_authorization_incorrect_aws2():
@attr(operation='create w/invalid authorization') @attr(operation='create w/invalid authorization')
@attr(assertion='fails 400') @attr(assertion='fails 400')
def test_object_create_bad_authorization_invalid_aws2(): def test_object_create_bad_authorization_invalid_aws2():
check_aws2_support()
key = _setup_bad_object({'Authorization': 'AWS HAHAHA'}) key = _setup_bad_object({'Authorization': 'AWS HAHAHA'})
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
eq(e.status, 400) eq(e.status, 400)
@ -752,6 +756,7 @@ def test_object_create_bad_authorization_invalid_aws2():
@attr(assertion='succeeds') @attr(assertion='succeeds')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_ua_empty_aws2(): def test_object_create_bad_ua_empty_aws2():
check_aws2_support()
key = _setup_bad_object({'User-Agent': ''}) key = _setup_bad_object({'User-Agent': ''})
key.set_contents_from_string('bar') key.set_contents_from_string('bar')
@ -764,6 +769,7 @@ def test_object_create_bad_ua_empty_aws2():
@attr('fails_strict_rfc2616') @attr('fails_strict_rfc2616')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_ua_unreadable_aws2(): def test_object_create_bad_ua_unreadable_aws2():
check_aws2_support()
key = _setup_bad_object({'User-Agent': '\x07'}) key = _setup_bad_object({'User-Agent': '\x07'})
key.set_contents_from_string('bar') key.set_contents_from_string('bar')
@ -775,6 +781,7 @@ def test_object_create_bad_ua_unreadable_aws2():
@attr(assertion='succeeds') @attr(assertion='succeeds')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_ua_none_aws2(): def test_object_create_bad_ua_none_aws2():
check_aws2_support()
key = _setup_bad_object(remove=('User-Agent',)) key = _setup_bad_object(remove=('User-Agent',))
key.set_contents_from_string('bar') key.set_contents_from_string('bar')
@ -786,6 +793,7 @@ def test_object_create_bad_ua_none_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_date_invalid_aws2(): def test_object_create_bad_date_invalid_aws2():
check_aws2_support()
key = _setup_bad_object({'Date': 'Bad Date'}) key = _setup_bad_object({'Date': 'Bad Date'})
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
eq(e.status, 403) eq(e.status, 403)
@ -800,6 +808,7 @@ def test_object_create_bad_date_invalid_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_date_empty_aws2(): def test_object_create_bad_date_empty_aws2():
check_aws2_support()
key = _setup_bad_object({'Date': ''}) key = _setup_bad_object({'Date': ''})
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
eq(e.status, 403) eq(e.status, 403)
@ -815,6 +824,7 @@ def test_object_create_bad_date_empty_aws2():
@attr('fails_strict_rfc2616') @attr('fails_strict_rfc2616')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_date_unreadable_aws2(): def test_object_create_bad_date_unreadable_aws2():
check_aws2_support()
key = _setup_bad_object({'Date': '\x07'}) key = _setup_bad_object({'Date': '\x07'})
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
@ -830,6 +840,7 @@ def test_object_create_bad_date_unreadable_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_date_none_aws2(): def test_object_create_bad_date_none_aws2():
check_aws2_support()
key = _setup_bad_object(remove=('Date',)) key = _setup_bad_object(remove=('Date',))
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
eq(e.status, 403) eq(e.status, 403)
@ -844,6 +855,7 @@ def test_object_create_bad_date_none_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_date_before_today_aws2(): def test_object_create_bad_date_before_today_aws2():
check_aws2_support()
key = _setup_bad_object({'Date': 'Tue, 07 Jul 2010 21:53:04 GMT'}) key = _setup_bad_object({'Date': 'Tue, 07 Jul 2010 21:53:04 GMT'})
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
eq(e.status, 403) eq(e.status, 403)
@ -858,6 +870,7 @@ def test_object_create_bad_date_before_today_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_date_after_today_aws2(): def test_object_create_bad_date_after_today_aws2():
check_aws2_support()
key = _setup_bad_object({'Date': 'Tue, 07 Jul 2030 21:53:04 GMT'}) key = _setup_bad_object({'Date': 'Tue, 07 Jul 2030 21:53:04 GMT'})
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
eq(e.status, 403) eq(e.status, 403)
@ -872,6 +885,7 @@ def test_object_create_bad_date_after_today_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_date_before_epoch_aws2(): def test_object_create_bad_date_before_epoch_aws2():
check_aws2_support()
key = _setup_bad_object({'Date': 'Tue, 07 Jul 1950 21:53:04 GMT'}) key = _setup_bad_object({'Date': 'Tue, 07 Jul 1950 21:53:04 GMT'})
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
eq(e.status, 403) eq(e.status, 403)
@ -886,6 +900,7 @@ def test_object_create_bad_date_before_epoch_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_object_create_bad_date_after_end_aws2(): def test_object_create_bad_date_after_end_aws2():
check_aws2_support()
key = _setup_bad_object({'Date': 'Tue, 07 Jul 9999 21:53:04 GMT'}) key = _setup_bad_object({'Date': 'Tue, 07 Jul 9999 21:53:04 GMT'})
e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar') e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_string, 'bar')
eq(e.status, 403) eq(e.status, 403)
@ -900,6 +915,7 @@ def test_object_create_bad_date_after_end_aws2():
@attr(assertion='fails 400') @attr(assertion='fails 400')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_authorization_invalid_aws2(): def test_bucket_create_bad_authorization_invalid_aws2():
check_aws2_support()
_add_custom_headers({'Authorization': 'AWS HAHAHA'}) _add_custom_headers({'Authorization': 'AWS HAHAHA'})
e = assert_raises(boto.exception.S3ResponseError, get_new_bucket) e = assert_raises(boto.exception.S3ResponseError, get_new_bucket)
eq(e.status, 400) eq(e.status, 400)
@ -914,6 +930,7 @@ def test_bucket_create_bad_authorization_invalid_aws2():
@attr(assertion='succeeds') @attr(assertion='succeeds')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_ua_empty_aws2(): def test_bucket_create_bad_ua_empty_aws2():
check_aws2_support()
_add_custom_headers({'User-Agent': ''}) _add_custom_headers({'User-Agent': ''})
bucket = get_new_bucket() bucket = get_new_bucket()
@ -926,6 +943,7 @@ def test_bucket_create_bad_ua_empty_aws2():
@attr('fails_strict_rfc2616') @attr('fails_strict_rfc2616')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_ua_unreadable_aws2(): def test_bucket_create_bad_ua_unreadable_aws2():
check_aws2_support()
_add_custom_headers({'User-Agent': '\x07'}) _add_custom_headers({'User-Agent': '\x07'})
bucket = get_new_bucket() bucket = get_new_bucket()
@ -937,6 +955,7 @@ def test_bucket_create_bad_ua_unreadable_aws2():
@attr(assertion='succeeds') @attr(assertion='succeeds')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_ua_none_aws2(): def test_bucket_create_bad_ua_none_aws2():
check_aws2_support()
_add_custom_headers(remove=('User-Agent',)) _add_custom_headers(remove=('User-Agent',))
bucket = get_new_bucket() bucket = get_new_bucket()
@ -948,6 +967,7 @@ def test_bucket_create_bad_ua_none_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_date_invalid_aws2(): def test_bucket_create_bad_date_invalid_aws2():
check_aws2_support()
_add_custom_headers({'Date': 'Bad Date'}) _add_custom_headers({'Date': 'Bad Date'})
e = assert_raises(boto.exception.S3ResponseError, get_new_bucket) e = assert_raises(boto.exception.S3ResponseError, get_new_bucket)
eq(e.status, 403) eq(e.status, 403)
@ -962,6 +982,7 @@ def test_bucket_create_bad_date_invalid_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_date_empty_aws2(): def test_bucket_create_bad_date_empty_aws2():
check_aws2_support()
_add_custom_headers({'Date': ''}) _add_custom_headers({'Date': ''})
e = assert_raises(boto.exception.S3ResponseError, get_new_bucket) e = assert_raises(boto.exception.S3ResponseError, get_new_bucket)
eq(e.status, 403) eq(e.status, 403)
@ -977,6 +998,7 @@ def test_bucket_create_bad_date_empty_aws2():
@attr('fails_strict_rfc2616') @attr('fails_strict_rfc2616')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_date_unreadable_aws2(): def test_bucket_create_bad_date_unreadable_aws2():
check_aws2_support()
_add_custom_headers({'Date': '\x07'}) _add_custom_headers({'Date': '\x07'})
e = assert_raises(boto.exception.S3ResponseError, get_new_bucket) e = assert_raises(boto.exception.S3ResponseError, get_new_bucket)
eq(e.status, 403) eq(e.status, 403)
@ -991,6 +1013,7 @@ def test_bucket_create_bad_date_unreadable_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_date_none_aws2(): def test_bucket_create_bad_date_none_aws2():
check_aws2_support()
_add_custom_headers(remove=('Date',)) _add_custom_headers(remove=('Date',))
e = assert_raises(boto.exception.S3ResponseError, get_new_bucket) e = assert_raises(boto.exception.S3ResponseError, get_new_bucket)
eq(e.status, 403) eq(e.status, 403)
@ -1005,6 +1028,7 @@ def test_bucket_create_bad_date_none_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_date_before_today_aws2(): def test_bucket_create_bad_date_before_today_aws2():
check_aws2_support()
_add_custom_headers({'Date': 'Tue, 07 Jul 2010 21:53:04 GMT'}) _add_custom_headers({'Date': 'Tue, 07 Jul 2010 21:53:04 GMT'})
e = assert_raises(boto.exception.S3ResponseError, get_new_bucket) e = assert_raises(boto.exception.S3ResponseError, get_new_bucket)
eq(e.status, 403) eq(e.status, 403)
@ -1019,6 +1043,7 @@ def test_bucket_create_bad_date_before_today_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_date_after_today_aws2(): def test_bucket_create_bad_date_after_today_aws2():
check_aws2_support()
_add_custom_headers({'Date': 'Tue, 07 Jul 2030 21:53:04 GMT'}) _add_custom_headers({'Date': 'Tue, 07 Jul 2030 21:53:04 GMT'})
e = assert_raises(boto.exception.S3ResponseError, get_new_bucket) e = assert_raises(boto.exception.S3ResponseError, get_new_bucket)
eq(e.status, 403) eq(e.status, 403)
@ -1033,6 +1058,7 @@ def test_bucket_create_bad_date_after_today_aws2():
@attr(assertion='fails 403') @attr(assertion='fails 403')
@nose.with_setup(teardown=_clear_custom_headers) @nose.with_setup(teardown=_clear_custom_headers)
def test_bucket_create_bad_date_before_epoch_aws2(): def test_bucket_create_bad_date_before_epoch_aws2():
check_aws2_support()
_add_custom_headers({'Date': 'Tue, 07 Jul 1950 21:53:04 GMT'}) _add_custom_headers({'Date': 'Tue, 07 Jul 1950 21:53:04 GMT'})
e = assert_raises(boto.exception.S3ResponseError, get_new_bucket) e = assert_raises(boto.exception.S3ResponseError, get_new_bucket)
eq(e.status, 403) eq(e.status, 403)
@ -1047,6 +1073,11 @@ def check_aws4_support():
if 'S3_USE_SIGV4' not in os.environ: if 'S3_USE_SIGV4' not in os.environ:
raise SkipTest raise SkipTest
def check_aws2_support():
if 'S3_USE_SIGV4' in os.environ:
raise SkipTest
@tag('auth_aws4') @tag('auth_aws4')
@attr(resource='object') @attr(resource='object')
@attr(method='put') @attr(method='put')