summaryrefslogtreecommitdiff
path: root/tests/test_swiftclient.py
diff options
context:
space:
mode:
authorJohn Dickinson <me@not.mn>2014-03-28 15:45:37 -0700
committerJohn Dickinson <me@not.mn>2014-03-30 10:29:07 -0700
commit4f3d6e7f3af0c518d7a55b930947a6fbd5b0a5ae (patch)
tree5dea2ec8b98b9629bd4e023ddab51c49015743d3 /tests/test_swiftclient.py
parentcdf6f84c360088d39af1b8e1745c102fc44ac362 (diff)
downloadpython-swiftclient-4f3d6e7f3af0c518d7a55b930947a6fbd5b0a5ae.tar.gz
set user-agent header
Change-Id: Ia67807667b4b5177d83cce9fcf16d98dc5024fbc
Diffstat (limited to 'tests/test_swiftclient.py')
-rw-r--r--tests/test_swiftclient.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/test_swiftclient.py b/tests/test_swiftclient.py
index 8f70947..552ca0f 100644
--- a/tests/test_swiftclient.py
+++ b/tests/test_swiftclient.py
@@ -191,6 +191,48 @@ class TestHttpHelpers(MockHttpTest):
url = 'ftp://www.test.com'
self.assertRaises(c.ClientException, c.http_connection, url)
+ def test_set_user_agent_default(self):
+ _junk, conn = c.http_connection('http://www.example.com')
+ req_headers = {}
+
+ def my_request_handler(*a, **kw):
+ req_headers.update(kw.get('headers', {}))
+ conn._request = my_request_handler
+
+ # test the default
+ conn.request('GET', '/')
+ ua = req_headers.get('user-agent', 'XXX-MISSING-XXX')
+ self.assert_(ua.startswith('python-swiftclient-'))
+
+ def test_set_user_agent_per_request_override(self):
+ _junk, conn = c.http_connection('http://www.example.com')
+ req_headers = {}
+
+ def my_request_handler(*a, **kw):
+ req_headers.update(kw.get('headers', {}))
+ conn._request = my_request_handler
+
+ # test if it's actually set
+ conn.request('GET', '/', headers={'User-Agent': 'Me'})
+ ua = req_headers.get('user-agent', 'XXX-MISSING-XXX')
+ self.assertEqual(ua, 'Me', req_headers)
+
+ def test_set_user_agent_default_override(self):
+ _junk, conn = c.http_connection(
+ 'http://www.example.com',
+ default_user_agent='a-new-default')
+ req_headers = {}
+
+ def my_request_handler(*a, **kw):
+ req_headers.update(kw.get('headers', {}))
+ conn._request = my_request_handler
+
+ # test setting a default
+ conn._request = my_request_handler
+ conn.request('GET', '/')
+ ua = req_headers.get('user-agent', 'XXX-MISSING-XXX')
+ self.assertEqual(ua, 'a-new-default')
+
def test_validate_headers(self):
headers = {'key': 'value'}
self.assertEqual(c.validate_headers(headers), None)