summaryrefslogtreecommitdiffstats
path: root/tests/functional/common
diff options
context:
space:
mode:
authorValerii Ponomarov <vponomar@redhat.com>2018-07-19 17:27:42 +0530
committerValerii Ponomarov <vponomar@redhat.com>2018-07-19 17:36:34 +0530
commitf8508c0cd42d8e1ba18e06d79f9ef515faa36fe2 (patch)
tree07af46d8cbb5e13ca0c55aa356f81311640cb245 /tests/functional/common
parentb7f6a80ceb1af26dec130facb64485ded0db18b2 (diff)
Refactor 'heketi_node_list' function
Do following improvements to this function: - Remove support of python Heketi client, because it is dead code. It is dead code, because all of the tests which use this function, explicitly depend on the CLI output, not being compatible with it. - Remove useless 'json' arg, as CLI client does not support it for 'node list' command. - Parse list of node IDs in it, not delegating this to the consumer. - Raise exception in case we failed to get list of nodes And, of course, update all the places where this function is used. Making those places use less code compared to previous variant. Change-Id: I3f1ffe6082541e63dc3d638c19c54086aa12580f
Diffstat (limited to 'tests/functional/common')
-rw-r--r--tests/functional/common/heketi/heketi_tests/test_create_heketi_volume_size_60.py6
-rw-r--r--tests/functional/common/heketi/heketi_tests/test_heketi_create_volume.py16
-rw-r--r--tests/functional/common/heketi/heketi_tests/test_node_info.py20
-rw-r--r--tests/functional/common/heketi/test_heketi_volume_operations.py12
-rw-r--r--tests/functional/common/heketi/test_volume_deletion.py15
-rw-r--r--tests/functional/common/heketi/test_volume_expansion_and_devices.py39
6 files changed, 22 insertions, 86 deletions
diff --git a/tests/functional/common/heketi/heketi_tests/test_create_heketi_volume_size_60.py b/tests/functional/common/heketi/heketi_tests/test_create_heketi_volume_size_60.py
index 62448b92..d871be30 100644
--- a/tests/functional/common/heketi/heketi_tests/test_create_heketi_volume_size_60.py
+++ b/tests/functional/common/heketi/heketi_tests/test_create_heketi_volume_size_60.py
@@ -25,13 +25,9 @@ class TestHeketiVolume(HeketiClientSetupBaseClass):
Get free space in each devices
"""
free_spaces = []
- heketi_node_id_list = []
device_list = []
- heketi_node_list_string = heketi_node_list(
+ heketi_node_id_list = heketi_node_list(
self.heketi_client_node, self.heketi_server_url)
- for line in heketi_node_list_string.strip().split("\n"):
- heketi_node_id_list.append(line.strip().split(
- "Cluster")[0].strip().split(":")[1])
for node_id in heketi_node_id_list:
node_info_dict = heketi_node_info(self.heketi_client_node,
self.heketi_server_url,
diff --git a/tests/functional/common/heketi/heketi_tests/test_heketi_create_volume.py b/tests/functional/common/heketi/heketi_tests/test_heketi_create_volume.py
index 80b6e1b6..38f6c4e9 100644
--- a/tests/functional/common/heketi/heketi_tests/test_heketi_create_volume.py
+++ b/tests/functional/common/heketi/heketi_tests/test_heketi_create_volume.py
@@ -160,16 +160,12 @@ class TestHeketiVolume(HeketiClientSetupBaseClass):
"""
# List of heketi node
- heketi_node_id_list = []
g.log.info("List heketi nodes")
- node_list = heketi_node_list(self.heketi_client_node,
- self.heketi_server_url,
- json=True)
- self.assertTrue(node_list, ("Failed to list heketi nodes"))
+ heketi_node_id_list = heketi_node_list(
+ self.heketi_client_node, self.heketi_server_url)
+ self.assertTrue(heketi_node_id_list, ("List of node IDs is empty."))
+
g.log.info("Successfully got the list of nodes")
- for line in node_list.strip().split("\n"):
- heketi_node_id_list.append(line.strip().split(
- "Cluster")[0].strip().split(":")[1])
for node_id in heketi_node_id_list:
g.log.info("Retrieve the node info")
node_info_dict = heketi_ops.heketi_node_info(
@@ -194,9 +190,9 @@ class TestHeketiVolume(HeketiClientSetupBaseClass):
"node %s because it contains devices")
# To confrim deletion failed, check node list
+ # TODO: fix following, it doesn't verify absence of the deleted nodes
g.log.info("Listing heketi node list")
node_list = heketi_node_list(self.heketi_client_node,
- self.heketi_server_url,
- json=True)
+ self.heketi_server_url)
self.assertTrue(node_list, ("Failed to list heketi nodes"))
g.log.info("Successfully got the list of nodes")
diff --git a/tests/functional/common/heketi/heketi_tests/test_node_info.py b/tests/functional/common/heketi/heketi_tests/test_node_info.py
index 94ac34b9..81462906 100644
--- a/tests/functional/common/heketi/heketi_tests/test_node_info.py
+++ b/tests/functional/common/heketi/heketi_tests/test_node_info.py
@@ -23,16 +23,12 @@ class TestHeketiVolume(HeketiClientSetupBaseClass):
"""
# List all list
- heketi_node_id_list = []
ip = []
g.log.info("Listing the node id")
- node_list = heketi_node_list(self.heketi_client_node,
- self.heketi_server_url)
- self.assertTrue(node_list, ("Failed to list heketi nodes"))
+ heketi_node_id_list = heketi_node_list(
+ self.heketi_client_node, self.heketi_server_url)
+
g.log.info("Successfully listed the node")
- for line in node_list.strip().split("\n"):
- heketi_node_id_list.append(line.strip().split(
- "Cluster")[0].strip().split(":")[1])
if (len(heketi_node_id_list) == 0):
raise ExecutionError("Node list empty")
@@ -77,15 +73,11 @@ class TestHeketiVolume(HeketiClientSetupBaseClass):
"""
# List all list
- heketi_node_id_list = []
g.log.info("Listing the node id")
- node_list = heketi_node_list(self.heketi_client_node,
- self.heketi_server_url)
- self.assertTrue(node_list, ("Failed to list heketi nodes"))
+ heketi_node_id_list = heketi_node_list(
+ self.heketi_client_node, self.heketi_server_url)
+ self.assertTrue(heketi_node_id_list, ("Node Id list is empty."))
g.log.info("Successfully listed the node")
- for line in node_list.strip().split("\n"):
- heketi_node_id_list.append(line.strip().split(
- "Cluster")[0].strip().split(":")[1])
for node_id in heketi_node_id_list:
g.log.info("Retrieve the node info")
diff --git a/tests/functional/common/heketi/test_heketi_volume_operations.py b/tests/functional/common/heketi/test_heketi_volume_operations.py
index 2b3a0b9b..f9de7f56 100644
--- a/tests/functional/common/heketi/test_heketi_volume_operations.py
+++ b/tests/functional/common/heketi/test_heketi_volume_operations.py
@@ -150,7 +150,6 @@ class TestHeketiVolumeOperations(HeketiClientSetupBaseClass):
and then trying to remove an existing device. We should get an error
saying insufficient space when removing device.
"""
- node_id_list = []
device_id_list = []
vol_info = heketi_volume_create(self.heketi_client_node,
@@ -161,18 +160,9 @@ class TestHeketiVolumeOperations(HeketiClientSetupBaseClass):
self.assertNotEqual(vol_info, False, "Failed to create heketi volume")
self.addCleanup(self.volume_cleanup, vol_info["id"])
- node_list_info = heketi_node_list(
+ node_id_list = heketi_node_list(
self.heketi_client_node, self.heketi_server_url)
- self.assertNotEqual(node_list_info, False,
- "heketi node list command failed")
-
- lines = node_list_info.strip().split("\n")
-
- for line in lines:
- node_id_list.append(line.strip().split("Cluster")
- [0].strip().split(":")[1])
-
for node_id in node_id_list[:2]:
device_present = False
node_info = heketi_node_info(
diff --git a/tests/functional/common/heketi/test_volume_deletion.py b/tests/functional/common/heketi/test_volume_deletion.py
index bf7b6835..be7b2e61 100644
--- a/tests/functional/common/heketi/test_volume_deletion.py
+++ b/tests/functional/common/heketi/test_volume_deletion.py
@@ -19,20 +19,11 @@ class TestVolumeDeleteTestCases(HeketiClientSetupBaseClass):
"""
Calculates free space across all devices
"""
- total_free_space = 0
- heketi_node_id_list = []
-
- heketi_node_list_string = heketi_ops.heketi_node_list(
- self.heketi_client_node,
- self.heketi_server_url, mode="cli", json=True)
- self.assertNotEqual(heketi_node_list_string, False,
- "Heketi node list command failed")
-
- for line in heketi_node_list_string.strip().split("\n"):
- heketi_node_id_list.append(line.strip().split(
- "Cluster")[0].strip().split(":")[1])
+ heketi_node_id_list = heketi_ops.heketi_node_list(
+ self.heketi_client_node, self.heketi_server_url)
+ total_free_space = 0
for node_id in heketi_node_id_list:
node_info_dict = heketi_ops.heketi_node_info(
self.heketi_client_node, self.heketi_server_url,
diff --git a/tests/functional/common/heketi/test_volume_expansion_and_devices.py b/tests/functional/common/heketi/test_volume_expansion_and_devices.py
index 2732d933..07ab13e5 100644
--- a/tests/functional/common/heketi/test_volume_expansion_and_devices.py
+++ b/tests/functional/common/heketi/test_volume_expansion_and_devices.py
@@ -168,20 +168,10 @@ class TestVolumeExpansionAndDevicesTestCases(HeketiClientSetupBaseClass):
returns total free space across all devices
"""
- heketi_node_id_list = []
free_spaces = []
- heketi_node_list_string = heketi_ops.heketi_node_list(
- self.heketi_client_node,
- self.heketi_server_url, mode="cli", json=True)
-
- self.assertNotEqual(
- heketi_node_list_string, False,
- "Heketi node list empty")
-
- for line in heketi_node_list_string.strip().split("\n"):
- heketi_node_id_list.append(line.strip().split(
- "Cluster")[0].strip().split(":")[1])
+ heketi_node_id_list = heketi_ops.heketi_node_list(
+ self.heketi_client_node, self.heketi_server_url)
for node_id in heketi_node_id_list:
node_info_dict = heketi_ops.heketi_node_info(
@@ -225,23 +215,13 @@ class TestVolumeExpansionAndDevicesTestCases(HeketiClientSetupBaseClass):
Method to test heketi device addition with background
gluster validation
"""
- node_id_list = []
device_id_list = []
hosts = []
gluster_servers = []
- node_list_info = heketi_ops.heketi_node_list(
+ node_id_list = heketi_ops.heketi_node_list(
self.heketi_client_node, self.heketi_server_url)
- self.assertNotEqual(node_list_info, False,
- "heketi node list command failed")
-
- lines = node_list_info.strip().split("\n")
-
- for line in lines:
- node_id_list.append(line.strip().split("Cluster")
- [0].strip().split(":")[1])
-
creation_info = heketi_ops.heketi_volume_create(
self.heketi_client_node, self.heketi_server_url, 100, json=True)
@@ -479,18 +459,9 @@ class TestVolumeExpansionAndDevicesTestCases(HeketiClientSetupBaseClass):
space
"""
- heketi_node_id_list = []
additional_devices_attached = {}
- heketi_node_list_string = heketi_ops.heketi_node_list(
- self.heketi_client_node,
- self.heketi_server_url, mode="cli", json=True)
-
- self.assertNotEqual(heketi_node_list_string, False,
- "Heketi node list command failed")
-
- for line in heketi_node_list_string.strip().split("\n"):
- heketi_node_id_list.append(line.strip().split(
- "Cluster")[0].strip().split(":")[1])
+ heketi_node_id_list = heketi_ops.heketi_node_list(
+ self.heketi_client_node, self.heketi_server_url)
for node_id in heketi_node_id_list:
node_info_dict = heketi_ops.heketi_node_info(