libvirt: Stop NVMe and ScaleIO unit tests from calling os-brick

Both sets of tests would allow calls to the InitiatorConnector.factory
within os-brick that returns an arch specific connector. When running
tests on ppc64le hosts this would result in failures are the SCALEIO and
NVME protocols are not supported on these architectures.

Closes-Bug: #1912608
Change-Id: Id917d715c0c0955fbc6761d4b5af386514a343d2
This commit is contained in:
Lee Yarwood 2021-01-21 10:11:03 +00:00
parent b9c48afd15
commit 0f558749d1
2 changed files with 26 additions and 20 deletions

View File

@ -32,6 +32,8 @@ class LibvirtNVMEVolumeDriverTestCase(test_volume.LibvirtVolumeBaseTestCase):
initiator.NVME, 'sudo',
device_scan_attempts=3)
@mock.patch('os_brick.initiator.connector.InitiatorConnector.factory',
new=mock.Mock(return_value=mock.Mock()))
def test_libvirt_nvme_driver_connect(self):
nvme_driver = nvme.LibvirtNVMEVolumeDriver(self.fake_host)
config = {'server_ip': '127.0.0.1', 'server_port': 9898}
@ -44,21 +46,26 @@ class LibvirtNVMEVolumeDriverTestCase(test_volume.LibvirtVolumeBaseTestCase):
'connect_volume',
return_value={'path': '/dev/dms1234567'}):
nvme_driver.connect_volume(connection_info, None)
nvme_driver.connector.connect_volume.assert_called_once_with(
connection_info['data'])
self.assertEqual('/dev/dms1234567',
connection_info['data']['device_path'])
@mock.patch('os_brick.initiator.connector.InitiatorConnector.factory',
new=mock.Mock(return_value=mock.Mock()))
def test_libvirt_nvme_driver_disconnect(self):
nvme_con = nvme.LibvirtNVMEVolumeDriver(self.connr)
nvme_con.connector.disconnect_volume = mock.MagicMock()
nvme_driver = nvme.LibvirtNVMEVolumeDriver(self.connr)
disk_info = {
'path': '/dev/dms1234567', 'name': 'aNVMEVolume',
'type': 'raw', 'dev': 'vda1', 'bus': 'pci0',
'device_path': '/dev/dms123456'}
connection_info = {'data': disk_info}
nvme_con.disconnect_volume(connection_info, None)
nvme_con.connector.disconnect_volume.assert_called_once_with(
nvme_driver.disconnect_volume(connection_info, None)
nvme_driver.connector.disconnect_volume.assert_called_once_with(
disk_info, None)
@mock.patch('os_brick.initiator.connector.InitiatorConnector.factory',
new=mock.Mock(return_value=mock.Mock()))
def test_libvirt_nvme_driver_get_config(self):
nvme_driver = nvme.LibvirtNVMEVolumeDriver(self.fake_host)
device_path = '/dev/fake-dev'

View File

@ -22,18 +22,19 @@ from nova.virt.libvirt.volume import scaleio
class LibvirtScaleIOVolumeDriverTestCase(
test_volume.LibvirtVolumeBaseTestCase):
@mock.patch('os_brick.initiator.connector.InitiatorConnector.factory',
new=mock.Mock(return_value=mock.Mock()))
def test_libvirt_scaleio_driver_connect(self):
def brick_conn_vol(data):
return {'path': '/dev/vol01'}
sio = scaleio.LibvirtScaleIOVolumeDriver(self.fake_host)
sio.connector.connect_volume = brick_conn_vol
disk_info = {'path': '/dev/vol01', 'name': 'vol01'}
conn = {'data': disk_info}
sio.connector.connect_volume.return_value = conn['data']
sio.connect_volume(conn, mock.sentinel.instance)
self.assertEqual('/dev/vol01',
conn['data']['device_path'])
sio.connector.connect_volume.assert_called_once_with(conn['data'])
self.assertEqual(disk_info['path'], conn['data']['device_path'])
@mock.patch('os_brick.initiator.connector.InitiatorConnector.factory',
new=mock.Mock(return_value=mock.Mock()))
def test_libvirt_scaleio_driver_get_config(self):
sio = scaleio.LibvirtScaleIOVolumeDriver(self.fake_host)
conn = {'data': {'device_path': '/dev/vol01'}}
@ -41,27 +42,25 @@ class LibvirtScaleIOVolumeDriverTestCase(
self.assertEqual('block', conf.source_type)
self.assertEqual('/dev/vol01', conf.source_path)
@mock.patch('os_brick.initiator.connector.InitiatorConnector.factory',
new=mock.Mock(return_value=mock.Mock()))
def test_libvirt_scaleio_driver_disconnect(self):
sio = scaleio.LibvirtScaleIOVolumeDriver(self.fake_host)
sio.connector.disconnect_volume = mock.MagicMock()
conn = {'data': mock.sentinel.conn_data}
sio.disconnect_volume(conn, mock.sentinel.instance)
sio.connector.disconnect_volume.assert_called_once_with(
mock.sentinel.conn_data, None)
@mock.patch('os_brick.initiator.connector.InitiatorConnector.factory',
new=mock.Mock(return_value=mock.Mock()))
def test_libvirt_scaleio_driver_extend_volume(self):
def brick_extend_vol(data):
return data['size']
extended_vol_size = 8
sio = scaleio.LibvirtScaleIOVolumeDriver(self.fake_host)
disk_info = {'size': extended_vol_size,
'name': 'vol01',
'device_path': '/dev/vol01'}
conn = {'data': disk_info}
with mock.patch.object(sio.connector,
'extend_volume',
side_effect=brick_extend_vol):
self.assertEqual(extended_vol_size,
sio.extend_volume(conn, mock.sentinel.instance,
extended_vol_size))
sio.connector.extend_volume.return_value = extended_vol_size
self.assertEqual(
extended_vol_size,
sio.extend_volume(conn, mock.sentinel.instance, extended_vol_size))