summaryrefslogtreecommitdiff
path: root/tests/test_swiftclient.py
diff options
context:
space:
mode:
authorStanislav Vitkovskiy <stas.vitkovsky@gmail.com>2013-07-27 17:06:28 +1000
committerStanislav Vitkovskiy <stas.vitkovsky@gmail.com>2013-07-29 22:53:13 +1000
commitd34f12614820416aebe5e91eab9726b556d1f973 (patch)
tree7f98963b8d620c54b32f5d850ad09d2933ced7d6 /tests/test_swiftclient.py
parent5d9c6f845cc98da720fea7e2343fdbb0db9a42a5 (diff)
downloadpython-swiftclient-d34f12614820416aebe5e91eab9726b556d1f973.tar.gz
Added headers argument support to get_object()
With this change conditional and range GETs are possible, as documented in official API guide: http://docs.openstack.org/api/openstack-object-storage/1.0/content/retrieve-object.html Change-Id: Ib2ed1c21e8d3f1ed79c0b7e542ee022ee535835c
Diffstat (limited to 'tests/test_swiftclient.py')
-rw-r--r--tests/test_swiftclient.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/test_swiftclient.py b/tests/test_swiftclient.py
index a072878..a039d20 100644
--- a/tests/test_swiftclient.py
+++ b/tests/test_swiftclient.py
@@ -520,6 +520,26 @@ class TestGetObject(MockHttpTest):
c.get_object('http://www.test.com', 'asdf', 'asdf', 'asdf',
query_string="hello=20")
+ def test_request_headers(self):
+ request_args = {}
+
+ def fake_request(method, url, body=None, headers=None):
+ request_args['method'] = method
+ request_args['url'] = url
+ request_args['body'] = body
+ request_args['headers'] = headers
+ return
+ conn = self.fake_http_connection(200)('http://www.test.com/')
+ conn[1].request = fake_request
+ headers = {'Range': 'bytes=1-2'}
+ c.get_object('url_is_irrelevant', 'TOKEN', 'container', 'object',
+ http_conn=conn, headers=headers)
+ self.assertFalse(request_args['headers'] is None,
+ "No headers in the request")
+ self.assertTrue('Range' in request_args['headers'],
+ "No Range header in the request")
+ self.assertEquals(request_args['headers']['Range'], 'bytes=1-2')
+
class TestHeadObject(MockHttpTest):