summaryrefslogtreecommitdiff
path: root/ironic/tests/unit/drivers/modules/oneview/test_power.py
diff options
context:
space:
mode:
Diffstat (limited to 'ironic/tests/unit/drivers/modules/oneview/test_power.py')
-rw-r--r--ironic/tests/unit/drivers/modules/oneview/test_power.py113
1 files changed, 95 insertions, 18 deletions
diff --git a/ironic/tests/unit/drivers/modules/oneview/test_power.py b/ironic/tests/unit/drivers/modules/oneview/test_power.py
index 5800a43a9..7e99dbe91 100644
--- a/ironic/tests/unit/drivers/modules/oneview/test_power.py
+++ b/ironic/tests/unit/drivers/modules/oneview/test_power.py
@@ -30,6 +30,7 @@ from ironic.tests.unit.db import base as db_base
from ironic.tests.unit.db import utils as db_utils
from ironic.tests.unit.objects import utils as obj_utils
+oneview_models = importutils.try_import('oneview_client.models')
oneview_exceptions = importutils.try_import('oneview_client.exceptions')
POWER_ON = 'On'
@@ -142,87 +143,163 @@ class OneViewPowerDriverTestCase(db_base.DbTestCase):
)
def test_set_power_on(self, mock_get_ov_client):
+
+ sp_uri = '/any/server-profile'
oneview_client = mock_get_ov_client()
+ fake_sh = oneview_models.ServerHardware()
+ fake_sh.server_profile_uri = sp_uri
+ oneview_client = mock_get_ov_client.return_value
+ oneview_client.get_server_hardware_by_uuid.return_value = fake_sh
oneview_client.power_on.return_value = POWER_ON
self.driver.power.oneview_client = oneview_client
with task_manager.acquire(self.context, self.node.uuid) as task:
+ driver_info = task.node.driver_info
+ driver_info['applied_server_profile_uri'] = sp_uri
+ task.node.driver_info = driver_info
self.driver.power.set_power_state(task, states.POWER_ON)
- oneview_client.power_on.assert_called_once_with(self.info)
+ self.info['applied_server_profile_uri'] = sp_uri
+ oneview_client.power_on.assert_called_once_with(self.info)
def test_set_power_off(self, mock_get_ov_client):
+
+ sp_uri = '/any/server-profile'
oneview_client = mock_get_ov_client()
+ fake_sh = oneview_models.ServerHardware()
+ fake_sh.server_profile_uri = sp_uri
+ oneview_client = mock_get_ov_client.return_value
+ oneview_client.get_server_hardware_by_uuid.return_value = fake_sh
oneview_client.power_off.return_value = POWER_OFF
self.driver.power.oneview_client = oneview_client
with task_manager.acquire(self.context, self.node.uuid) as task:
+ driver_info = task.node.driver_info
+ driver_info['applied_server_profile_uri'] = sp_uri
+ task.node.driver_info = driver_info
self.driver.power.set_power_state(task, states.POWER_OFF)
- oneview_client.power_off.assert_called_once_with(self.info)
+ self.info['applied_server_profile_uri'] = sp_uri
+ oneview_client.power_off.assert_called_once_with(self.info)
def test_set_power_on_fail(self, mock_get_ov_client):
+
+ sp_uri = '/any/server-profile'
oneview_client = mock_get_ov_client()
- oneview_client.power_on.side_effect = \
- oneview_exceptions.OneViewException()
+ fake_sh = oneview_models.ServerHardware()
+ fake_sh.server_profile_uri = sp_uri
+ oneview_client.get_server_hardware_by_uuid.return_value = fake_sh
+ exc = oneview_exceptions.OneViewException()
+ oneview_client.power_on.side_effect = exc
self.driver.power.oneview_client = oneview_client
with task_manager.acquire(self.context, self.node.uuid) as task:
+ driver_info = task.node.driver_info
+ driver_info['applied_server_profile_uri'] = sp_uri
+ task.node.driver_info = driver_info
self.assertRaises(exception.OneViewError,
self.driver.power.set_power_state, task,
states.POWER_ON)
+ self.info['applied_server_profile_uri'] = sp_uri
oneview_client.power_on.assert_called_once_with(self.info)
def test_set_power_off_fail(self, mock_get_ov_client):
+
+ sp_uri = '/any/server-profile'
oneview_client = mock_get_ov_client()
- oneview_client.power_off.side_effect = \
- oneview_exceptions.OneViewException()
+ fake_sh = oneview_models.ServerHardware()
+ fake_sh.server_profile_uri = sp_uri
+ oneview_client.get_server_hardware_by_uuid.return_value = fake_sh
+ exc = oneview_exceptions.OneViewException()
+ oneview_client.power_off.side_effect = exc
self.driver.power.oneview_client = oneview_client
with task_manager.acquire(self.context, self.node.uuid) as task:
+ driver_info = task.node.driver_info
+ driver_info['applied_server_profile_uri'] = sp_uri
+ task.node.driver_info = driver_info
self.assertRaises(exception.OneViewError,
self.driver.power.set_power_state, task,
states.POWER_OFF)
+ self.info['applied_server_profile_uri'] = sp_uri
oneview_client.power_off.assert_called_once_with(self.info)
def test_set_power_invalid_state(self, mock_get_ov_client):
+
+ sp_uri = '/any/server-profile'
+ oneview_client = mock_get_ov_client()
+ fake_sh = oneview_models.ServerHardware()
+ fake_sh.server_profile_uri = sp_uri
+ oneview_client.get_server_hardware_by_uuid.return_value = fake_sh
+ exc = oneview_exceptions.OneViewException()
+ oneview_client.power_off.side_effect = exc
+ self.driver.power.oneview_client = oneview_client
+
with task_manager.acquire(self.context, self.node.uuid) as task:
+ driver_info = task.node.driver_info
+ driver_info['applied_server_profile_uri'] = sp_uri
+ task.node.driver_info = driver_info
self.assertRaises(exception.InvalidParameterValue,
self.driver.power.set_power_state, task,
'fake state')
def test_set_power_reboot(self, mock_get_ov_client):
+
+ sp_uri = '/any/server-profile'
oneview_client = mock_get_ov_client()
+ fake_sh = oneview_models.ServerHardware()
+ fake_sh.server_profile_uri = sp_uri
+ oneview_client.get_server_hardware_by_uuid.return_value = fake_sh
oneview_client.power_off.return_value = POWER_OFF
oneview_client.power_on.return_value = POWER_ON
self.driver.power.oneview_client = oneview_client
with task_manager.acquire(self.context, self.node.uuid) as task:
+ driver_info = task.node.driver_info
+ driver_info['applied_server_profile_uri'] = sp_uri
+ task.node.driver_info = driver_info
self.driver.power.set_power_state(task, states.REBOOT)
- oneview_client.power_off.assert_called_once_with(self.info)
- oneview_client.power_on.assert_called_once_with(self.info)
+ self.info['applied_server_profile_uri'] = sp_uri
+ oneview_client.power_off.assert_called_once_with(self.info)
+ oneview_client.power_off.assert_called_once_with(self.info)
+ oneview_client.power_on.assert_called_once_with(self.info)
def test_reboot(self, mock_get_ov_client):
+
+ sp_uri = '/any/server-profile'
oneview_client = mock_get_ov_client()
+ fake_sh = oneview_models.ServerHardware()
+ fake_sh.server_profile_uri = sp_uri
+ oneview_client.get_server_hardware_by_uuid.return_value = fake_sh
oneview_client.power_off.return_value = POWER_OFF
oneview_client.power_on.return_value = POWER_ON
self.driver.power.oneview_client = oneview_client
with task_manager.acquire(self.context, self.node.uuid) as task:
+ driver_info = task.node.driver_info
+ driver_info['applied_server_profile_uri'] = sp_uri
+ task.node.driver_info = driver_info
self.driver.power.reboot(task)
-
- oneview_client.power_off.assert_called_once_with(self.info)
- oneview_client.power_on.assert_called_once_with(self.info)
+ self.info['applied_server_profile_uri'] = sp_uri
+ oneview_client.power_off.assert_called_once_with(self.info)
+ oneview_client.power_on.assert_called_once_with(self.info)
def test_reboot_fail(self, mock_get_ov_client):
+
+ sp_uri = '/any/server-profile'
oneview_client = mock_get_ov_client()
- oneview_client.power_off.side_effect = \
- oneview_exceptions.OneViewException()
+ fake_sh = oneview_models.ServerHardware()
+ fake_sh.server_profile_uri = sp_uri
+ oneview_client.get_server_hardware_by_uuid.return_value = fake_sh
+ exc = oneview_exceptions.OneViewException()
+ oneview_client.power_off.side_effect = exc
self.driver.power.oneview_client = oneview_client
with task_manager.acquire(self.context,
self.node.uuid) as task:
+ driver_info = task.node.driver_info
+ driver_info['applied_server_profile_uri'] = sp_uri
+ task.node.driver_info = driver_info
self.assertRaises(exception.OneViewError,
- self.driver.power.reboot,
- task)
-
- oneview_client.power_off.assert_called_once_with(self.info)
- self.assertFalse(oneview_client.power_on.called)
+ self.driver.power.reboot, task)
+ self.info['applied_server_profile_uri'] = sp_uri
+ oneview_client.power_off.assert_called_once_with(self.info)
+ self.assertFalse(oneview_client.power_on.called)