summaryrefslogtreecommitdiff
path: root/nova/tests/unit/objects/test_instance_mapping.py
diff options
context:
space:
mode:
Diffstat (limited to 'nova/tests/unit/objects/test_instance_mapping.py')
-rw-r--r--nova/tests/unit/objects/test_instance_mapping.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/nova/tests/unit/objects/test_instance_mapping.py b/nova/tests/unit/objects/test_instance_mapping.py
index ec50517a20..2c877c0a1f 100644
--- a/nova/tests/unit/objects/test_instance_mapping.py
+++ b/nova/tests/unit/objects/test_instance_mapping.py
@@ -12,6 +12,7 @@
import mock
from oslo_utils import uuidutils
+from sqlalchemy.orm import exc as orm_exc
from nova import exception
from nova import objects
@@ -151,6 +152,14 @@ class _TestInstanceMappingObject(object):
comparators={
'cell_mapping': self._check_cell_map_value})
+ @mock.patch.object(instance_mapping.InstanceMapping, '_save_in_db')
+ def test_save_stale_data_error(self, save_in_db):
+ save_in_db.side_effect = orm_exc.StaleDataError
+ mapping_obj = objects.InstanceMapping(self.context)
+ mapping_obj.instance_uuid = uuidutils.generate_uuid()
+
+ self.assertRaises(exception.InstanceMappingNotFound, mapping_obj.save)
+
@mock.patch.object(instance_mapping.InstanceMapping, '_destroy_in_db')
def test_destroy(self, destroy_in_db):
uuid = uuidutils.generate_uuid()