summaryrefslogtreecommitdiffstats
path: root/nova/tests
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2012-02-06 17:29:45 +0000
committerGerrit Code Review <review@openstack.org>2012-02-06 17:29:45 +0000
commitf6d09254bbf67c38d64c3e622d914e1cea152668 (patch)
treea7a66f2eb48c0ac7291047c9a8dc84af0bcaeb89 /nova/tests
parenta86f921d49b49d722fb7220b8fee8a1218d74959 (diff)
parent94d8553201e50e3e9e25992bfe4735addae4ffda (diff)
Merge "Add initiator to initialize_connection"
Diffstat (limited to 'nova/tests')
-rw-r--r--nova/tests/fake_libvirt_utils.py4
-rw-r--r--nova/tests/test_libvirt.py46
-rw-r--r--nova/tests/test_virt_drivers.py6
3 files changed, 47 insertions, 9 deletions
diff --git a/nova/tests/fake_libvirt_utils.py b/nova/tests/fake_libvirt_utils.py
index f1d4a8ec7..27b753a64 100644
--- a/nova/tests/fake_libvirt_utils.py
+++ b/nova/tests/fake_libvirt_utils.py
@@ -21,6 +21,10 @@ disk_sizes = {}
disk_backing_files = {}
+def get_iscsi_initiator():
+ return "fake.initiator.iqn"
+
+
def create_image(disk_format, path, size):
pass
diff --git a/nova/tests/test_libvirt.py b/nova/tests/test_libvirt.py
index cbe45ed2f..72c9f8802 100644
--- a/nova/tests/test_libvirt.py
+++ b/nova/tests/test_libvirt.py
@@ -123,6 +123,10 @@ class LibvirtVolumeTestCase(test.TestCase):
def get_hypervisor_type(self):
return self.hyperv
self.fake_conn = FakeLibvirtConnection("Xen")
+ self.connr = {
+ 'ip': '127.0.0.1',
+ 'initiator': 'fake_initiator'
+ }
def test_libvirt_iscsi_driver(self):
# NOTE(vish) exists is to make driver assume connecting worked
@@ -136,8 +140,7 @@ class LibvirtVolumeTestCase(test.TestCase):
'name': name,
'provider_auth': None,
'provider_location': '%s,fake %s' % (location, iqn)}
- address = '127.0.0.1'
- connection_info = vol_driver.initialize_connection(vol, '127.0.0.1')
+ connection_info = vol_driver.initialize_connection(vol, self.connr)
mount_device = "vde"
xml = libvirt_driver.connect_volume(connection_info, mount_device)
tree = xml_to_tree(xml)
@@ -145,7 +148,7 @@ class LibvirtVolumeTestCase(test.TestCase):
self.assertEqual(tree.get('type'), 'block')
self.assertEqual(tree.find('./source').get('dev'), dev_str)
libvirt_driver.disconnect_volume(connection_info, mount_device)
- connection_info = vol_driver.terminate_connection(vol, '127.0.0.1')
+ connection_info = vol_driver.terminate_connection(vol, self.connr)
expected_commands = [('iscsiadm', '-m', 'node', '-T', iqn,
'-p', location),
('iscsiadm', '-m', 'node', '-T', iqn,
@@ -167,8 +170,7 @@ class LibvirtVolumeTestCase(test.TestCase):
libvirt_driver = volume.LibvirtNetVolumeDriver(self.fake_conn)
name = 'volume-00000001'
vol = {'id': 1, 'name': name}
- address = '127.0.0.1'
- connection_info = vol_driver.initialize_connection(vol, address)
+ connection_info = vol_driver.initialize_connection(vol, self.connr)
mount_device = "vde"
xml = libvirt_driver.connect_volume(connection_info, mount_device)
tree = xml_to_tree(xml)
@@ -176,15 +178,14 @@ class LibvirtVolumeTestCase(test.TestCase):
self.assertEqual(tree.find('./source').get('protocol'), 'sheepdog')
self.assertEqual(tree.find('./source').get('name'), name)
libvirt_driver.disconnect_volume(connection_info, mount_device)
- connection_info = vol_driver.terminate_connection(vol, '127.0.0.1')
+ connection_info = vol_driver.terminate_connection(vol, self.connr)
def test_libvirt_rbd_driver(self):
vol_driver = volume_driver.RBDDriver()
libvirt_driver = volume.LibvirtNetVolumeDriver(self.fake_conn)
name = 'volume-00000001'
vol = {'id': 1, 'name': name}
- address = '127.0.0.1'
- connection_info = vol_driver.initialize_connection(vol, address)
+ connection_info = vol_driver.initialize_connection(vol, self.connr)
mount_device = "vde"
xml = libvirt_driver.connect_volume(connection_info, mount_device)
tree = xml_to_tree(xml)
@@ -193,7 +194,7 @@ class LibvirtVolumeTestCase(test.TestCase):
rbd_name = '%s/%s' % (FLAGS.rbd_pool, name)
self.assertEqual(tree.find('./source').get('name'), rbd_name)
libvirt_driver.disconnect_volume(connection_info, mount_device)
- connection_info = vol_driver.terminate_connection(vol, '127.0.0.1')
+ connection_info = vol_driver.terminate_connection(vol, self.connr)
class CacheConcurrencyTestCase(test.TestCase):
@@ -355,6 +356,22 @@ class LibvirtConnTestCase(test.TestCase):
return db.service_create(context.get_admin_context(), service_ref)
+ def test_get_connector(self):
+ initiator = 'fake.initiator.iqn'
+ ip = 'fakeip'
+ self.flags(my_ip=ip)
+
+ conn = connection.LibvirtConnection(True)
+ expected = {
+ 'ip': ip,
+ 'initiator': initiator
+ }
+ volume = {
+ 'id': 'fake'
+ }
+ result = conn.get_volume_connector(volume)
+ self.assertDictMatch(expected, result)
+
def test_preparing_xml_info(self):
conn = connection.LibvirtConnection(True)
instance_ref = db.instance_create(self.context, self.test_instance)
@@ -1764,6 +1781,17 @@ class NWFilterTestCase(test.TestCase):
class LibvirtUtilsTestCase(test.TestCase):
+ def test_get_iscsi_initiator(self):
+ self.mox.StubOutWithMock(utils, 'execute')
+ initiator = 'fake.initiator.iqn'
+ rval = ("junk\nInitiatorName=%s\njunk\n" % initiator, None)
+ utils.execute('cat', '/etc/iscsi/initiatorname.iscsi',
+ run_as_root=True).AndReturn(rval)
+ # Start test
+ self.mox.ReplayAll()
+ result = libvirt_utils.get_iscsi_initiator()
+ self.assertEqual(initiator, result)
+
def test_create_image(self):
self.mox.StubOutWithMock(utils, 'execute')
utils.execute('qemu-img', 'create', '-f', 'raw',
diff --git a/nova/tests/test_virt_drivers.py b/nova/tests/test_virt_drivers.py
index de3906a12..2cda7a61e 100644
--- a/nova/tests/test_virt_drivers.py
+++ b/nova/tests/test_virt_drivers.py
@@ -225,6 +225,12 @@ class _VirtDriverTestCase(test.TestCase):
self.connection.list_instances())
@catch_notimplementederror
+ def test_get_volume_connector(self):
+ result = self.connection.get_volume_connector({'id': 'fake'})
+ self.assertTrue('ip' in result)
+ self.assertTrue('initiator' in result)
+
+ @catch_notimplementederror
def test_attach_detach_volume(self):
instance_ref, network_info = self._get_running_instance()
self.connection.attach_volume({'driver_volume_type': 'fake'},