summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2014-11-27 18:37:55 +0000
committerGerrit Code Review <review@openstack.org>2014-11-27 18:37:55 +0000
commit0bc4cfac2d882fae80d9e5a0a90e926a203d7027 (patch)
tree2df3c37777c821b6d86d51a646535219a7176949
parenteeb15df1ced108a486e61483c123ceb4c7c9e80d (diff)
parentb545b27c5f512c021c585f53b7d2fb0459d75b04 (diff)
downloadceilometer-0bc4cfac2d882fae80d9e5a0a90e926a203d7027.tar.gz
Merge "fix swift middleware parsing" into stable/juno
-rw-r--r--ceilometer/objectstore/swift_middleware.py2
-rw-r--r--ceilometer/tests/objectstore/test_swift_middleware.py9
2 files changed, 7 insertions, 4 deletions
diff --git a/ceilometer/objectstore/swift_middleware.py b/ceilometer/objectstore/swift_middleware.py
index fc4369db..fbb03377 100644
--- a/ceilometer/objectstore/swift_middleware.py
+++ b/ceilometer/objectstore/swift_middleware.py
@@ -150,7 +150,7 @@ class CeilometerMiddleware(object):
headers = {}
for header in env:
if header.startswith('HTTP_') and env[header]:
- key = header.strip('HTTP_')
+ key = header[5:]
if isinstance(env[header], six.text_type):
headers[key] = env[header].encode('utf-8')
else:
diff --git a/ceilometer/tests/objectstore/test_swift_middleware.py b/ceilometer/tests/objectstore/test_swift_middleware.py
index fb756d78..82a55012 100644
--- a/ceilometer/tests/objectstore/test_swift_middleware.py
+++ b/ceilometer/tests/objectstore/test_swift_middleware.py
@@ -224,19 +224,20 @@ class TestSwiftMiddleware(tests_base.BaseTestCase):
def test_metadata_headers(self):
app = swift_middleware.CeilometerMiddleware(FakeApp(), {
- 'metadata_headers': 'X_VAR1, x-var2, x-var3'
+ 'metadata_headers': 'X_VAR1, x-var2, x-var3, token'
})
req = FakeRequest('/1.0/account/container',
environ={'REQUEST_METHOD': 'GET'},
headers={'X_VAR1': 'value1',
- 'X_VAR2': 'value2'})
+ 'X_VAR2': 'value2',
+ 'TOKEN': 'token'})
list(app(req.environ, self.start_response))
samples = self.pipeline_manager.pipelines[0].samples
self.assertEqual(2, len(samples))
data = samples[0]
http_headers = [k for k in data.resource_metadata.keys()
if k.startswith('http_header_')]
- self.assertEqual(2, len(http_headers))
+ self.assertEqual(3, len(http_headers))
self.assertEqual('1.0', data.resource_metadata['version'])
self.assertEqual('container', data.resource_metadata['container'])
self.assertIsNone(data.resource_metadata['object'])
@@ -244,6 +245,8 @@ class TestSwiftMiddleware(tests_base.BaseTestCase):
data.resource_metadata['http_header_x_var1'])
self.assertEqual('value2',
data.resource_metadata['http_header_x_var2'])
+ self.assertEqual('token',
+ data.resource_metadata['http_header_token'])
self.assertFalse('http_header_x_var3' in data.resource_metadata)
def test_metadata_headers_unicode(self):