check for None value in utils.safe_header
In case that a sensetive header (that should be obscured by its SHA1 hash) is None, the safe_header throws an exception which fails the calling process and by that may harm the functionality. Change-Id: I56944a382fd546eba0a6dd6d6b1cecf83b1dc106 Closes-Bug: #1491311
This commit is contained in:
@@ -177,3 +177,18 @@ class TestUtils(testtools.TestCase):
|
||||
i = utils.IterableWithLength(data, 10)
|
||||
self.assertRaises(IOError, _iterate, i)
|
||||
data.close.assert_called_with()
|
||||
|
||||
def test_safe_header(self):
|
||||
self.assertEqual(('somekey', 'somevalue'),
|
||||
utils.safe_header('somekey', 'somevalue'))
|
||||
self.assertEqual(('somekey', None),
|
||||
utils.safe_header('somekey', None))
|
||||
|
||||
for sensitive_header in utils.SENSITIVE_HEADERS:
|
||||
(name, value) = utils.safe_header(sensitive_header, 'somestring')
|
||||
self.assertEqual(sensitive_header, name)
|
||||
self.assertTrue(value.startswith("{SHA1}"))
|
||||
|
||||
(name, value) = utils.safe_header(sensitive_header, None)
|
||||
self.assertEqual(sensitive_header, name)
|
||||
self.assertIsNone(value)
|
||||
|
||||
Reference in New Issue
Block a user