def test_save(self): uuid = self.volume_target_dict['uuid'] boot_index = 100 test_time = datetime.datetime(2000, 1, 1, 0, 0) with mock.patch.object(self.dbapi, 'get_volume_target_by_uuid', autospec=True) as mock_get_volume_target: mock_get_volume_target.return_value = self.volume_target_dict with mock.patch.object(self.dbapi, 'update_volume_target', autospec=True) as mock_update_target: mock_update_target.return_value = ( db_utils.get_test_volume_target(boot_index=boot_index, updated_at=test_time)) target = objects.VolumeTarget.get_by_uuid(self.context, uuid) target.boot_index = boot_index target.save() mock_get_volume_target.assert_called_once_with(uuid) mock_update_target.assert_called_once_with( uuid, { 'version': objects.VolumeTarget.VERSION, 'boot_index': boot_index }) self.assertEqual(self.context, target._context) res_updated_at = (target.updated_at).replace(tzinfo=None) self.assertEqual(test_time, res_updated_at)
def volume_target_post_data(**kw): target = db_utils.get_test_volume_target(**kw) # These values are not part of the API object target.pop('node_id') target.pop('version') internal = vt_controller.VolumeTargetPatchType.internal_attrs() return remove_internal(target, internal)
def get_test_volume_target(ctxt, **kw): """Return a VolumeTarget object with appropriate attributes. NOTE: The object leaves the attributes marked as changed, such that a create() could be used to commit it to the DB. """ db_volume_target = db_utils.get_test_volume_target(**kw) # Let DB generate ID if it isn't specified explicitly if 'id' not in kw: del db_volume_target['id'] volume_target = objects.VolumeTarget(ctxt) for key in db_volume_target: setattr(volume_target, key, db_volume_target[key]) return volume_target
def test_refresh(self): uuid = self.volume_target_dict['uuid'] old_boot_index = self.volume_target_dict['boot_index'] returns = [self.volume_target_dict, db_utils.get_test_volume_target(boot_index=100)] expected = [mock.call(uuid), mock.call(uuid)] with mock.patch.object(self.dbapi, 'get_volume_target_by_uuid', side_effect=returns, autospec=True) as mock_get_volume_target: target = objects.VolumeTarget.get_by_uuid(self.context, uuid) self.assertEqual(old_boot_index, target.boot_index) target.refresh() self.assertEqual(100, target.boot_index) self.assertEqual(expected, mock_get_volume_target.call_args_list) self.assertEqual(self.context, target._context)
def test_refresh(self): uuid = self.volume_target_dict['uuid'] old_boot_index = self.volume_target_dict['boot_index'] returns = [ self.volume_target_dict, db_utils.get_test_volume_target(boot_index=100) ] expected = [mock.call(uuid), mock.call(uuid)] with mock.patch.object(self.dbapi, 'get_volume_target_by_uuid', side_effect=returns, autospec=True) as mock_get_volume_target: target = objects.VolumeTarget.get_by_uuid(self.context, uuid) self.assertEqual(old_boot_index, target.boot_index) target.refresh() self.assertEqual(100, target.boot_index) self.assertEqual(expected, mock_get_volume_target.call_args_list) self.assertEqual(self.context, target._context)
def test_save(self): uuid = self.volume_target_dict['uuid'] boot_index = 100 test_time = datetime.datetime(2000, 1, 1, 0, 0) with mock.patch.object(self.dbapi, 'get_volume_target_by_uuid', autospec=True) as mock_get_volume_target: mock_get_volume_target.return_value = self.volume_target_dict with mock.patch.object(self.dbapi, 'update_volume_target', autospec=True) as mock_update_target: mock_update_target.return_value = ( utils.get_test_volume_target(boot_index=boot_index, updated_at=test_time)) target = objects.VolumeTarget.get_by_uuid(self.context, uuid) target.boot_index = boot_index target.save() mock_get_volume_target.assert_called_once_with(uuid) mock_update_target.assert_called_once_with(uuid, {'boot_index': boot_index}) self.assertEqual(self.context, target._context) res_updated_at = (target.updated_at).replace(tzinfo=None) self.assertEqual(test_time, res_updated_at)
def setUp(self): super(TestVolumeTargetObject, self).setUp() self.volume_target_dict = db_utils.get_test_volume_target()
def volume_target_post_data(**kw): target = db_utils.get_test_volume_target(**kw) return remove_other_fields(target, vt_controller.TARGET_SCHEMA['properties'])
def test_update_volume_target(self): fake_volume_target = db_utils.get_test_volume_target() self._test_rpcapi('update_volume_target', 'call', version='1.37', target=fake_volume_target)
def test_destroy_volume_target(self): fake_volume_target = dbutils.get_test_volume_target() self._test_rpcapi('destroy_volume_target', 'call', version='1.37', target=fake_volume_target)
def test_update_volume_target(self): fake_volume_target = dbutils.get_test_volume_target() self._test_rpcapi('update_volume_target', 'call', version='1.37', target=fake_volume_target)
def test_destroy_volume_target(self): fake_volume_target = db_utils.get_test_volume_target() self._test_rpcapi('destroy_volume_target', 'call', version='1.37', target=fake_volume_target)