]> review.fuel-infra Code Review - openstack-build/heat-build.git/commitdiff
heat tests : add coverage for instance UpdateReplace
authorSteven Hardy <shardy@redhat.com>
Wed, 22 May 2013 15:28:25 +0000 (16:28 +0100)
committerSteven Hardy <shardy@redhat.com>
Thu, 23 May 2013 14:42:14 +0000 (15:42 +0100)
Add some tests which test the UpdateReplace path for Instance

Change-Id: Ib9c35498c3ab2811fcd73aac8159315cb6251004

heat/tests/test_instance.py

index 0d3d316fba3fa0b9538d6825fad2450bfa6a6b2a..a968095fa054ad3ea9be1b1c698f58830a1d3e12 100644 (file)
@@ -22,6 +22,7 @@ from heat.tests.v1_1 import fakes
 from heat.engine.resources import instance as instances
 from heat.common import template_format
 from heat.engine import parser
+from heat.engine import resource
 from heat.engine import scheduler
 from heat.openstack.common import uuidutils
 from heat.tests.common import HeatTestCase
@@ -143,6 +144,26 @@ class instancesTest(HeatTestCase):
         self.assertEqual(None, instance.update(update_template))
         self.assertEqual(instance.metadata, {'test': 123})
 
+    def test_instance_update_replace(self):
+        return_server = self.fc.servers.list()[1]
+        instance = self._create_test_instance(return_server,
+                                              'test_instance_update')
+
+        update_template = copy.deepcopy(instance.t)
+        update_template['Notallowed'] = {'test': 123}
+        self.assertRaises(resource.UpdateReplace,
+                          instance.update, update_template)
+
+    def test_instance_update_properties(self):
+        return_server = self.fc.servers.list()[1]
+        instance = self._create_test_instance(return_server,
+                                              'test_instance_update')
+
+        update_template = copy.deepcopy(instance.t)
+        update_template['Properties']['KeyName'] = 'mustreplace'
+        self.assertRaises(resource.UpdateReplace,
+                          instance.update, update_template)
+
     def test_instance_status_build(self):
         return_server = self.fc.servers.list()[0]
         instance = self._setup_test_instance(return_server,