diff --git a/s3tests/functional/test_s3.py b/s3tests/functional/test_s3.py index a59a76c..08fa757 100644 --- a/s3tests/functional/test_s3.py +++ b/s3tests/functional/test_s3.py @@ -844,6 +844,17 @@ def test_object_requestid_on_error(): request_id = re.search(r'.*', e.body.encode('utf-8')).group(0) assert request_id is not None +@attr(resource='object') +@attr(method='get') +@attr(operation='read contents that were never written to raise one error response') +@attr(assertion='RequestId in the error response matchs the x-amz-request-id in the headers') +def test_object_requestid_matchs_header_on_error(): + bucket = get_new_bucket() + key = bucket.new_key('foobar') + e = assert_raises(boto.exception.S3ResponseError, key.get_contents_as_string) + request_id = re.search(r'(.*)', e.body.encode('utf-8')).group(1) + eq(key.resp.getheader('x-amz-request-id'), request_id) + @attr(resource='object') @attr(method='put') @attr(operation='write to special characters key')