summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorOlli Pottonen <olli.pottonen@iki.fi>2014-08-03 12:01:29 +1000
committerOlli Pottonen <olli.pottonen@iki.fi>2014-08-03 12:01:29 +1000
commit59ad5e21953a6d591f82def11aebd64808ab9559 (patch)
treee30b340782ddceb5bb62f1f7541edbf4199e5011 /tests
parent0c11983f083d69c0bff2a7a4f6f092618ddfc925 (diff)
downloadboto-59ad5e21953a6d591f82def11aebd64808ab9559.tar.gz
Improve metadata processing (system vs. user-defined).
Let Key.base_fields (boto/s3/key.py) be a list of all system metadata. All metadata processing shall refer to that list and treat everything included as system metadata and everything else as user metadata (which gets x-amz-meta- prefix.)
Diffstat (limited to 'tests')
-rw-r--r--tests/integration/s3/test_key.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/integration/s3/test_key.py b/tests/integration/s3/test_key.py
index 76ebc17f..139ebae7 100644
--- a/tests/integration/s3/test_key.py
+++ b/tests/integration/s3/test_key.py
@@ -403,13 +403,32 @@ class S3KeyTest(unittest.TestCase):
key.set_metadata('Cache-control', u'public, max-age=500')
key.set_metadata('Test-Plus', u'A plus (+)')
key.set_metadata('Content-disposition', u'filename=Schöne Zeit.txt')
+ key.set_metadata('Content-Encoding', 'gzip')
+ key.set_metadata('Content-Language', 'de')
+ key.set_metadata('Content-Type', 'application/pdf')
+ self.assertEqual(key.content_type, 'application/pdf')
+ key.set_metadata('X-Robots-Tag', 'all')
+ key.set_metadata('Expires', 'Thu, 01 Dec 1994 16:00:00 GMT')
key.set_contents_from_string('foo')
check = self.bucket.get_key('test_header_encoding')
+ remote_metadata = check._get_remote_metadata()
self.assertEqual(check.cache_control, 'public,%20max-age=500')
+ self.assertEqual(remote_metadata['cache-control'], 'public,%20max-age=500')
self.assertEqual(check.get_metadata('test-plus'), 'A plus (+)')
self.assertEqual(check.content_disposition, 'filename=Sch%C3%B6ne%20Zeit.txt')
+ self.assertEqual(remote_metadata['content-disposition'], 'filename=Sch%C3%B6ne%20Zeit.txt')
+ self.assertEqual(check.content_encoding, 'gzip')
+ self.assertEqual(remote_metadata['content-encoding'], 'gzip')
+ self.assertEqual(check.content_language, 'de')
+ self.assertEqual(remote_metadata['content-language'], 'de')
+ self.assertEqual(check.content_type, 'application/pdf')
+ self.assertEqual(remote_metadata['content-type'], 'application/pdf')
+ self.assertEqual(check.x_robots_tag, 'all')
+ self.assertEqual(remote_metadata['x-robots-tag'], 'all')
+ self.assertEqual(check.expires, 'Thu, 01 Dec 1994 16:00:00 GMT')
+ self.assertEqual(remote_metadata['expires'], 'Thu, 01 Dec 1994 16:00:00 GMT')
expected = u'filename=Schöne Zeit.txt'
if six.PY2: