diff --git a/novaclient/base.py b/novaclient/base.py index db9a75487..26ca3f833 100644 --- a/novaclient/base.py +++ b/novaclient/base.py @@ -313,6 +313,7 @@ class Resource(object): for (k, v) in info.iteritems(): try: setattr(self, k, v) + self._info[k] = v except AttributeError: # In this case we already defined the attribute on the class pass diff --git a/tests/v1_1/test_servers.py b/tests/v1_1/test_servers.py index d5156032c..e44a35189 100644 --- a/tests/v1_1/test_servers.py +++ b/tests/v1_1/test_servers.py @@ -32,6 +32,13 @@ class ServersTest(utils.TestCase): self.assertEqual(s.id, 1234) self.assertEqual(s.status, 'BUILD') + def test_get_server_promote_details(self): + s1 = cs.servers.list(detailed=False)[0] + s2 = cs.servers.list(detailed=True)[0] + self.assertNotEquals(s1._info, s2._info) + s1.get() + self.assertEquals(s1._info, s2._info) + def test_create_server(self): s = cs.servers.create( name="My server",