Some more refactoring and a tighter unit test
This commit is contained in:
		@@ -360,16 +360,22 @@ class XenAPIMigrateInstance(test.TestCase):
 | 
			
		||||
        db_fakes.stub_out_db_instance_api(self.stubs)
 | 
			
		||||
        stubs.stub_out_get_target(self.stubs)
 | 
			
		||||
        xenapi_fake.reset()
 | 
			
		||||
        self.manager = manager.AuthManager()
 | 
			
		||||
        self.user = self.manager.create_user('fake', 'fake', 'fake',
 | 
			
		||||
                                             admin=True)
 | 
			
		||||
        self.project = self.manager.create_project('fake', 'fake', 'fake')
 | 
			
		||||
        self.values = {'name': 1, 'id': 1,
 | 
			
		||||
                  'project_id': 'fake',
 | 
			
		||||
                  'user_id': 'fake',
 | 
			
		||||
                  'project_id': self.project.id,
 | 
			
		||||
                  'user_id': self.user.id,
 | 
			
		||||
                  'image_id': 1,
 | 
			
		||||
                  'kernel_id': 2,
 | 
			
		||||
                  'ramdisk_id': 3,
 | 
			
		||||
                  'kernel_id': None,
 | 
			
		||||
                  'ramdisk_id': None,
 | 
			
		||||
                  'instance_type': 'm1.large',
 | 
			
		||||
                  'mac_address': 'aa:bb:cc:dd:ee:ff',
 | 
			
		||||
                  }
 | 
			
		||||
        stubs.stub_out_migration_methods(self.stubs)
 | 
			
		||||
        glance_stubs.stubout_glance_client(self.stubs,
 | 
			
		||||
                                           glance_stubs.FakeGlance)
 | 
			
		||||
 | 
			
		||||
    def test_migrate_disk_and_power_off(self):
 | 
			
		||||
        instance = db.instance_create(self.values)
 | 
			
		||||
 
 | 
			
		||||
@@ -225,6 +225,17 @@ class FakeSessionForMigrationTests(fake.SessionBase):
 | 
			
		||||
    def __init__(self, uri):
 | 
			
		||||
        super(FakeSessionForMigrationTests, self).__init__(uri)
 | 
			
		||||
 | 
			
		||||
    def VDI_get_by_uuid(*args):
 | 
			
		||||
        return 'hurr'
 | 
			
		||||
 | 
			
		||||
    def VM_start(self, _1, ref, _2, _3):
 | 
			
		||||
        vm = fake.get_record('VM', ref)
 | 
			
		||||
        if vm['power_state'] != 'Halted':
 | 
			
		||||
            raise fake.Failure(['VM_BAD_POWER_STATE', ref, 'Halted',
 | 
			
		||||
                                  vm['power_state']])
 | 
			
		||||
        vm['power_state'] = 'Running'
 | 
			
		||||
        vm['is_a_template'] = False
 | 
			
		||||
        vm['is_control_domain'] = False
 | 
			
		||||
 | 
			
		||||
def stub_out_migration_methods(stubs):
 | 
			
		||||
    def fake_get_snapshot(self, instance):
 | 
			
		||||
@@ -251,7 +262,7 @@ def stub_out_migration_methods(stubs):
 | 
			
		||||
    def fake_destroy(*args, **kwargs):
 | 
			
		||||
        pass
 | 
			
		||||
 | 
			
		||||
    def fake_spawn_with_disk(*args, **kwargs):
 | 
			
		||||
    def fake_reset_network(*args, **kwargs):
 | 
			
		||||
        pass
 | 
			
		||||
 | 
			
		||||
    stubs.Set(vmops.VMOps, '_destroy', fake_destroy)
 | 
			
		||||
@@ -261,5 +272,5 @@ def stub_out_migration_methods(stubs):
 | 
			
		||||
    stubs.Set(vm_utils.VMHelper, 'get_vdi_for_vm_safely', fake_get_vdi)
 | 
			
		||||
    stubs.Set(xenapi_conn.XenAPISession, 'wait_for_task', lambda x, y, z: None)
 | 
			
		||||
    stubs.Set(vm_utils.VMHelper, 'get_sr_path', fake_get_sr_path)
 | 
			
		||||
    stubs.Set(vmops.VMOps, 'reset_network', fake_reset_network)
 | 
			
		||||
    stubs.Set(vmops.VMOps, '_shutdown', fake_shutdown)
 | 
			
		||||
    stubs.Set(vmops.VMOps, 'spawn_with_disk', fake_spawn_with_disk)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user