Improve strictness of DRAC test cases error checking

The 'spec_set' option of Mock object directs stricter checking than
'spec' option.
The commit 926a6d2521de5cad2221e4acade7b4af2eb37dc0 assigned
'spec_set' to the external functions of PYWSMAN, but it assigned
'spec' to the internal functions.
This patch makes strictness of the error checking consistent among
DRAC test cases.

Change-Id: I96eba89b3360668afa628a8ac0880c866bec7e5c
This commit is contained in:
Naohiro Tamura 2015-04-27 17:45:33 +09:00
parent 21f6799a19
commit d4f8c33e63
2 changed files with 32 additions and 16 deletions

View File

@ -173,7 +173,8 @@ class DracManagementTestCase(db_base.DbTestCase):
self.assertEqual(sorted(expected),
sorted(self.driver.get_supported_boot_devices()))
@mock.patch.object(drac_mgmt, '_get_next_boot_mode')
@mock.patch.object(drac_mgmt, '_get_next_boot_mode', spec_set=True,
autospec=True)
def test_get_boot_device(self, mock_gnbm, mock_client_pywsman):
mock_gnbm.return_value = {'instance_id': 'OneTime',
'is_next': drac_mgmt.ONE_TIME_BOOT}
@ -192,7 +193,8 @@ class DracManagementTestCase(db_base.DbTestCase):
mock_pywsman.enumerate.assert_called_once_with(mock.ANY, mock.ANY,
resource_uris.DCIM_BootSourceSetting)
@mock.patch.object(drac_mgmt, '_get_next_boot_mode', autospec=True)
@mock.patch.object(drac_mgmt, '_get_next_boot_mode', spec_set=True,
autospec=True)
def test_get_boot_device_persistent(self, mock_gnbm, mock_client_pywsman):
mock_gnbm.return_value = {'instance_id': 'IPL',
'is_next': drac_mgmt.PERSISTENT}
@ -211,8 +213,10 @@ class DracManagementTestCase(db_base.DbTestCase):
mock_pywsman.enumerate.assert_called_once_with(mock.ANY, mock.ANY,
resource_uris.DCIM_BootSourceSetting)
@mock.patch.object(drac_client.Client, 'wsman_enumerate', autospec=True)
@mock.patch.object(drac_mgmt, '_get_next_boot_mode', autospec=True)
@mock.patch.object(drac_client.Client, 'wsman_enumerate', spec_set=True,
autospec=True)
@mock.patch.object(drac_mgmt, '_get_next_boot_mode', spec_set=True,
autospec=True)
def test_get_boot_device_client_error(self, mock_gnbm, mock_we,
mock_client_pywsman):
mock_gnbm.return_value = {'instance_id': 'OneTime',
@ -225,8 +229,10 @@ class DracManagementTestCase(db_base.DbTestCase):
mock.ANY, resource_uris.DCIM_BootSourceSetting,
filter_query=mock.ANY)
@mock.patch.object(drac_mgmt, '_check_for_config_job', autospec=True)
@mock.patch.object(drac_mgmt, '_create_config_job', autospec=True)
@mock.patch.object(drac_mgmt, '_check_for_config_job', spec_set=True,
autospec=True)
@mock.patch.object(drac_mgmt, '_create_config_job', spec_set=True,
autospec=True)
def test_set_boot_device(self, mock_ccj, mock_cfcj, mock_client_pywsman):
result_xml_enum = test_utils.build_soap_xml([{'InstanceID': 'NIC'}],
resource_uris.DCIM_BootSourceSetting)
@ -255,8 +261,10 @@ class DracManagementTestCase(db_base.DbTestCase):
mock_cfcj.assert_called_once_with(self.node)
mock_ccj.assert_called_once_with(self.node)
@mock.patch.object(drac_mgmt, '_check_for_config_job', autospec=True)
@mock.patch.object(drac_mgmt, '_create_config_job', autospec=True)
@mock.patch.object(drac_mgmt, '_check_for_config_job', spec_set=True,
autospec=True)
@mock.patch.object(drac_mgmt, '_create_config_job', spec_set=True,
autospec=True)
def test_set_boot_device_fail(self, mock_ccj, mock_cfcj,
mock_client_pywsman):
result_xml_enum = test_utils.build_soap_xml([{'InstanceID': 'NIC'}],
@ -286,8 +294,10 @@ class DracManagementTestCase(db_base.DbTestCase):
mock_cfcj.assert_called_once_with(self.node)
self.assertFalse(mock_ccj.called)
@mock.patch.object(drac_client.Client, 'wsman_enumerate', autospec=True)
@mock.patch.object(drac_mgmt, '_check_for_config_job', autospec=True)
@mock.patch.object(drac_client.Client, 'wsman_enumerate', spec_set=True,
autospec=True)
@mock.patch.object(drac_mgmt, '_check_for_config_job', spec_set=True,
autospec=True)
def test_set_boot_device_client_error(self, mock_cfcj, mock_we,
mock_client_pywsman):
mock_we.side_effect = exception.DracClientError('E_FAKE')

View File

@ -126,7 +126,8 @@ class DracPowerTestCase(base.DbTestCase):
driver = drac_power.DracPower()
self.assertEqual(expected, driver.get_properties())
@mock.patch.object(drac_power, '_get_power_state')
@mock.patch.object(drac_power, '_get_power_state', spec_set=True,
autospec=True)
def test_get_power_state(self, mock_get_power_state):
mock_get_power_state.return_value = states.POWER_ON
driver = drac_power.DracPower()
@ -136,7 +137,8 @@ class DracPowerTestCase(base.DbTestCase):
self.assertEqual(states.POWER_ON, driver.get_power_state(task))
mock_get_power_state.assert_called_once_with(task.node)
@mock.patch.object(drac_power, '_set_power_state')
@mock.patch.object(drac_power, '_set_power_state', spec_set=True,
autospec=True)
def test_set_power_state(self, mock_set_power_state):
with task_manager.acquire(self.context, self.node.uuid,
shared=False) as task:
@ -144,8 +146,10 @@ class DracPowerTestCase(base.DbTestCase):
mock_set_power_state.assert_called_once_with(task.node,
states.POWER_ON)
@mock.patch.object(drac_power, '_set_power_state')
@mock.patch.object(drac_power, '_get_power_state')
@mock.patch.object(drac_power, '_set_power_state', spec_set=True,
autospec=True)
@mock.patch.object(drac_power, '_get_power_state', spec_set=True,
autospec=True)
def test_reboot(self, mock_get_power_state, mock_set_power_state):
mock_get_power_state.return_value = states.POWER_ON
with task_manager.acquire(self.context, self.node.uuid,
@ -154,8 +158,10 @@ class DracPowerTestCase(base.DbTestCase):
mock_set_power_state.assert_called_once_with(task.node,
states.REBOOT)
@mock.patch.object(drac_power, '_set_power_state')
@mock.patch.object(drac_power, '_get_power_state')
@mock.patch.object(drac_power, '_set_power_state', spec_set=True,
autospec=True)
@mock.patch.object(drac_power, '_get_power_state', spec_set=True,
autospec=True)
def test_reboot_in_power_off(self, mock_get_power_state,
mock_set_power_state):
mock_get_power_state.return_value = states.POWER_OFF