Merge "Refactor spawn to use UndoManager."

This commit is contained in:
Jenkins
2012-03-02 16:18:24 +00:00
committed by Gerrit Code Review
2 changed files with 21 additions and 6 deletions

View File

@@ -517,7 +517,7 @@ class XenAPIVMTestCase(test.TestCase):
"""
vdi_recs_start = self._list_vdis()
stubs.stubout_fetch_image_glance_disk(self.stubs)
stubs.stubout_fetch_image_glance_disk(self.stubs, raise_failure=True)
self.assertRaises(xenapi_fake.Failure,
self._test_spawn, 1, 2, 3)
# No additional VDI should be found.
@@ -583,6 +583,7 @@ class XenAPIVMTestCase(test.TestCase):
self.check_vm_params_for_windows()
def test_spawn_glance(self):
stubs.stubout_fetch_image_glance_disk(self.stubs)
self._test_spawn(glance_stubs.FakeGlance.IMAGE_MACHINE,
glance_stubs.FakeGlance.IMAGE_KERNEL,
glance_stubs.FakeGlance.IMAGE_RAMDISK)

View File

@@ -124,14 +124,28 @@ def stubout_lookup_image(stubs):
stubs.Set(vm_utils, 'lookup_image', f)
def stubout_fetch_image_glance_disk(stubs):
def stubout_fetch_image_glance_disk(stubs, raise_failure=False):
"""Simulates a failure in fetch image_glance_disk."""
@classmethod
def f(cls, *args):
raise fake.Failure("Test Exception raised by " +
"fake fetch_image_glance_disk")
stubs.Set(vm_utils.VMHelper, '_fetch_image_glance_disk', f)
def _fake_fetch_image_glance_disk(cls, context, session, instance, image,
image_type):
if raise_failure:
raise fake.Failure("Test Exception raised by "
"fake fetch_image_glance_disk")
elif image_type == vm_utils.ImageType.KERNEL:
filename = "kernel"
elif image_type == vm_utils.ImageType.RAMDISK:
filename = "ramdisk"
else:
filename = "unknown"
return [dict(vdi_type=vm_utils.ImageType.to_string(image_type),
vdi_uuid=None,
file=filename)]
stubs.Set(vm_utils.VMHelper, '_fetch_image_glance_disk',
_fake_fetch_image_glance_disk)
def stubout_create_vm(stubs):