Skip to content

Commit a4d8674

Browse files
committed
Dev: unittests: Adjust unit test for previous commits
1 parent b828bd8 commit a4d8674

File tree

3 files changed

+17
-20
lines changed

3 files changed

+17
-20
lines changed

test/unittests/test_bootstrap.py

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -520,16 +520,10 @@ def tearDownClass(cls):
520520
Global tearDown.
521521
"""
522522

523-
@mock.patch('crmsh.parallax.parallax_call')
524523
@mock.patch('crmsh.service_manager.ServiceManager.start_service')
525-
@mock.patch('crmsh.sbd.SBDTimeout.is_sbd_delay_start')
526-
@mock.patch('crmsh.service_manager.ServiceManager.service_is_enabled')
527-
@mock.patch('crmsh.utils.package_is_installed')
528-
def test_start_pacemaker(self, mock_installed, mock_enabled, mock_delay_start, mock_start, mock_parallax_call):
524+
@mock.patch('crmsh.sbd.SBDManager.unset_sbd_delay_start')
525+
def test_start_pacemaker(self, mock_unset_delay_start, mock_start):
529526
bootstrap._context = None
530-
mock_installed.return_value = True
531-
mock_enabled.return_value = True
532-
mock_delay_start.return_value = True
533527
node_list = ["node1", "node2", "node3", "node4", "node5", "node6"]
534528
bootstrap.start_pacemaker(node_list)
535529
mock_start.assert_has_calls([
@@ -541,11 +535,6 @@ def test_start_pacemaker(self, mock_installed, mock_enabled, mock_delay_start, m
541535
mock.call("corosync.service", remote_addr="node6"),
542536
mock.call("pacemaker.service", enable=False, node_list=node_list)
543537
])
544-
mock_parallax_call.assert_has_calls([
545-
mock.call(node_list, f'mkdir -p {sbd.SBDManager.SBD_SYSTEMD_DELAY_START_DISABLE_DIR}'),
546-
mock.call(node_list, f"echo -e '[Service]\nUnsetEnvironment=SBD_DELAY_START' > {sbd.SBDManager.SBD_SYSTEMD_DELAY_START_DISABLE_FILE}"),
547-
mock.call(node_list, "systemctl daemon-reload"),
548-
])
549538

550539
@mock.patch('crmsh.bootstrap.change_user_shell')
551540
@mock.patch('crmsh.bootstrap.configure_ssh_key')

test/unittests/test_sbd.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -274,8 +274,9 @@ def test_check_and_fix_sbd_not_active(self, mock_service_manager, mock_logger_wa
274274
mock_service_manager_inst.service_is_active.assert_called_once_with(constants.SBD_SERVICE)
275275
mock_logger_warning.assert_called_once_with('%s is not active, skip SBD timeout checks', constants.SBD_SERVICE)
276276

277+
@patch('crmsh.utils.check_all_nodes_reachable')
277278
@patch('crmsh.sbd.ServiceManager')
278-
def test_check_and_fix_sbd_inconsistent(self, mock_service_manager):
279+
def test_check_and_fix_sbd_inconsistent(self, mock_service_manager, mock_check_all_nodes_reachable):
279280
mock_service_manager_inst = Mock()
280281
mock_service_manager.return_value = mock_service_manager_inst
281282
mock_service_manager_inst.service_is_active = Mock(return_value=True)
@@ -285,8 +286,9 @@ def test_check_and_fix_sbd_inconsistent(self, mock_service_manager):
285286
mock_service_manager_inst.service_is_active.assert_called_once_with(constants.SBD_SERVICE)
286287
self.instance_check._check_config_consistency.assert_called_once()
287288

289+
@patch('crmsh.utils.check_all_nodes_reachable')
288290
@patch('crmsh.sbd.ServiceManager')
289-
def test_check_and_fix_not_fix(self, mock_service_manager):
291+
def test_check_and_fix_not_fix(self, mock_service_manager, mock_check_all_nodes_reachable):
290292
mock_service_manager_inst = Mock()
291293
mock_service_manager.return_value = mock_service_manager_inst
292294
mock_service_manager_inst.service_is_active = Mock(return_value=True)
@@ -303,8 +305,9 @@ def test_check_and_fix_not_fix(self, mock_service_manager):
303305
self.instance_check._check_sbd_disk_metadata.assert_called_once()
304306
self.instance_check._check_sbd_watchdog_timeout.assert_not_called()
305307

308+
@patch('crmsh.utils.check_all_nodes_reachable')
306309
@patch('crmsh.sbd.ServiceManager')
307-
def test_check_and_fix_fix_failure(self, mock_service_manager):
310+
def test_check_and_fix_fix_failure(self, mock_service_manager, mock_check_all_nodes_reachable):
308311
mock_service_manager_inst = Mock()
309312
mock_service_manager.return_value = mock_service_manager_inst
310313
mock_service_manager_inst.service_is_active = Mock(return_value=True)
@@ -317,8 +320,9 @@ def test_check_and_fix_fix_failure(self, mock_service_manager):
317320
self.instance_fix.check_and_fix()
318321
self.assertTrue("Failed to fix SBD disk metadata" in str(context.exception))
319322

323+
@patch('crmsh.utils.check_all_nodes_reachable')
320324
@patch('crmsh.sbd.ServiceManager')
321-
def test_check_and_fix_fix_success(self, mock_service_manager):
325+
def test_check_and_fix_fix_success(self, mock_service_manager, mock_check_all_nodes_reachable):
322326
mock_service_manager_inst = Mock()
323327
mock_service_manager.return_value = mock_service_manager_inst
324328
mock_service_manager_inst.service_is_active = Mock(return_value=True)
@@ -330,6 +334,7 @@ def test_check_and_fix_fix_success(self, mock_service_manager):
330334
self.instance_fix._check_sbd_systemd_start_timeout = Mock(return_value=sbd.CheckResult.SUCCESS)
331335
self.instance_fix._check_stonith_watchdog_timeout = Mock(return_value=sbd.CheckResult.SUCCESS)
332336
self.instance_fix._check_stonith_timeout = Mock(return_value=sbd.CheckResult.SUCCESS)
337+
self.instance_fix._check_sbd_delay_start_unset_dropin = Mock(return_value=sbd.CheckResult.SUCCESS)
333338

334339
res = self.instance_fix.check_and_fix()
335340
self.assertEqual(res, sbd.CheckResult.SUCCESS)
@@ -343,6 +348,7 @@ def test_check_and_fix_fix_success(self, mock_service_manager):
343348
self.instance_fix._check_sbd_systemd_start_timeout.assert_called_once()
344349
self.instance_fix._check_stonith_watchdog_timeout.assert_called_once()
345350
self.instance_fix._check_stonith_timeout.assert_called_once()
351+
self.instance_fix._check_sbd_delay_start_unset_dropin.assert_called_once()
346352

347353
@patch('crmsh.sbd.SBDUtils.check_devices_metadata_consistent')
348354
@patch('crmsh.sbd.SBDUtils.get_sbd_device_from_config')

test/unittests/test_ui_sbd.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ def test_configure_usage_none(self, mock_is_using_disk_based_sbd, mock_is_using_
153153
@mock.patch('crmsh.sbd.SBDUtils.is_using_disk_based_sbd')
154154
def test_configure_usage_disk_diskbased(self, mock_is_using_disk_based_sbd, mock_is_using_diskless_sbd):
155155
mock_is_using_disk_based_sbd.return_value = True
156-
timeout_usage_str = " ".join([f"[{t}-timeout=<integer>]" for t in ui_sbd.SBD.TIMEOUT_TYPE_MINIMUMS])
156+
timeout_usage_str = " ".join([f"[{t}-timeout=<integer>]" for t in ui_sbd.SBD.DISKBASED_TIMEOUT_TYPES])
157157
show_usage = f"crm sbd configure show [{'|'.join(ui_sbd.SBD.SHOW_TYPES)}]"
158158
expected = f"Usage:\n{show_usage}\ncrm sbd configure {timeout_usage_str} [watchdog-device=<device>]\n"
159159
self.assertEqual(self.sbd_instance_diskbased.configure_usage, expected)
@@ -165,7 +165,7 @@ def test_configure_usage_disk_diskbased(self, mock_is_using_disk_based_sbd, mock
165165
def test_configure_usage_disk_diskless(self, mock_is_using_disk_based_sbd, mock_is_using_diskless_sbd):
166166
mock_is_using_disk_based_sbd.return_value = False
167167
mock_is_using_diskless_sbd.return_value = True
168-
timeout_usage_str = " ".join([f"[{t}-timeout=<integer>]" for t in ui_sbd.SBD.DISKLESS_TIMEOUT_TYPE_MINIMUMS])
168+
timeout_usage_str = " ".join([f"[{t}-timeout=<integer>]" for t in ui_sbd.SBD.DISKLESS_TIMEOUT_TYPES])
169169
show_usage = f"crm sbd configure show [{'|'.join(ui_sbd.SBD.DISKLESS_SHOW_TYPES)}]"
170170
expected = f"Usage:\n{show_usage}\ncrm sbd configure {timeout_usage_str} [watchdog-device=<device>]\n"
171171
self.assertEqual(self.sbd_instance_diskless.configure_usage, expected)
@@ -308,9 +308,11 @@ def test_parse_args_invalid_timeout_value(self):
308308
self.sbd_instance_diskbased._parse_args(["watchdog-timeout=xxx"])
309309
self.assertEqual(str(e.exception), "Invalid timeout value: xxx")
310310

311+
@mock.patch('crmsh.sbd.SBDTimeout.get_timeout_minimum_value')
311312
@mock.patch('logging.Logger.debug')
312313
@mock.patch('crmsh.watchdog.Watchdog.get_watchdog_device')
313-
def test_parse_args(self, mock_get_watchdog_device, mock_logger_debug):
314+
def test_parse_args(self, mock_get_watchdog_device, mock_logger_debug, mock_get_timeout_minimum_value):
315+
mock_get_timeout_minimum_value.return_value = 5
314316
mock_get_watchdog_device.return_value = "/dev/watchdog0"
315317
args = self.sbd_instance_diskbased._parse_args(["watchdog-timeout=10", "watchdog-device=/dev/watchdog0"])
316318
self.assertEqual(args, {"watchdog": 10, "watchdog-device": "/dev/watchdog0"})

0 commit comments

Comments
 (0)