summaryrefslogtreecommitdiff
path: root/cinderclient/tests/unit
diff options
context:
space:
mode:
authorIvan Kolodyazhny <e0ne@e0ne.info>2019-08-12 15:44:31 +0300
committerJay Bryant <jungleboyj@electronicjungle.net>2019-08-28 17:28:38 +0000
commit4a3a2c3c9a89ccff4e64d3da96de5b0af4303840 (patch)
treeb8e99212b2f257af5177ad9ac0fa652eb76ab8e0 /cinderclient/tests/unit
parentc4b50a10b3970aaf2d2e675e2fe8fd9b9bd4496b (diff)
downloadpython-cinderclient-4a3a2c3c9a89ccff4e64d3da96de5b0af4303840.tar.gz
Add custom CA support for get_server_version
get_server_version fails when self-signed CA cert is used. This patch adds: * insecure option to ignore SSL certificate validation * cacert to add ability to provide a custom SSL certificate Change-Id: Ib1d34a5a6b595c53473ddd3acb182ab5a39cbba5 Related-Bug: 1744670
Diffstat (limited to 'cinderclient/tests/unit')
-rw-r--r--cinderclient/tests/unit/test_client.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/cinderclient/tests/unit/test_client.py b/cinderclient/tests/unit/test_client.py
index 7fc6643..96348cd 100644
--- a/cinderclient/tests/unit/test_client.py
+++ b/cinderclient/tests/unit/test_client.py
@@ -361,6 +361,41 @@ class GetAPIVersionTestCase(utils.TestCase):
self.assertEqual(max_version, api_versions.APIVersion('3.16'))
@mock.patch('cinderclient.client.requests.get')
+ def test_get_server_version_insecure(self, mock_request):
+ mock_response = utils.TestResponse({
+ "status_code": 200,
+ "text": json.dumps(fakes.fake_request_get_no_v3())
+ })
+
+ mock_request.return_value = mock_response
+
+ url = (
+ "https://192.168.122.127:8776/v3/e5526285ebd741b1819393f772f11fc3")
+ expected_url = "https://192.168.122.127:8776/"
+
+ cinderclient.client.get_server_version(url, True)
+
+ mock_request.assert_called_once_with(expected_url, verify=False)
+
+ @mock.patch('cinderclient.client.requests.get')
+ def test_get_server_version_cacert(self, mock_request):
+ mock_response = utils.TestResponse({
+ "status_code": 200,
+ "text": json.dumps(fakes.fake_request_get_no_v3())
+ })
+
+ mock_request.return_value = mock_response
+
+ url = (
+ "https://192.168.122.127:8776/v3/e5526285ebd741b1819393f772f11fc3")
+ expected_url = "https://192.168.122.127:8776/"
+
+ cacert = '/path/to/cert'
+ cinderclient.client.get_server_version(url, cacert=cacert)
+
+ mock_request.assert_called_once_with(expected_url, verify=cacert)
+
+ @mock.patch('cinderclient.client.requests.get')
@ddt.data('3.12', '3.40')
def test_get_highest_client_server_version(self, version, mock_request):