From 02c7cd97fa4b8a81f0795be757bd99a29a037795 Mon Sep 17 00:00:00 2001 From: Christopher Yeoh Date: Sun, 10 Mar 2013 15:43:19 +1030 Subject: Fix more OS-DCF:diskConfig XML handling Add handling in the deserialisation code to handle the OS-DCF:diskConfig attribute in the rebuild and resize actions so the diskConfig extension can handle it properly. Formerly only the older auto_disk_config attribute was managed (and incorrectly so). Fixes bug 1153133 Change-Id: I68479d258cf23083274dd21b1f9eabab2feeb093 --- nova/tests/api/openstack/compute/test_servers.py | 63 ++++++++++++++++++++++++ 1 file changed, 63 insertions(+) (limited to 'nova/tests') diff --git a/nova/tests/api/openstack/compute/test_servers.py b/nova/tests/api/openstack/compute/test_servers.py index da653c980..e706f5046 100644 --- a/nova/tests/api/openstack/compute/test_servers.py +++ b/nova/tests/api/openstack/compute/test_servers.py @@ -3844,6 +3844,69 @@ class TestServerCreateRequestXMLDeserializer(test.TestCase): self.assertEquals(request['body'], expected) +class TestServerActionRequestXMLDeserializer(test.TestCase): + + def setUp(self): + super(TestServerActionRequestXMLDeserializer, self).setUp() + self.deserializer = servers.ActionDeserializer() + + def test_rebuild_request(self): + serial_request = """ +""" + request = self.deserializer.deserialize(serial_request) + expected = { + "rebuild": { + "imageRef": "1", + "OS-DCF:diskConfig": "MANUAL", + }, + } + self.assertEquals(request['body'], expected) + + def test_rebuild_request_auto_disk_config_compat(self): + serial_request = """ +""" + request = self.deserializer.deserialize(serial_request) + expected = { + "rebuild": { + "imageRef": "1", + "OS-DCF:diskConfig": "MANUAL", + }, + } + self.assertEquals(request['body'], expected) + + def test_resize_request(self): + serial_request = """ +""" + request = self.deserializer.deserialize(serial_request) + expected = { + "resize": { + "flavorRef": "1", + "OS-DCF:diskConfig": "MANUAL", + }, + } + self.assertEquals(request['body'], expected) + + def test_resize_request_auto_disk_config_compat(self): + serial_request = """ +""" + request = self.deserializer.deserialize(serial_request) + expected = { + "resize": { + "flavorRef": "1", + "OS-DCF:diskConfig": "MANUAL", + }, + } + self.assertEquals(request['body'], expected) + + class TestAddressesXMLSerialization(test.TestCase): index_serializer = ips.AddressesTemplate() -- cgit