Skip to content

Commit 0fcbb88

Browse files
Zuulopenstack-gerrit
authored andcommitted
Merge "[FUP] fix backleveling unit test for video models"
2 parents 7f6d1ed + 224d9d3 commit 0fcbb88

File tree

1 file changed

+15
-6
lines changed

1 file changed

+15
-6
lines changed

nova/tests/unit/objects/test_image_meta.py

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
# under the License.
1414

1515
import datetime
16+
import six
1617

1718
from nova import exception
1819
from nova import objects
@@ -350,21 +351,29 @@ def test_obj_make_compatible(self):
350351
obj.obj_to_primitive, '1.0')
351352

352353
def test_obj_make_compatible_video_model(self):
353-
# assert that older video models are not preserved.
354+
# assert that older video models are preserved.
354355
obj = objects.ImageMetaProps(
355-
hw_video_model=objects.fields.VideoModel.QXL)
356-
primitive = obj.obj_to_primitive('1.0')
356+
hw_video_model=objects.fields.VideoModel.QXL,
357+
hw_disk_bus=objects.fields.DiskBus.VIRTIO
358+
)
359+
primitive = obj.obj_to_primitive('1.21')
357360
self.assertIn("hw_video_model", primitive['nova_object.data'])
361+
self.assertEqual(objects.fields.VideoModel.QXL,
362+
primitive['nova_object.data']['hw_video_model'])
363+
self.assertIn("hw_disk_bus", primitive['nova_object.data'])
364+
self.assertEqual(objects.fields.DiskBus.VIRTIO,
365+
primitive['nova_object.data']['hw_disk_bus'])
358366

359-
# Virtio, GOP and None were added in 1.22 and should raise and
367+
# Virtio, GOP and None were added in 1.22 and should raise an
360368
# exception when backleveling.
361369
models = [objects.fields.VideoModel.VIRTIO,
362370
objects.fields.VideoModel.GOP,
363371
objects.fields.VideoModel.NONE]
364372
for model in models:
365373
obj = objects.ImageMetaProps(hw_video_model=model)
366-
self.assertRaises(exception.ObjectActionError,
367-
obj.obj_to_primitive, '1.0')
374+
ex = self.assertRaises(exception.ObjectActionError,
375+
obj.obj_to_primitive, '1.21')
376+
self.assertIn('hw_video_model', six.text_type(ex))
368377

369378
def test_obj_make_compatible_watchdog_action_not_disabled(self):
370379
"""Tests that we don't pop the hw_watchdog_action if the value is not

0 commit comments

Comments
 (0)