Fix all invalid obj_make_compatible test case
We use obj_to_primitive() to generate the primitive obj, the origin obj value is primitive['nova_object.data'], so, we need transfer primitive to obj data before obj_make_compatible called. This patch fixed all invalid obj_make_compatible test cases. Closes-Bug: #1776373 Change-Id: I048b22b2447b671228a7ba067e06c59b59e81ce5
This commit is contained in:
parent
2afc5fed1f
commit
4729fa8196
|
@ -395,10 +395,14 @@ class _TestBlockDeviceMappingObject(object):
|
|||
def test_obj_make_compatible_pre_1_17(self):
|
||||
values = {'source_type': 'volume', 'volume_id': 'fake-vol-id',
|
||||
'destination_type': 'volume',
|
||||
'instance_uuid': uuids.instance}
|
||||
'instance_uuid': uuids.instance, 'tag': 'fake-tag'}
|
||||
bdm = objects.BlockDeviceMapping(context=self.context, **values)
|
||||
primitive = bdm.obj_to_primitive(target_version='1.16')
|
||||
data = lambda x: x['nova_object.data']
|
||||
primitive = data(bdm.obj_to_primitive(target_version='1.17'))
|
||||
self.assertIn('tag', primitive)
|
||||
primitive = data(bdm.obj_to_primitive(target_version='1.16'))
|
||||
self.assertNotIn('tag', primitive)
|
||||
self.assertIn('volume_id', primitive)
|
||||
|
||||
def test_obj_make_compatible_pre_1_18(self):
|
||||
values = {'source_type': 'volume', 'volume_id': 'fake-vol-id',
|
||||
|
@ -406,16 +410,20 @@ class _TestBlockDeviceMappingObject(object):
|
|||
'instance_uuid': uuids.instance,
|
||||
'attachment_id': uuids.attachment_id}
|
||||
bdm = objects.BlockDeviceMapping(context=self.context, **values)
|
||||
primitive = bdm.obj_to_primitive(target_version='1.17')
|
||||
data = lambda x: x['nova_object.data']
|
||||
primitive = data(bdm.obj_to_primitive(target_version='1.17'))
|
||||
self.assertNotIn('attachment_id', primitive)
|
||||
self.assertIn('volume_id', primitive)
|
||||
|
||||
def test_obj_make_compatible_pre_1_19(self):
|
||||
values = {'source_type': 'volume', 'volume_id': 'fake-vol-id',
|
||||
'destination_type': 'volume',
|
||||
'instance_uuid': uuids.instance, 'uuid': uuids.bdm}
|
||||
bdm = objects.BlockDeviceMapping(context=self.context, **values)
|
||||
primitive = bdm.obj_to_primitive(target_version='1.18')
|
||||
data = lambda x: x['nova_object.data']
|
||||
primitive = data(bdm.obj_to_primitive(target_version='1.18'))
|
||||
self.assertNotIn('uuid', primitive)
|
||||
self.assertIn('volume_id', primitive)
|
||||
|
||||
|
||||
class TestBlockDeviceMappingUUIDMigration(test.TestCase):
|
||||
|
|
|
@ -166,8 +166,11 @@ class _TestBuildRequestObject(object):
|
|||
def test_obj_make_compatible_pre_1_3(self):
|
||||
obj = fake_build_request.fake_req_obj(self.context)
|
||||
build_request_obj = objects.BuildRequest(self.context)
|
||||
obj_primitive = obj.obj_to_primitive()
|
||||
data = lambda x: x['nova_object.data']
|
||||
obj_primitive = data(obj.obj_to_primitive())
|
||||
self.assertIn('tags', obj_primitive)
|
||||
build_request_obj.obj_make_compatible(obj_primitive, '1.2')
|
||||
self.assertIn('instance_uuid', obj_primitive)
|
||||
self.assertNotIn('tags', obj_primitive)
|
||||
|
||||
def test_create_with_tags_set(self):
|
||||
|
|
|
@ -361,8 +361,11 @@ class TestFlavor(test_objects._LocalTest, _TestFlavor):
|
|||
|
||||
# Test compatibility.
|
||||
flavor.description = 'flavor descriptions are not backward compatible'
|
||||
flavor_primitive = flavor.obj_to_primitive()
|
||||
data = lambda x: x['nova_object.data']
|
||||
flavor_primitive = data(flavor.obj_to_primitive())
|
||||
self.assertIn('description', flavor_primitive)
|
||||
flavor.obj_make_compatible(flavor_primitive, '1.1')
|
||||
self.assertIn('name', flavor_primitive)
|
||||
self.assertNotIn('description', flavor_primitive)
|
||||
|
||||
|
||||
|
|
|
@ -297,7 +297,8 @@ class _TestInstanceGroupObject(object):
|
|||
|
||||
def test_obj_make_compatible(self):
|
||||
obj = objects.InstanceGroup(self.context, **_INST_GROUP_OBJ_VALS)
|
||||
obj_primitive = obj.obj_to_primitive()
|
||||
data = lambda x: x['nova_object.data']
|
||||
obj_primitive = data(obj.obj_to_primitive())
|
||||
self.assertNotIn('metadetails', obj_primitive)
|
||||
obj.obj_make_compatible(obj_primitive, '1.6')
|
||||
self.assertEqual({}, obj_primitive['metadetails'])
|
||||
|
|
|
@ -195,8 +195,12 @@ class _TestInstanceNUMATopology(object):
|
|||
topo_obj = objects.InstanceNUMACell(
|
||||
cpuset_reserved=set([1, 2]))
|
||||
versions = ovo_base.obj_tree_get_versions('InstanceNUMACell')
|
||||
primitive = topo_obj.obj_to_primitive(target_version='1.3',
|
||||
version_manifest=versions)
|
||||
data = lambda x: x['nova_object.data']
|
||||
primitive = data(topo_obj.obj_to_primitive(target_version='1.4',
|
||||
version_manifest=versions))
|
||||
self.assertIn('cpuset_reserved', primitive)
|
||||
primitive = data(topo_obj.obj_to_primitive(target_version='1.3',
|
||||
version_manifest=versions))
|
||||
self.assertNotIn('cpuset_reserved', primitive)
|
||||
|
||||
|
||||
|
|
|
@ -133,7 +133,10 @@ class _TestNetworkRequestObject(object):
|
|||
def test_obj_make_compatible_pre_1_2(self):
|
||||
net_req = objects.NetworkRequest()
|
||||
net_req.tag = 'foo'
|
||||
primitive = net_req.obj_to_primitive(target_version='1.1')
|
||||
data = lambda x: x['nova_object.data']
|
||||
primitive = data(net_req.obj_to_primitive(target_version='1.2'))
|
||||
self.assertIn('tag', primitive)
|
||||
primitive = data(net_req.obj_to_primitive(target_version='1.1'))
|
||||
self.assertNotIn('tag', primitive)
|
||||
|
||||
|
||||
|
|
|
@ -145,9 +145,10 @@ class _TestVirtualInterface(object):
|
|||
vif.instance_uuid = uuids.instance
|
||||
vif.uuid = uuids.uuid
|
||||
vif.tag = 'fake-tag'
|
||||
|
||||
primitive = vif.obj_to_primitive(target_version='1.0')
|
||||
data = lambda x: x['nova_object.data']
|
||||
primitive = data(vif.obj_to_primitive(target_version='1.0'))
|
||||
self.assertNotIn('tag', primitive)
|
||||
self.assertIn('uuid', primitive)
|
||||
|
||||
|
||||
class TestVirtualInterfaceObject(test_objects._LocalTest,
|
||||
|
|
Loading…
Reference in New Issue