diff --git a/Authors b/Authors index 2f99e2eb..848ab544 100644 --- a/Authors +++ b/Authors @@ -1,6 +1,7 @@ Aaron Lee Adam Gandelman Adam Johnson +Adrian Smith Ahmad Hassan Alex Meade Alexander Sakhnov diff --git a/nova/tests/test_db_api.py b/nova/tests/test_db_api.py index 590505a2..10c75841 100644 --- a/nova/tests/test_db_api.py +++ b/nova/tests/test_db_api.py @@ -156,3 +156,39 @@ class DbApiTestCase(test.TestCase): self.assertEqual(36, len(network.uuid)) db_network = db.network_get(ctxt, network.id) self.assertEqual(network.uuid, db_network.uuid) + + def test_instance_update_with_instance_id(self): + """ test instance_update() works when an instance id is passed """ + ctxt = context.get_admin_context() + + # Create an instance with some metadata + metadata = {'host': 'foo'} + values = {'metadata': metadata} + instance = db.instance_create(ctxt, values) + + # Update the metadata + metadata = {'host': 'bar'} + values = {'metadata': metadata} + db.instance_update(ctxt, instance.id, values) + + # Retrieve the metadata to ensure it was successfully updated + instance_meta = db.instance_metadata_get(ctxt, instance.id) + self.assertEqual('bar', instance_meta['host']) + + def test_instance_update_with_instance_uuid(self): + """ test instance_update() works when an instance UUID is passed """ + ctxt = context.get_admin_context() + + # Create an instance with some metadata + metadata = {'host': 'foo'} + values = {'metadata': metadata} + instance = db.instance_create(ctxt, values) + + # Update the metadata + metadata = {'host': 'bar'} + values = {'metadata': metadata} + db.instance_update(ctxt, instance.uuid, values) + + # Retrieve the metadata to ensure it was successfully updated + instance_meta = db.instance_metadata_get(ctxt, instance.id) + self.assertEqual('bar', instance_meta['host'])