diff options
author | Bala Konda Reddy M <bala12352@gmail.com> | 2020-10-13 18:20:47 +0530 |
---|---|---|
committer | Vaibhav Mahajan <vamahaja@redhat.com> | 2020-11-05 12:16:54 +0000 |
commit | a7e66b9910a0abd0c6af8099aa42e0088cb26c7a (patch) | |
tree | 835df5fb91c2deec2e58184483046d47aba50344 /tests/functional/heketi/test_heketi_authentication.py | |
parent | 2c7908c6be8184617f7046bc08a54b54512fed3e (diff) |
[Test] Add test for heketi authentication
Change-Id: I2dc817dafffa6c313d24fdd11014dc3f3e203aa8
Signed-off-by: Bala Konda Reddy M <bala12352@gmail.com>
Diffstat (limited to 'tests/functional/heketi/test_heketi_authentication.py')
-rw-r--r-- | tests/functional/heketi/test_heketi_authentication.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/functional/heketi/test_heketi_authentication.py b/tests/functional/heketi/test_heketi_authentication.py new file mode 100644 index 00000000..5979c808 --- /dev/null +++ b/tests/functional/heketi/test_heketi_authentication.py @@ -0,0 +1,33 @@ +from glusto.core import Glusto as g +import pytest + +from openshiftstoragelibs import baseclass +from openshiftstoragelibs import heketi_ops + + +class TestHeketiAuthenticationFromOCPClient(baseclass.BaseClass): + """Class to test heketi-client authentication""" + + @pytest.mark.tier1 + def test_heketi_authentication_with_user_credentials(self): + """Heketi command authentication with invalid and valid credentials""" + + h_client, h_server = self.heketi_client_node, self.heketi_server_url + err_msg = "Error: Invalid JWT token: Token missing iss claim" + + # Run heketi commands with invalid credentials + for each_cmd in ("volume list", "topology info"): + cmd = "timeout 120 heketi-cli -s {} {}".format( + self.heketi_server_url, each_cmd) + ret, _, err = g.run(h_client, cmd) + self.assertTrue(ret, "Command execution with invalid credentials" + " should not succeed") + self.assertEqual( + err_msg, err.strip(), "Error is different from the command" + " execution {}".format(err.strip())) + + # Run heketi commands with valid credentials + kwar = {'json_arg': True, 'secret': self.heketi_cli_key, + 'user': self.heketi_cli_user} + heketi_ops.heketi_volume_list(h_client, h_server, **kwar) + heketi_ops.heketi_topology_info(h_client, h_server, **kwar) |