summaryrefslogtreecommitdiffstats
path: root/nova/tests
diff options
context:
space:
mode:
authorMichael Still <mikal@stillhq.com>2012-07-27 11:43:37 +1000
committerMichael Still <mikal@stillhq.com>2012-07-31 08:21:14 +1000
commit0d9d2487e2ca921ab54b1ecbe359c32ce8fb0c48 (patch)
treead2f2c94c5f8b4a0b9ecf69445df3b080a712378 /nova/tests
parentd56b5fc3ad6dbfc56e0729174925fb146cef87fa (diff)
Convert virtual_interfaces to using instance_uuid.
This review converts virtual_interfaces from tracking their instances with instance_id to using instance_uuid. This should be the last review for blueprint finish-uuid-conversion. Change-Id: I303bba009fa37c72394369c8338e6e759f794cd0
Diffstat (limited to 'nova/tests')
-rw-r--r--nova/tests/api/ec2/test_cloud.py2
-rw-r--r--nova/tests/compute/test_compute.py12
-rw-r--r--nova/tests/fake_network.py12
-rw-r--r--nova/tests/network/test_linux_net.py59
-rw-r--r--nova/tests/network/test_manager.py48
-rw-r--r--nova/tests/test_db_api.py23
-rw-r--r--nova/tests/test_xenapi.py3
7 files changed, 74 insertions, 85 deletions
diff --git a/nova/tests/api/ec2/test_cloud.py b/nova/tests/api/ec2/test_cloud.py
index 04b73adc8..ef78c007b 100644
--- a/nova/tests/api/ec2/test_cloud.py
+++ b/nova/tests/api/ec2/test_cloud.py
@@ -239,7 +239,7 @@ class CloudTestCase(test.TestCase):
project_id = self.context.project_id
nw_info = self.network.allocate_for_instance(self.context,
instance_id=inst['id'],
- instance_uuid='',
+ instance_uuid=inst['uuid'],
host=inst['host'],
vpn=None,
rxtx_factor=3,
diff --git a/nova/tests/compute/test_compute.py b/nova/tests/compute/test_compute.py
index fc2b183d9..45d50c63e 100644
--- a/nova/tests/compute/test_compute.py
+++ b/nova/tests/compute/test_compute.py
@@ -3142,14 +3142,18 @@ class ComputeAPITestCase(BaseTestCase):
'instance_get_id_to_uuid_mapping',
db.instance_get_id_to_uuid_mapping)
- instance1 = self._create_fake_instance({'display_name': 'woot',
- 'id': 0})
+ instance1 = self._create_fake_instance({
+ 'display_name': 'woot',
+ 'id': 0,
+ 'uuid': '00000000-0000-0000-0000-000000000010'})
instance2 = self._create_fake_instance({
'display_name': 'woo',
- 'id': 20})
+ 'id': 20,
+ 'uuid': '00000000-0000-0000-0000-000000000020'})
instance3 = self._create_fake_instance({
'display_name': 'not-woot',
- 'id': 30})
+ 'id': 30,
+ 'uuid': '00000000-0000-0000-0000-000000000030'})
# ip ends up matching 2nd octet here.. so all 3 match ip
# but 'name' only matches one
diff --git a/nova/tests/fake_network.py b/nova/tests/fake_network.py
index b120dc9b1..5c945fa75 100644
--- a/nova/tests/fake_network.py
+++ b/nova/tests/fake_network.py
@@ -74,15 +74,15 @@ class FakeNetworkManager(network_manager.NetworkManager):
class FakeDB:
vifs = [{'id': 0,
- 'instance_id': 0,
+ 'instance_uuid': '00000000-0000-0000-0000-000000000010',
'network_id': 1,
'address': 'DC:AD:BE:FF:EF:01'},
{'id': 1,
- 'instance_id': 20,
+ 'instance_uuid': '00000000-0000-0000-0000-000000000020',
'network_id': 21,
'address': 'DC:AD:BE:FF:EF:02'},
{'id': 2,
- 'instance_id': 30,
+ 'instance_uuid': '00000000-0000-0000-0000-000000000030',
'network_id': 31,
'address': 'DC:AD:BE:FF:EF:03'}]
@@ -103,7 +103,7 @@ class FakeNetworkManager(network_manager.NetworkManager):
address='173.16.0.2',
virtual_interface_id=2)]
- def fixed_ip_get_by_instance(self, context, instance_id):
+ def fixed_ip_get_by_instance(self, context, instance_uuid):
return [dict(address='10.0.0.0'), dict(address='10.0.0.1'),
dict(address='10.0.0.2')]
@@ -220,7 +220,7 @@ def next_fixed_ip(network_id, num_floating_ips=0):
return {'id': next_id,
'network_id': network_id,
'address': '192.168.%d.%03d' % (network_id, (next_id + 99)),
- 'instance_id': 1,
+ 'instance_uuid': 1,
'allocated': False,
# and since network_id and vif_id happen to be equivalent
'virtual_interface_id': network_id,
@@ -292,7 +292,7 @@ def fake_get_instance_nw_info(stubs, num_networks=1, ips_per_vif=2,
'uuid': uuid,
'network_id': 1,
'network': None,
- 'instance_id': 0}
+ 'instance_uuid': 0}
def network_get_fake(context, network_id):
nets = [n for n in networks if n['id'] == network_id]
diff --git a/nova/tests/network/test_linux_net.py b/nova/tests/network/test_linux_net.py
index b05127c72..183c03e46 100644
--- a/nova/tests/network/test_linux_net.py
+++ b/nova/tests/network/test_linux_net.py
@@ -36,16 +36,20 @@ LOG = logging.getLogger(__name__)
HOST = "testhost"
-instances = [{'id': 0,
- 'host': 'fake_instance00',
- 'created_at': 'fakedate',
- 'updated_at': 'fakedate',
- 'hostname': 'fake_instance00'},
- {'id': 1,
- 'host': 'fake_instance01',
- 'created_at': 'fakedate',
- 'updated_at': 'fakedate',
- 'hostname': 'fake_instance01'}]
+instances = {'00000000-0000-0000-0000-0000000000000000':
+ {'id': 0,
+ 'uuid': '00000000-0000-0000-0000-0000000000000000',
+ 'host': 'fake_instance00',
+ 'created_at': 'fakedate',
+ 'updated_at': 'fakedate',
+ 'hostname': 'fake_instance00'},
+ '00000000-0000-0000-0000-0000000000000001':
+ {'id': 1,
+ 'uuid': '00000000-0000-0000-0000-0000000000000001',
+ 'host': 'fake_instance01',
+ 'created_at': 'fakedate',
+ 'updated_at': 'fakedate',
+ 'hostname': 'fake_instance01'}}
addresses = [{"address": "10.0.0.1"},
@@ -108,7 +112,7 @@ fixed_ips = [{'id': 0,
'instance_id': 0,
'allocated': True,
'virtual_interface_id': 0,
- 'instance_id': 0,
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000000',
'floating_ips': []},
{'id': 1,
'network_id': 1,
@@ -116,7 +120,7 @@ fixed_ips = [{'id': 0,
'instance_id': 0,
'allocated': True,
'virtual_interface_id': 1,
- 'instance_id': 0,
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000000',
'floating_ips': []},
{'id': 2,
'network_id': 1,
@@ -124,7 +128,7 @@ fixed_ips = [{'id': 0,
'instance_id': 1,
'allocated': True,
'virtual_interface_id': 2,
- 'instance_id': 1,
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000001',
'floating_ips': []},
{'id': 3,
'network_id': 0,
@@ -132,7 +136,7 @@ fixed_ips = [{'id': 0,
'instance_id': 1,
'allocated': True,
'virtual_interface_id': 3,
- 'instance_id': 1,
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000001',
'floating_ips': []},
{'id': 4,
'network_id': 0,
@@ -140,7 +144,7 @@ fixed_ips = [{'id': 0,
'instance_id': 0,
'allocated': True,
'virtual_interface_id': 4,
- 'instance_id': 0,
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000000',
'floating_ips': []},
{'id': 5,
'network_id': 1,
@@ -148,7 +152,7 @@ fixed_ips = [{'id': 0,
'instance_id': 1,
'allocated': True,
'virtual_interface_id': 5,
- 'instance_id': 1,
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000001',
'floating_ips': []}]
@@ -156,46 +160,46 @@ vifs = [{'id': 0,
'address': 'DE:AD:BE:EF:00:00',
'uuid': '00000000-0000-0000-0000-0000000000000000',
'network_id': 0,
- 'instance_id': 0},
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000000'},
{'id': 1,
'address': 'DE:AD:BE:EF:00:01',
'uuid': '00000000-0000-0000-0000-0000000000000001',
'network_id': 1,
- 'instance_id': 0},
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000000'},
{'id': 2,
'address': 'DE:AD:BE:EF:00:02',
'uuid': '00000000-0000-0000-0000-0000000000000002',
'network_id': 1,
- 'instance_id': 1},
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000001'},
{'id': 3,
'address': 'DE:AD:BE:EF:00:03',
'uuid': '00000000-0000-0000-0000-0000000000000003',
'network_id': 0,
- 'instance_id': 1},
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000001'},
{'id': 4,
'address': 'DE:AD:BE:EF:00:04',
'uuid': '00000000-0000-0000-0000-0000000000000004',
'network_id': 0,
- 'instance_id': 0},
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000000'},
{'id': 5,
'address': 'DE:AD:BE:EF:00:05',
'uuid': '00000000-0000-0000-0000-0000000000000005',
'network_id': 1,
- 'instance_id': 1}]
+ 'instance_uuid': '00000000-0000-0000-0000-0000000000000001'}]
def get_associated(context, network_id, host=None):
result = []
for datum in fixed_ips:
if (datum['network_id'] == network_id and datum['allocated']
- and datum['instance_id'] is not None
+ and datum['instance_uuid'] is not None
and datum['virtual_interface_id'] is not None):
- instance = instances[datum['instance_id']]
+ instance = instances[datum['instance_uuid']]
if host and host != instance['host']:
continue
cleaned = {}
cleaned['address'] = datum['address']
- cleaned['instance_id'] = datum['instance_id']
+ cleaned['instance_uuid'] = datum['instance_uuid']
cleaned['network_id'] = datum['network_id']
cleaned['vif_id'] = datum['virtual_interface_id']
vif = vifs[datum['virtual_interface_id']]
@@ -217,8 +221,9 @@ class LinuxNetworkTestCase(test.TestCase):
self.context = context.RequestContext('testuser', 'testproject',
is_admin=True)
- def get_vifs(_context, instance_id):
- return [vif for vif in vifs if vif['instance_id'] == instance_id]
+ def get_vifs(_context, instance_uuid):
+ return [vif for vif in vifs if vif['instance_uuid'] == \
+ instance_uuid]
def get_instance(_context, instance_id):
return instances[instance_id]
diff --git a/nova/tests/network/test_manager.py b/nova/tests/network/test_manager.py
index d04df5f13..ad8bf6735 100644
--- a/nova/tests/network/test_manager.py
+++ b/nova/tests/network/test_manager.py
@@ -114,17 +114,17 @@ vifs = [{'id': 0,
'address': 'DE:AD:BE:EF:00:00',
'uuid': '00000000-0000-0000-0000-0000000000000000',
'network_id': 0,
- 'instance_id': 0},
+ 'instance_uuid': 0},
{'id': 1,
'address': 'DE:AD:BE:EF:00:01',
'uuid': '00000000-0000-0000-0000-0000000000000001',
'network_id': 1,
- 'instance_id': 0},
+ 'instance_uuid': 0},
{'id': 2,
'address': 'DE:AD:BE:EF:00:02',
'uuid': '00000000-0000-0000-0000-0000000000000002',
'network_id': 2,
- 'instance_id': 0}]
+ 'instance_uuid': 0}]
class FlatNetworkTestCase(test.TestCase):
@@ -417,11 +417,14 @@ class VlanNetworkTestCase(test.TestCase):
is_admin=False)
def test_vpn_allocate_fixed_ip(self):
+ self.mox.StubOutWithMock(db, 'instance_get')
self.mox.StubOutWithMock(db, 'fixed_ip_associate')
self.mox.StubOutWithMock(db, 'fixed_ip_update')
self.mox.StubOutWithMock(db,
'virtual_interface_get_by_instance_and_network')
+ db.instance_get(mox.IgnoreArg(),
+ mox.IgnoreArg()).AndReturn({'uuid': '42'})
db.fixed_ip_associate(mox.IgnoreArg(),
mox.IgnoreArg(),
mox.IgnoreArg(),
@@ -448,7 +451,7 @@ class VlanNetworkTestCase(test.TestCase):
self.assertRaises(exception.FixedIpNotFoundForNetwork,
self.network.allocate_fixed_ip,
context_admin,
- instance['uuid'],
+ instance['id'],
network,
vpn=True)
@@ -1264,30 +1267,30 @@ class CommonNetworkTestCase(test.TestCase):
{'ip': '172.16.0.2'})
self.assertTrue(res)
self.assertEqual(len(res), 1)
- self.assertEqual(res[0]['instance_id'], _vifs[1]['instance_id'])
+ self.assertEqual(res[0]['instance_uuid'], _vifs[1]['instance_uuid'])
# Get instance 2
res = manager.get_instance_uuids_by_ip_filter(fake_context,
{'ip': '173.16.0.2'})
self.assertTrue(res)
self.assertEqual(len(res), 1)
- self.assertEqual(res[0]['instance_id'], _vifs[2]['instance_id'])
+ self.assertEqual(res[0]['instance_uuid'], _vifs[2]['instance_uuid'])
# Get instance 0 and 1
res = manager.get_instance_uuids_by_ip_filter(fake_context,
{'ip': '172.16.0.*'})
self.assertTrue(res)
self.assertEqual(len(res), 2)
- self.assertEqual(res[0]['instance_id'], _vifs[0]['instance_id'])
- self.assertEqual(res[1]['instance_id'], _vifs[1]['instance_id'])
+ self.assertEqual(res[0]['instance_uuid'], _vifs[0]['instance_uuid'])
+ self.assertEqual(res[1]['instance_uuid'], _vifs[1]['instance_uuid'])
# Get instance 1 and 2
res = manager.get_instance_uuids_by_ip_filter(fake_context,
{'ip': '17..16.0.2'})
self.assertTrue(res)
self.assertEqual(len(res), 2)
- self.assertEqual(res[0]['instance_id'], _vifs[1]['instance_id'])
- self.assertEqual(res[1]['instance_id'], _vifs[2]['instance_id'])
+ self.assertEqual(res[0]['instance_uuid'], _vifs[1]['instance_uuid'])
+ self.assertEqual(res[1]['instance_uuid'], _vifs[2]['instance_uuid'])
def test_get_instance_uuids_by_ipv6_regex(self):
manager = fake_network.FakeNetworkManager()
@@ -1309,7 +1312,7 @@ class CommonNetworkTestCase(test.TestCase):
{'ip6': '2001:.*2'})
self.assertTrue(res)
self.assertEqual(len(res), 1)
- self.assertEqual(res[0]['instance_id'], _vifs[1]['instance_id'])
+ self.assertEqual(res[0]['instance_uuid'], _vifs[1]['instance_uuid'])
# Get instance 2
ip6 = '2001:db8:69:1f:dead:beff:feff:ef03'
@@ -1317,15 +1320,15 @@ class CommonNetworkTestCase(test.TestCase):
{'ip6': ip6})
self.assertTrue(res)
self.assertEqual(len(res), 1)
- self.assertEqual(res[0]['instance_id'], _vifs[2]['instance_id'])
+ self.assertEqual(res[0]['instance_uuid'], _vifs[2]['instance_uuid'])
# Get instance 0 and 1
res = manager.get_instance_uuids_by_ip_filter(fake_context,
{'ip6': '.*ef0[1,2]'})
self.assertTrue(res)
self.assertEqual(len(res), 2)
- self.assertEqual(res[0]['instance_id'], _vifs[0]['instance_id'])
- self.assertEqual(res[1]['instance_id'], _vifs[1]['instance_id'])
+ self.assertEqual(res[0]['instance_uuid'], _vifs[0]['instance_uuid'])
+ self.assertEqual(res[1]['instance_uuid'], _vifs[1]['instance_uuid'])
# Get instance 1 and 2
ip6 = '2001:db8:69:1.:dead:beff:feff:ef0.'
@@ -1333,8 +1336,8 @@ class CommonNetworkTestCase(test.TestCase):
{'ip6': ip6})
self.assertTrue(res)
self.assertEqual(len(res), 2)
- self.assertEqual(res[0]['instance_id'], _vifs[1]['instance_id'])
- self.assertEqual(res[1]['instance_id'], _vifs[2]['instance_id'])
+ self.assertEqual(res[0]['instance_uuid'], _vifs[1]['instance_uuid'])
+ self.assertEqual(res[1]['instance_uuid'], _vifs[2]['instance_uuid'])
def test_get_instance_uuids_by_ip(self):
manager = fake_network.FakeNetworkManager()
@@ -1358,7 +1361,7 @@ class CommonNetworkTestCase(test.TestCase):
{'fixed_ip': ip})
self.assertTrue(res)
self.assertEqual(len(res), 1)
- self.assertEqual(res[0]['instance_id'], _vifs[1]['instance_id'])
+ self.assertEqual(res[0]['instance_uuid'], _vifs[1]['instance_uuid'])
# Get instance 2
ip = '173.16.0.2'
@@ -1366,7 +1369,7 @@ class CommonNetworkTestCase(test.TestCase):
{'fixed_ip': ip})
self.assertTrue(res)
self.assertEqual(len(res), 1)
- self.assertEqual(res[0]['instance_id'], _vifs[2]['instance_id'])
+ self.assertEqual(res[0]['instance_uuid'], _vifs[2]['instance_uuid'])
def test_get_network(self):
manager = fake_network.FakeNetworkManager()
@@ -1489,12 +1492,9 @@ class AllocateTestCase(test.TestCase):
{'host': self.network.host})
project_id = self.context.project_id
nw_info = self.network.allocate_for_instance(self.context,
- instance_id=inst['id'],
- instance_uuid='',
- host=inst['host'],
- vpn=None,
- rxtx_factor=3,
- project_id=project_id)
+ instance_id=inst['id'], instance_uuid=inst['uuid'],
+ host=inst['host'], vpn=None, rxtx_factor=3,
+ project_id=project_id)
self.assertEquals(1, len(nw_info))
fixed_ip = nw_info.fixed_ips()[0]['address']
self.assertTrue(utils.is_valid_ipv4(fixed_ip))
diff --git a/nova/tests/test_db_api.py b/nova/tests/test_db_api.py
index 51850f03e..344ac9a74 100644
--- a/nova/tests/test_db_api.py
+++ b/nova/tests/test_db_api.py
@@ -31,27 +31,6 @@ from nova import utils
FLAGS = flags.FLAGS
-def _setup_networking(instance_id, ip='1.2.3.4', flo_addr='1.2.1.2'):
- ctxt = context.get_admin_context()
- network_ref = db.project_get_networks(ctxt,
- 'fake',
- associate=True)[0]
- vif = {'address': '56:12:12:12:12:12',
- 'network_id': network_ref['id'],
- 'instance_id': instance_id}
- vif_ref = db.virtual_interface_create(ctxt, vif)
-
- fixed_ip = {'address': ip,
- 'network_id': network_ref['id'],
- 'virtual_interface_id': vif_ref['id'],
- 'allocated': True,
- 'instance_id': instance_id}
- db.fixed_ip_create(ctxt, fixed_ip)
- fix_ref = db.fixed_ip_get_by_address(ctxt, ip)
- db.floating_ip_create(ctxt, {'address': flo_addr,
- 'fixed_ip_id': fix_ref['id']})
-
-
class DbApiTestCase(test.TestCase):
def setUp(self):
super(DbApiTestCase, self).setUp()
@@ -345,7 +324,7 @@ class DbApiTestCase(test.TestCase):
ctxt = context.get_admin_context()
values = {'host': 'foo', 'hostname': 'myname'}
instance = db.instance_create(ctxt, values)
- values = {'address': 'bar', 'instance_id': instance['id']}
+ values = {'address': 'bar', 'instance_uuid': instance['uuid']}
vif = db.virtual_interface_create(ctxt, values)
values = {'address': 'baz',
'network_id': 1,
diff --git a/nova/tests/test_xenapi.py b/nova/tests/test_xenapi.py
index e7f701add..e274f477f 100644
--- a/nova/tests/test_xenapi.py
+++ b/nova/tests/test_xenapi.py
@@ -741,7 +741,7 @@ class XenAPIVMTestCase(stubs.XenAPITestBase):
self.network.allocate_for_instance(ctxt,
instance_id=2,
- instance_uuid="00000000-0000-0000-0000-000000000000",
+ instance_uuid='00000000-0000-0000-0000-000000000002',
host=FLAGS.host,
vpn=None,
rxtx_factor=3,
@@ -851,6 +851,7 @@ class XenAPIVMTestCase(stubs.XenAPITestBase):
"""Creates and spawns a test instance."""
instance_values = {
'id': instance_id,
+ 'uuid': '00000000-0000-0000-0000-00000000000%d' % instance_id,
'project_id': self.project_id,
'user_id': self.user_id,
'image_ref': 1,