def test_should_not_set_when_the_uid_state_is_already_off(self): server_hardware_uri = "resourceuri" server_hardware = {"uri": server_hardware_uri, "uidState": "Off"} self.resource.get_by.return_value = [server_hardware] self.mock_ansible_module.params = yaml.load( YAML_SERVER_HARDWARE_UID_STATE_OFF) ServerHardwareModule().run() self.resource.patch.assert_not_called() self.mock_ansible_module.exit_json.assert_called_once_with( changed=False, msg=ServerHardwareModule.MSG_NOTHING_TO_DO, ansible_facts=dict(server_hardware=server_hardware))
def test_should_calibrate_max_power_server_hardware(self): self.resource.get_by.return_value = [{"name": "name", "uri": "uri"}] self.resource.update_environmental_configuration.return_value = { "name": "name" } self.mock_ansible_module.params = yaml.load( YAML_SERVER_HARDWARE_SET_CALIBRATED_MAX_POWER) ServerHardwareModule().run() self.mock_ansible_module.exit_json.assert_called_once_with( changed=True, msg=ServerHardwareModule.MSG_ENV_CONFIG_UPDATED, ansible_facts=dict(server_hardware={"name": "name"}))
def test_should_not_set_when_the_maintenance_mode_is_already_false(self): server_hardware_uri = "resourceuri" server_hardware = {"uri": server_hardware_uri, "maintenanceMode": "false"} self.resource.data = server_hardware self.mock_ansible_module.params = yaml.load(YAML_SERVER_HARDWARE_DISABLE_MAINTENANCE_MODE) ServerHardwareModule().run() self.resource.patch.assert_not_called() self.mock_ansible_module.exit_json.assert_called_once_with( changed=False, msg=ServerHardwareModule.MSG_NOTHING_TO_DO, ansible_facts=dict(server_hardware=server_hardware) )
def test_should_disable_maintenance_mode(self): server_hardware_uri = "resourceuri" self.resource.data = {"uri": server_hardware_uri, "maintenanceMode": "true"} self.mock_ansible_module.params = yaml.load(YAML_SERVER_HARDWARE_DISABLE_MAINTENANCE_MODE) ServerHardwareModule().run() patch_params = ServerHardwareModule.patch_params['disable_maintenance_mode'] self.resource.patch.assert_called_once_with(**patch_params) self.mock_ansible_module.exit_json.assert_called_once_with( changed=True, msg=ServerHardwareModule.MSG_MAINTENANCE_MODE_CHANGED, ansible_facts=dict(server_hardware=self.resource.data) )
def test_should_do_nothing_when_scopes_are_the_same(self): params_to_scope = yaml.load(YAML_SERVER_HARDWARE_PRESENT).copy() params_to_scope['data']['scopeUris'] = ['/fake/test'] get_results = params_to_scope['data'].copy() get_results['password'] = None self.mock_ansible_module.params = params_to_scope self.resource.data = get_results ServerHardwareModule().run() self.resource.patch.not_been_called() self.mock_ansible_module.exit_json.assert_called_once_with( changed=False, ansible_facts=dict(server_hardware=get_results), msg=ServerHardwareModule.MSG_ALREADY_PRESENT)
def test_should_set_off_the_uid_state(self): server_hardware_uri = "resourceuri" self.resource.data = {"uri": server_hardware_uri, "uidState": "On"} self.mock_ansible_module.params = yaml.load( YAML_SERVER_HARDWARE_UID_STATE_OFF) ServerHardwareModule().run() patch_params = ServerHardwareModule.patch_params['uid_state_off'] self.resource.patch.assert_called_once_with(**patch_params) self.mock_ansible_module.exit_json.assert_called_once_with( changed=True, msg=ServerHardwareModule.MSG_UID_STATE_CHANGED, ansible_facts=dict(server_hardware=self.resource.data))
def test_should_reset_ilo_state(self): server_hardware_uri = "resourceuri" self.resource.data = {"uri": server_hardware_uri} self.mock_ansible_module.params = yaml.load( YAML_SERVER_HARDWARE_ILO_STATE_RESET) ServerHardwareModule().run() patch_params = ServerHardwareModule.patch_params['ilo_state_reset'] self.resource.patch.assert_called_once_with(**patch_params) self.mock_ansible_module.exit_json.assert_called_once_with( changed=True, msg=ServerHardwareModule.MSG_ILO_STATE_RESET, ansible_facts=dict(server_hardware=self.resource.data))
def test_should_set_on_the_uid_state(self): server_hardware_uri = "resourceuri" self.resource.get_by.return_value = [{"uri": server_hardware_uri, "uidState": "Off"}] self.resource.patch.return_value = {"name": "name"} self.mock_ansible_module.params = yaml.load(YAML_SERVER_HARDWARE_UID_STATE_ON) ServerHardwareModule().run() patch_params = ServerHardwareModule.patch_params['uid_state_on'] self.resource.patch.assert_called_once_with(id_or_uri=server_hardware_uri, **patch_params) self.mock_ansible_module.exit_json.assert_called_once_with( changed=True, msg=ServerHardwareModule.MSG_UID_STATE_CHANGED, ansible_facts=dict(server_hardware={"name": "name"}) )
def test_should_not_set_when_one_time_boot_is_already_network(self): server_hardware_uri = "resourceuri" server_hardware = { "uri": server_hardware_uri, "oneTimeBoot": "NETWORK" } self.resource.data = server_hardware self.mock_ansible_module.params = yaml.load( YAML_SERVER_HARDWARE_ONE_TIME_BOOT_AS_NETWORK) ServerHardwareModule().run() self.resource.patch.assert_not_called() self.mock_ansible_module.exit_json.assert_called_once_with( changed=False, msg=ServerHardwareModule.MSG_NOTHING_TO_DO, ansible_facts=dict(server_hardware=server_hardware))
def test_should_set_one_time_boot_to_hdd(self): server_hardware_uri = "resourceuri" self.resource.data = { "uri": server_hardware_uri, "oneTimeBoot": "NORMAL" } self.mock_ansible_module.params = yaml.load( YAML_SERVER_HARDWARE_ONE_TIME_BOOT_AS_HDD) ServerHardwareModule().run() patch_params = ServerHardwareModule.patch_params['one_time_boot_hdd'] self.resource.patch.assert_called_once_with(**patch_params) self.mock_ansible_module.exit_json.assert_called_once_with( changed=True, msg=ServerHardwareModule.MSG_ONE_TIME_BOOT_CHANGED, ansible_facts=dict(server_hardware=self.resource.data))
def test_update_scopes_when_different(self): params_to_scope = yaml.load(YAML_SERVER_HARDWARE_PRESENT).copy() params_to_scope['data']['scopeUris'] = ['/fake/test'] get_results = params_to_scope['data'].copy() get_results['password'] = None get_results['scopeUris'] = [] get_results['uri'] = '/rest/server-hardware/fake' self.mock_ansible_module.params = params_to_scope self.resource.data = get_results obj = mock.Mock() obj.data = params_to_scope['data'] self.resource.patch.return_value = obj ServerHardwareModule().run() self.resource.patch.assert_called_once_with(operation='replace', path='/scopeUris', value=['/fake/test']) self.mock_ansible_module.exit_json.assert_called_once_with( changed=True, ansible_facts=dict(server_hardware=params_to_scope['data']), msg=ServerHardwareModule.MSG_UPDATED)