diff options
author | Daniel Wakefield <daniel.wakefield@hp.com> | 2014-11-06 14:10:13 +0000 |
---|---|---|
committer | Daniel Wakefield <daniel.wakefield@hp.com> | 2014-11-13 11:25:45 +0000 |
commit | 0f2b0dc300be50c69bb0227ec736a535710ead01 (patch) | |
tree | e722bb0704e2f9cc1e958d8e5cd383ed60d7c6a9 /tests/unit/test_swiftclient.py | |
parent | 202bbab2d06b9ef751fba306effd09f3bae8f383 (diff) | |
download | python-swiftclient-0f2b0dc300be50c69bb0227ec736a535710ead01.tar.gz |
Add unit tests for _encode_meta_headers
Also move it to a module level function.
Change-Id: I2da64876815619a6db7ff208061df2191767806c
Diffstat (limited to 'tests/unit/test_swiftclient.py')
-rw-r--r-- | tests/unit/test_swiftclient.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/unit/test_swiftclient.py b/tests/unit/test_swiftclient.py index e366f7d..796f93c 100644 --- a/tests/unit/test_swiftclient.py +++ b/tests/unit/test_swiftclient.py @@ -34,6 +34,7 @@ from .utils import MockHttpTest, fake_get_auth_keystone from swiftclient import client as c import swiftclient.utils +import swiftclient class TestClientException(testtools.TestCase): @@ -160,6 +161,25 @@ class TestHttpHelpers(MockHttpTest): url = 'ftp://www.test.com' self.assertRaises(c.ClientException, c.http_connection, url) + def test_encode_meta_headers(self): + headers = {'abc': '123', + u'x-container-meta-\u0394': '123', + u'x-account-meta-\u0394': '123', + u'x-object-meta-\u0394': '123'} + + encoded_str_type = type(''.encode()) + r = swiftclient.encode_meta_headers(headers) + + self.assertEqual(len(headers), len(r)) + # ensure non meta headers are not encoded + self.assertTrue('abc' in r) + self.assertTrue(isinstance(r['abc'], encoded_str_type)) + del r['abc'] + + for k, v in r.items(): + self.assertTrue(isinstance(k, encoded_str_type)) + self.assertTrue(isinstance(v, encoded_str_type)) + def test_set_user_agent_default(self): _junk, conn = c.http_connection('http://www.example.com') req_headers = {} |