Ejemplo n.º 1
0
 def test_to_legacy_with_pre_result(self):
     obj = migrate_data.XenapiLiveMigrateData(sr_uuid_map={'a': 'b'})
     self.assertNotIn('sr_uuid_map', obj.to_legacy_dict())
     legacy = obj.to_legacy_dict(True)
     self.assertEqual({'a': 'b'},
                      legacy['pre_live_migration_result']['sr_uuid_map'])
     obj2 = migrate_data.XenapiLiveMigrateData()
     obj2.from_legacy_dict(legacy)
     self.assertEqual({'a': 'b'}, obj2.sr_uuid_map)
Ejemplo n.º 2
0
 def test_from_legacy_dict_missing_attrs(self):
     obj = migrate_data.XenapiLiveMigrateData(
         is_volume_backed=False,
         destination_sr_ref='foo',
         sr_uuid_map={'apple': 'banana'})
     legacy = obj.to_legacy_dict()
     obj2 = migrate_data.XenapiLiveMigrateData()
     obj2.from_legacy_dict(legacy)
     self.assertFalse(obj2.block_migration)
     self.assertNotIn('migrate_send_data', obj2)
     self.assertNotIn('sr_uuid_map', obj2)
Ejemplo n.º 3
0
 def test_from_legacy_dict(self):
     obj = migrate_data.XenapiLiveMigrateData(
         is_volume_backed=False,
         block_migration=False,
         destination_sr_ref='foo',
         migrate_send_data={'key': 'val'},
         sr_uuid_map={'apple': 'banana'})
     legacy = obj.to_legacy_dict()
     legacy['ignore_this_thing'] = True
     obj2 = migrate_data.XenapiLiveMigrateData()
     obj2.from_legacy_dict(legacy)
     self.assertEqual(obj.destination_sr_ref, obj2.destination_sr_ref)
Ejemplo n.º 4
0
 def test_detect_implementation_xenapi(self):
     legacy = migrate_data.XenapiLiveMigrateData(
         migrate_send_data={},
         destination_sr_ref='foo').to_legacy_dict()
     self.assertIsInstance(
         migrate_data.LiveMigrateData.detect_implementation(legacy),
         migrate_data.XenapiLiveMigrateData)
Ejemplo n.º 5
0
 def test_to_legacy_dict_missing_attrs(self):
     obj = migrate_data.XenapiLiveMigrateData(
         is_volume_backed=False,
         destination_sr_ref='foo',
         sr_uuid_map={'apple': 'banana'})
     expected = {
         'is_volume_backed': False,
     }
     self.assertEqual(expected, obj.to_legacy_dict())
     obj = migrate_data.XenapiLiveMigrateData(is_volume_backed=False,
                                              destination_sr_ref='foo')
     expected = {
         'is_volume_backed': False,
         'pre_live_migration_result': {
             'sr_uuid_map': {},
         },
     }
     self.assertEqual(expected, obj.to_legacy_dict(True))
Ejemplo n.º 6
0
 def test_obj_make_compatible(self):
     obj = migrate_data.XenapiLiveMigrateData(
         is_volume_backed=False,
         block_migration=False,
         destination_sr_ref='foo',
         migrate_send_data={'key': 'val'},
         sr_uuid_map={'apple': 'banana'},
         vif_uuid_map={'orange': 'lemon'})
     primitive = obj.obj_to_primitive('1.0')
     self.assertNotIn('vif_uuid_map', primitive['nova_object.data'])
     primitive2 = obj.obj_to_primitive('1.1')
     self.assertIn('vif_uuid_map', primitive2['nova_object.data'])
Ejemplo n.º 7
0
 def test_to_legacy_dict(self):
     obj = migrate_data.XenapiLiveMigrateData(
         is_volume_backed=False,
         block_migration=False,
         destination_sr_ref='foo',
         migrate_send_data={'key': 'val'},
         sr_uuid_map={'apple': 'banana'})
     expected = {
         'is_volume_backed': False,
         'block_migration': False,
         'migrate_data': {
             'destination_sr_ref': 'foo',
             'migrate_send_data': {'key': 'val'},
         }
     }
     self.assertEqual(expected, obj.to_legacy_dict())
Ejemplo n.º 8
0
 def test_obj_make_compatible(self):
     obj = migrate_data.XenapiLiveMigrateData(
         is_volume_backed=False,
         block_migration=False,
         destination_sr_ref='foo',
         migrate_send_data={'key': 'val'},
         sr_uuid_map={'apple': 'banana'},
         vif_uuid_map={'orange': 'lemon'},
         old_vol_attachment_ids={uuids.volume: uuids.attachment},
         wait_for_vif_plugged=True)
     primitive = obj.obj_to_primitive('1.0')
     self.assertNotIn('vif_uuid_map', primitive['nova_object.data'])
     primitive2 = obj.obj_to_primitive('1.1')
     self.assertIn('vif_uuid_map', primitive2['nova_object.data'])
     self.assertNotIn('old_vol_attachment_ids', primitive2)
     primitive3 = obj.obj_to_primitive('1.2')['nova_object.data']
     self.assertNotIn('wait_for_vif_plugged', primitive3)