summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--nova/api/openstack/v2/contrib/floating_ips.py2
-rw-r--r--nova/tests/api/openstack/v2/contrib/test_floating_ips.py15
2 files changed, 11 insertions, 6 deletions
diff --git a/nova/api/openstack/v2/contrib/floating_ips.py b/nova/api/openstack/v2/contrib/floating_ips.py
index 760ed65ab..f6be55e6e 100644
--- a/nova/api/openstack/v2/contrib/floating_ips.py
+++ b/nova/api/openstack/v2/contrib/floating_ips.py
@@ -39,7 +39,7 @@ def _translate_floating_ip_view(floating_ip):
except (TypeError, KeyError):
result['fixed_ip'] = None
try:
- result['instance_id'] = floating_ip['fixed_ip']['instance_id']
+ result['instance_id'] = floating_ip['fixed_ip']['instance']['uuid']
except (TypeError, KeyError):
result['instance_id'] = None
return {'floating_ip': result}
diff --git a/nova/tests/api/openstack/v2/contrib/test_floating_ips.py b/nova/tests/api/openstack/v2/contrib/test_floating_ips.py
index 0147abe9f..0c2c652da 100644
--- a/nova/tests/api/openstack/v2/contrib/test_floating_ips.py
+++ b/nova/tests/api/openstack/v2/contrib/test_floating_ips.py
@@ -25,6 +25,8 @@ from nova import test
from nova.tests.api.openstack import fakes
from nova import utils
+FAKE_UUID = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
+
def network_api_get_floating_ip(self, context, id):
return {'id': 1, 'address': '10.10.10.10',
@@ -33,13 +35,15 @@ def network_api_get_floating_ip(self, context, id):
def network_api_get_floating_ip_by_address(self, context, address):
return {'id': 1, 'address': '10.10.10.10',
- 'fixed_ip': {'address': '10.0.0.1', 'instance_id': 1}}
+ 'fixed_ip': {'address': '10.0.0.1',
+ 'instance': {'uuid': FAKE_UUID}}}
def network_api_get_floating_ips_by_project(self, context):
return [{'id': 1,
'address': '10.10.10.10',
- 'fixed_ip': {'address': '10.0.0.1', 'instance_id': 1}},
+ 'fixed_ip': {'address': '10.0.0.1',
+ 'instance': {'uuid': FAKE_UUID}}},
{'id': 2,
'address': '10.10.10.11'}]
@@ -155,7 +159,7 @@ class FloatingIpTest(test.TestCase):
req = fakes.HTTPRequest.blank('/v2/123/os-floating-ips')
res_dict = self.controller.index(req)
- response = {'floating_ips': [{'instance_id': 1,
+ response = {'floating_ips': [{'instance_id': FAKE_UUID,
'ip': '10.10.10.10',
'fixed_ip': '10.0.0.1',
'id': 1},
@@ -176,7 +180,8 @@ class FloatingIpTest(test.TestCase):
def test_show_associated_floating_ip(self):
def get_floating_ip(self, context, id):
return {'id': 1, 'address': '10.10.10.10',
- 'fixed_ip': {'address': '10.0.0.1', 'instance_id': 1}}
+ 'fixed_ip': {'address': '10.0.0.1',
+ 'instance': {'uuid': FAKE_UUID}}}
self.stubs.Set(network.api.API, "get_floating_ip", get_floating_ip)
req = fakes.HTTPRequest.blank('/v2/123/os-floating-ips/1')
@@ -184,7 +189,7 @@ class FloatingIpTest(test.TestCase):
self.assertEqual(res_dict['floating_ip']['id'], 1)
self.assertEqual(res_dict['floating_ip']['ip'], '10.10.10.10')
- self.assertEqual(res_dict['floating_ip']['instance_id'], 1)
+ self.assertEqual(res_dict['floating_ip']['instance_id'], FAKE_UUID)
# test floating ip allocate/release(deallocate)
def test_floating_ip_allocate_no_free_ips(self):