diff --git a/s3tests/functional/test_s3.py b/s3tests/functional/test_s3.py index 41bc72c..a59a76c 100644 --- a/s3tests/functional/test_s3.py +++ b/s3tests/functional/test_s3.py @@ -23,6 +23,7 @@ import threading import itertools import string import random +import re import xml.etree.ElementTree as ET @@ -832,6 +833,16 @@ def test_object_read_notexist(): eq(e.reason, 'Not Found') eq(e.error_code, 'NoSuchKey') +@attr(resource='object') +@attr(method='get') +@attr(operation='read contents that were never written to raise one error response') +@attr(assertion='RequestId appears in the error response') +def test_object_requestid_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(0) + assert request_id is not None @attr(resource='object') @attr(method='put')