summaryrefslogtreecommitdiff
path: root/keystoneclient/tests
diff options
context:
space:
mode:
authorBrant Knudson <bknudson@us.ibm.com>2015-04-07 19:38:29 +0000
committerBrant Knudson <bknudson@us.ibm.com>2015-04-20 17:33:32 -0500
commit8fa6b6f0b5e95493342ce71489d04f73db2418b8 (patch)
tree8f07cb2c6f7f254c991569f9b5c4a9db0f5c33cc /keystoneclient/tests
parent290e39dd19cb822f87472b5b45202fcf3eeaa0dd (diff)
downloadpython-keystoneclient-1.3.1.tar.gz
Fix s3_token middleware parsing insecure option1.3.1
The "insecure" option was being treated as a bool when it was actually provided as a string. The fix is to parse the string to a bool. Closes-Bug: 1411063 Change-Id: Id674f40532215788675c97a8fdfa91d4420347b3
Diffstat (limited to 'keystoneclient/tests')
-rw-r--r--keystoneclient/tests/unit/test_s3_token_middleware.py24
1 files changed, 23 insertions, 1 deletions
diff --git a/keystoneclient/tests/unit/test_s3_token_middleware.py b/keystoneclient/tests/unit/test_s3_token_middleware.py
index d5a62e8..dfb4406 100644
--- a/keystoneclient/tests/unit/test_s3_token_middleware.py
+++ b/keystoneclient/tests/unit/test_s3_token_middleware.py
@@ -124,7 +124,7 @@ class S3TokenMiddlewareTestGood(S3TokenMiddlewareTestBase):
@mock.patch.object(requests, 'post')
def test_insecure(self, MOCK_REQUEST):
self.middleware = (
- s3_token.filter_factory({'insecure': True})(FakeApp()))
+ s3_token.filter_factory({'insecure': 'True'})(FakeApp()))
text_return_value = jsonutils.dumps(GOOD_RESPONSE)
if six.PY3:
@@ -142,6 +142,28 @@ class S3TokenMiddlewareTestGood(S3TokenMiddlewareTestBase):
mock_args, mock_kwargs = MOCK_REQUEST.call_args
self.assertIs(mock_kwargs['verify'], False)
+ def test_insecure_option(self):
+ # insecure is passed as a string.
+
+ # Some non-secure values.
+ true_values = ['true', 'True', '1', 'yes']
+ for val in true_values:
+ config = {'insecure': val, 'certfile': 'false_ind'}
+ middleware = s3_token.filter_factory(config)(FakeApp())
+ self.assertIs(False, middleware.verify)
+
+ # Some "secure" values, including unexpected value.
+ false_values = ['false', 'False', '0', 'no', 'someweirdvalue']
+ for val in false_values:
+ config = {'insecure': val, 'certfile': 'false_ind'}
+ middleware = s3_token.filter_factory(config)(FakeApp())
+ self.assertEqual('false_ind', middleware.verify)
+
+ # Default is secure.
+ config = {'certfile': 'false_ind'}
+ middleware = s3_token.filter_factory(config)(FakeApp())
+ self.assertIs('false_ind', middleware.verify)
+
class S3TokenMiddlewareTestBad(S3TokenMiddlewareTestBase):
def setUp(self):