From c393ca9b4d8f2aeb9dfa749e4c4c96d2db088660 Mon Sep 17 00:00:00 2001 From: kshithijiyer Date: Mon, 28 Jan 2019 15:40:26 +0530 Subject: Test to check if setting volume level options at cluster level is crashing glusterd Change-Id: I6ee034f019a4aa36a83e087f2d9fed007e4fd9d7 Signed-off-by: kshithijiyer --- .../test_setting_volume_level_option_to_cluster.py | 72 ++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 tests/functional/glusterd/test_setting_volume_level_option_to_cluster.py (limited to 'tests/functional') diff --git a/tests/functional/glusterd/test_setting_volume_level_option_to_cluster.py b/tests/functional/glusterd/test_setting_volume_level_option_to_cluster.py new file mode 100644 index 000000000..70aba2576 --- /dev/null +++ b/tests/functional/glusterd/test_setting_volume_level_option_to_cluster.py @@ -0,0 +1,72 @@ +# Copyright (C) 2019 Red Hat, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along` +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +from glusto.core import Glusto as g +from glustolibs.gluster.gluster_base_class import GlusterBaseClass +from glustolibs.gluster.peer_ops import is_peer_connected +from glustolibs.gluster.gluster_init import is_glusterd_running +from glustolibs.gluster.volume_ops import set_volume_options + + +class TestSettingVolumeLevelOptionToCluster(GlusterBaseClass): + + def test_setting_volume_level_option_to_cluster(self): + # pylint: disable=too-many-statements + """ + Test Case: + 1) Create a cluster. + 2) Try to set volume level options to cluster level. + (These should fail!) + eg: gluster v set all transport.listen-backlog 128 + gluster v set all performance.parallel-readdir on + 3) Check if glusterd has crashed or not.(Should not crash!) + """ + + # Set transport.listen-backlog to 128 for all volumes.(Should fail!) + ret = set_volume_options(self.mnode, 'all', + {'transport.listen-backlog': '128'}) + self.assertFalse(ret, "Error: Able to set transport.listen-backlog " + "to 128 for all volumes.") + g.log.info("EXPECTED: Failed to set transport.listen-backlog to 128" + " for all volumes.") + + # Checking if glusterd is running on all the nodes. + ret = is_glusterd_running(self.servers) + self.assertEqual(ret, 0, "glusterd has crashed.") + g.log.info("glusterd is running on all servers.") + + # Checking if all the peers are in connected state or not. + ret = is_peer_connected(self.mnode, self.servers) + self.assertTrue(ret, "All peers are not in connected state.") + g.log.info("All peers are in connected state.") + + # Set performance.parallel-readdir to on for all volumes.(Should fail!) + ret = set_volume_options(self.mnode, 'all', + {'performance.parallel-readdir': 'on'}) + self.assertFalse(ret, "Error: Able to set performance.parallel" + "-readdir to ON for all volumes.") + g.log.info("EXPECTED: Failed to set parallel-readdir to" + " ON for all volumes.") + + # Checking if glusterd is running on all the nodes + ret = is_glusterd_running(self.servers) + self.assertEqual(ret, 0, "glusterd has crashed.") + g.log.info("glusterd is running on all servers.") + + # Checking if all the peers are in connected state or not. + ret = is_peer_connected(self.mnode, self.servers) + self.assertTrue(ret, "All peers are not in connected state.") + g.log.info("All peers are in connected state.") -- cgit