Skip to content

Commit 5bca3cd

Browse files
committed
Dev: unittests: Adjust unit test for previous commit
1 parent 651f28e commit 5bca3cd

File tree

2 files changed

+16
-44
lines changed

2 files changed

+16
-44
lines changed

test/unittests/test_ui_sbd.py

+16-38
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ def test_sbd_configure_completer_success(self, mock_ServiceManager, mock_is_usin
9090
mock_ServiceManager.return_value.service_is_active.side_effect = [True, True]
9191
mock_is_using_disk_based_sbd.return_value = False
9292
mock_is_using_diskless_sbd.return_value = True
93-
self.assertEqual(ui_sbd.sbd_configure_completer(["configure", ""]), ["show", "watchdog-timeout=", "watchdog-device="])
93+
self.assertEqual(ui_sbd.sbd_configure_completer(["configure", ""]), ["show", "watchdog-timeout=", "crashdump-watchdog-timeout=", "watchdog-device="])
9494
mock_ServiceManager.return_value.service_is_active.assert_has_calls([
9595
mock.call(constants.PCMK_SERVICE),
9696
mock.call(constants.SBD_SERVICE)
@@ -115,7 +115,7 @@ def setUp(self, mock_get_sbd_device_from_config, mock_get_sbd_device_metadata, m
115115
mock_get_sbd_device_from_config.return_value = ["/dev/sda1"]
116116
mock_get_watchdog_device_from_sbd_config.return_value = "/dev/watchdog0"
117117
mock_get_sbd_watchdog_timeout.return_value = 10
118-
mock_get_sbd_device_metadata.return_value = {"watchdog": 10, "msgwait": 20}
118+
mock_get_sbd_device_metadata.return_value = {"watchdog": 10, "allocate": 5, "loop": 5, "msgwait": 20}
119119
self.sbd_instance_diskbased = ui_sbd.SBD()
120120
self.sbd_instance_diskbased._load_attributes()
121121

@@ -273,32 +273,13 @@ def test_parse_args_invalid_timeout_value(self):
273273
self.sbd_instance_diskbased._parse_args(["watchdog-timeout=xxx"])
274274
self.assertEqual(str(e.exception), "Invalid timeout value: xxx")
275275

276-
def test_parse_args_unknown_arg(self):
277-
with self.assertRaises(ui_sbd.SBD.SyntaxError) as e:
278-
self.sbd_instance_diskbased._parse_args(["name=xin"])
279-
self.assertEqual(str(e.exception), "Unknown argument: name=xin")
280-
281276
@mock.patch('logging.Logger.debug')
282277
@mock.patch('crmsh.watchdog.Watchdog.get_watchdog_device')
283278
def test_parse_args(self, mock_get_watchdog_device, mock_logger_debug):
284279
mock_get_watchdog_device.return_value = "/dev/watchdog0"
285280
args = self.sbd_instance_diskbased._parse_args(["watchdog-timeout=10", "watchdog-device=/dev/watchdog0"])
286281
self.assertEqual(args, {"watchdog": 10, "watchdog-device": "/dev/watchdog0"})
287282

288-
@mock.patch('logging.Logger.warning')
289-
@mock.patch('logging.Logger.info')
290-
def test_adjust_timeout_dict(self, mock_logger_info, mock_logger_warning):
291-
timeout_dict = {"watchdog": 10, "msgwait": 10}
292-
res = ui_sbd.SBD._adjust_timeout_dict(timeout_dict)
293-
self.assertEqual(res, timeout_dict)
294-
mock_logger_warning.assert_called_once_with("It's recommended to set msgwait timeout >= 2*watchdog timeout")
295-
timeout_dict = {"watchdog": 10}
296-
res = ui_sbd.SBD._adjust_timeout_dict(timeout_dict)
297-
self.assertEqual(res, {"watchdog": 10, "msgwait": 20})
298-
timeout_dict = {"msgwait": 10}
299-
res = ui_sbd.SBD._adjust_timeout_dict(timeout_dict)
300-
self.assertEqual(res, {"watchdog": 5, "msgwait": 10})
301-
302283
@mock.patch("crmsh.ui_sbd.SBD.configure_usage", new_callable=mock.PropertyMock)
303284
@mock.patch('builtins.print')
304285
@mock.patch('logging.Logger.error')
@@ -310,41 +291,38 @@ def test_do_configure_no_args(self, mock_logger_error, mock_print, mock_configur
310291
mock_logger_error.assert_called_once_with('%s', "No argument")
311292
mock_print.assert_called_once_with("usage data")
312293

294+
@mock.patch('logging.Logger.info')
313295
@mock.patch('crmsh.sbd.SBDManager')
314-
def test_configure_diskbase(self, mock_SBDManager):
315-
parameter_dict = {"watchdog": 12, "watchdog-device": "/dev/watchdog100"}
316-
self.sbd_instance_diskbased._adjust_timeout_dict = mock.Mock(return_value=parameter_dict)
296+
def test_configure_diskbase(self, mock_SBDManager, mock_logger_info):
297+
parameter_dict = {"watchdog": 12, "watchdog-device": "/dev/watchdog100", "crashdump-watchdog": 12}
298+
self.sbd_instance_diskbased.is_kdump_service_active = mock.Mock(return_value=True)
299+
self.sbd_instance_diskbased.set_crashdump_option = mock.Mock()
317300
mock_SBDManager.return_value.init_and_deploy_sbd = mock.Mock()
318301
self.sbd_instance_diskbased._configure_diskbase(parameter_dict)
319302
mock_SBDManager.assert_called_once_with(
320303
device_list_to_init=self.sbd_instance_diskbased.device_list_from_config,
321-
timeout_dict={"watchdog": 12, "msgwait": 20, "watchdog-device": "/dev/watchdog100"},
322-
update_dict={
323-
"SBD_WATCHDOG_DEV": "/dev/watchdog100"
324-
}
304+
timeout_dict={'watchdog': 12, 'allocate': 5, 'loop': 5, 'msgwait': 36},
305+
update_dict={'SBD_TIMEOUT_ACTION': 'flush,crashdump', 'SBD_OPTS': '-C 12', 'SBD_WATCHDOG_DEV': '/dev/watchdog100'}
325306
)
326307
mock_SBDManager.return_value.init_and_deploy_sbd.assert_called_once()
327308

328309
@mock.patch('logging.Logger.info')
329-
@mock.patch('crmsh.utils.is_subdict')
330310
@mock.patch('crmsh.sbd.SBDManager')
331-
def test_configure_diskbase_no_change(self, mock_SBDManager, mock_is_subdict, mock_logger_info):
311+
def test_configure_diskbase_no_change(self, mock_SBDManager, mock_logger_info):
332312
parameter_dict = {"watchdog": 10, "watchdog-device": "/dev/watchdog0"}
333-
mock_is_subdict.return_value = True
334313
self.sbd_instance_diskbased._configure_diskbase(parameter_dict)
335314
mock_logger_info.assert_called_once_with("No change in SBD configuration")
336315

316+
@mock.patch('logging.Logger.info')
337317
@mock.patch('crmsh.sbd.SBDManager')
338-
def test_configure_diskless(self, mock_SBDManager):
339-
parameter_dict = {"watchdog": 12, "watchdog-device": "/dev/watchdog100"}
340-
self.sbd_instance_diskless._adjust_timeout_dict = mock.Mock(return_value=parameter_dict)
318+
def test_configure_diskless(self, mock_SBDManager, mock_logger_info):
319+
parameter_dict = {"watchdog": 12, "watchdog-device": "/dev/watchdog100", "crashdump-watchdog": 12}
320+
self.sbd_instance_diskless.is_kdump_service_active = mock.Mock(return_value=True)
341321
mock_SBDManager.return_value.init_and_deploy_sbd = mock.Mock()
342322
self.sbd_instance_diskless._configure_diskless(parameter_dict)
343323
mock_SBDManager.assert_called_once_with(
344-
update_dict={
345-
"SBD_WATCHDOG_DEV": "/dev/watchdog100",
346-
"SBD_WATCHDOG_TIMEOUT": "12"
347-
},
324+
timeout_dict={'stonith-watchdog': 24},
325+
update_dict={'SBD_WATCHDOG_TIMEOUT': '12', 'SBD_WATCHDOG_DEV': '/dev/watchdog100', 'SBD_TIMEOUT_ACTION': 'flush,crashdump', 'SBD_OPTS': '-C 12 -Z'},
348326
diskless_sbd=True
349327
)
350328
mock_SBDManager.return_value.init_and_deploy_sbd.assert_called_once()

test/unittests/test_utils.py

-6
Original file line numberDiff line numberDiff line change
@@ -1340,9 +1340,3 @@ def test_check_user_access_cluster(mock_user, mock_in, mock_sudo, mock_error):
13401340
with pytest.raises(utils.TerminateSubCommand) as err:
13411341
utils.check_user_access('cluster')
13421342
mock_error.assert_called_once_with('Operation is denied. The current user lacks the necessary privilege.')
1343-
1344-
1345-
def test_is_subdict():
1346-
d1 = {"a": 1, "b": 2}
1347-
d2 = {"a": 1}
1348-
assert utils.is_subdict(d2, d1) is True

0 commit comments

Comments
 (0)