Merge "Targets tests: Clean up long lines"

This commit is contained in:
Jenkins 2015-06-16 04:10:51 +00:00 committed by Gerrit Code Review
commit bd3b029b60
4 changed files with 59 additions and 72 deletions

View File

@ -91,9 +91,10 @@ class TargetDriverFixture(test.TestCase):
'target_portal': '10.10.7.1:3260',
'volume_id': self.fake_volume_id}
self.volume_name = 'volume-83c2e877-feed-46be-8435-77884fe55b45'
self.VOLUME_ID = '83c2e877-feed-46be-8435-77884fe55b45'
self.VOLUME_NAME = 'volume-' + self.VOLUME_ID
self.test_vol = (self.iscsi_target_prefix +
self.volume_name)
self.VOLUME_NAME)
def _cleanup(self):
if os.path.exists(self.fake_volumes_dir):

View File

@ -31,38 +31,45 @@ class TestCxtAdmDriver(tf.TargetDriverFixture):
self.cxt_subdir = cxt.CxtAdm.cxt_subdir
self.target = cxt.CxtAdm(root_helper=utils.get_root_helper(),
configuration=self.configuration)
self.fake_iscsi_scan =\
self.VG = 'stack-volumes-lvmdriver-1'
self.fake_iscsi_scan = \
('\n'
'TARGET: iqn.2010-10.org.openstack:%s, id=1, login_ip=0\n' # noqa
'TARGET: iqn.2010-10.org.openstack:%(vol)s, id=1, login_ip=0\n'
' PortalGroup=1@10.9.8.7:3260,timeout=0\n'
' TargetDevice=/dev/stack-volumes-lvmdriver-1/%s,BLK,PROD=CHISCSI Target,SN=0N0743000000000,ID=0D074300000000000000000,WWN=:W00743000000000\n' # noqa
% (self.volume_name, self.volume_name))
' TargetDevice=/dev/%(vg)s/%(vol)s'
',BLK,PROD=CHISCSI '
'Target,SN=0N0743000000000,ID=0D074300000000000000000,'
'WWN=:W00743000000000\n'
% {'vol': self.VOLUME_NAME, 'vg': self.VG})
def test_get_target(self):
with mock.patch.object(self.target, '_get_volumes_dir',
return_value=self.fake_volumes_dir),\
mock.patch('cinder.utils.execute',
return_value=(self.fake_iscsi_scan, None)) as m_exec:
self.assertEqual('1',
self.target._get_target(
'iqn.2010-10.org.openstack:volume-83c2e877-feed-46be-8435-77884fe55b45' # noqa
))
self.assertEqual(
'1',
self.target._get_target(
'iqn.2010-10.org.openstack:volume-%s' % self.VOLUME_ID
)
)
self.assertTrue(m_exec.called)
def test_get_target_chap_auth(self):
tmp_file = six.StringIO()
tmp_file.write(
'target:\n'
' TargetName=iqn.2010-10.org.openstack:volume-83c2e877-feed-46be-8435-77884fe55b45\n' # noqa
' TargetDevice=/dev/stack-volumes-lvmdriver-1/volume-83c2e877-feed-46be-8435-77884fe55b45\n' # noqa
' TargetName=iqn.2010-10.org.openstack:volume-%(id)s\n'
' TargetDevice=/dev/%(vg)s/volume-%(id)s\n'
' PortalGroup=1@10.9.8.7:3260\n'
' AuthMethod=CHAP\n'
' Auth_CHAP_Policy=Oneway\n'
' Auth_CHAP_Initiator="otzLy2UYbYfnP4zXLG5z":"234Zweo38VGBBvrpK9nt"\n' # noqa
' Auth_CHAP_Initiator="otzL":"234Z"\n' %
{'id': self.VOLUME_ID, 'vg': self.VG}
)
tmp_file.seek(0)
expected = ('otzLy2UYbYfnP4zXLG5z', '234Zweo38VGBBvrpK9nt')
expected = ('otzL', '234Z')
with mock.patch('__builtin__.open') as mock_open:
ctx = context.get_admin_context()
mock_open.return_value = contextlib.closing(tmp_file)

View File

@ -79,7 +79,7 @@ class TestLioAdmDriver(tf.TargetDriverFixture):
1,
0,
self.fake_volumes_dir))
mpersist_cfg.assert_called_once_with(self.volume_name)
mpersist_cfg.assert_called_once_with(self.VOLUME_NAME)
mexecute.assert_called_once_with(
'cinder-rtstool',
'create',
@ -96,15 +96,13 @@ class TestLioAdmDriver(tf.TargetDriverFixture):
@mock.patch.object(lio.LioAdm, '_get_target', return_value=1)
def test_create_iscsi_target_port_ip(self, mget_target, mexecute,
mpersist_cfg, mlock_exec):
test_vol = 'iqn.2010-10.org.openstack:'\
'volume-83c2e877-feed-46be-8435-77884fe55b45'
ip = '10.0.0.15'
port = 3261
self.assertEqual(
1,
self.target.create_iscsi_target(
name=test_vol,
name=self.test_vol,
tid=1,
lun=0,
path=self.fake_volumes_dir,
@ -114,7 +112,7 @@ class TestLioAdmDriver(tf.TargetDriverFixture):
'cinder-rtstool',
'create',
self.fake_volumes_dir,
test_vol,
self.test_vol,
'',
'',
self.target.iscsi_protocol == 'iser',
@ -123,7 +121,7 @@ class TestLioAdmDriver(tf.TargetDriverFixture):
mlock_exec.assert_any_call(*expected_args, run_as_root=True)
mexecute.assert_any_call(*expected_args, run_as_root=True)
mpersist_cfg.assert_called_once_with(self.volume_name)
mpersist_cfg.assert_called_once_with(self.VOLUME_NAME)
@mock.patch.object(lio.LioAdm, '_execute', side_effect=lio.LioAdm._execute)
@mock.patch.object(lio.LioAdm, '_persist_configuration')
@ -131,8 +129,7 @@ class TestLioAdmDriver(tf.TargetDriverFixture):
@mock.patch.object(lio.LioAdm, '_get_target', return_value=1)
def test_create_iscsi_target_port_ips(self, mget_target, mexecute,
mpersist_cfg, mlock_exec):
test_vol = 'iqn.2010-10.org.openstack:'\
'volume-83c2e877-feed-46be-8435-77884fe55b45'
test_vol = 'iqn.2010-10.org.openstack:' + self.VOLUME_NAME
ips = ['10.0.0.15', '127.0.0.1']
port = 3261
@ -158,7 +155,7 @@ class TestLioAdmDriver(tf.TargetDriverFixture):
mlock_exec.assert_any_call(*expected_args, run_as_root=True)
mexecute.assert_any_call(*expected_args, run_as_root=True)
mpersist_cfg.assert_called_once_with(self.volume_name)
mpersist_cfg.assert_called_once_with(self.VOLUME_NAME)
@mock.patch.object(lio.LioAdm, '_execute', side_effect=lio.LioAdm._execute)
@mock.patch.object(lio.LioAdm, '_persist_configuration')

View File

@ -31,11 +31,10 @@ class TestTgtAdmDriver(tf.TargetDriverFixture):
self.target = tgt.TgtAdm(root_helper=utils.get_root_helper(),
configuration=self.configuration)
self.testvol_path = \
'/dev/stack-volumes-lvmdriver-1/'\
'volume-83c2e877-feed-46be-8435-77884fe55b45'
'/dev/stack-volumes-lvmdriver-1/%s' % self.VOLUME_NAME
self.fake_iscsi_scan =\
('Target 1: iqn.2010-10.org.openstack:volume-83c2e877-feed-46be-8435-77884fe55b45\n' # noqa
('Target 1: %(test_vol)s\n'
' System information:\n'
' Driver: iscsi\n'
' State: ready\n'
@ -67,12 +66,13 @@ class TestTgtAdmDriver(tf.TargetDriverFixture):
' SWP: No\n'
' Thin-provisioning: No\n'
' Backing store type: rdwr\n'
' Backing store path: /dev/stack-volumes-lvmdriver-1/volume-83c2e877-feed-46be-8435-77884fe55b45\n' # noqa
' Backing store path: %(bspath)s\n'
' Backing store flags:\n'
' Account information:\n'
' mDVpzk8cZesdahJC9h73\n'
' ACL information:\n'
' ALL"\n')
' ALL"\n' % {'test_vol': self.test_vol,
'bspath': self.testvol_path})
def test_iscsi_protocol(self):
self.assertEqual(self.target.iscsi_protocol, 'iscsi')
@ -80,30 +80,22 @@ class TestTgtAdmDriver(tf.TargetDriverFixture):
def test_get_target(self):
with mock.patch('cinder.utils.execute',
return_value=(self.fake_iscsi_scan, None)):
self.assertEqual('1',
self.target._get_target(
'iqn.2010-10.org.openstack:'
'volume-83c2e877-feed-46be-'
'8435-77884fe55b45'))
iqn = self.test_vol
self.assertEqual('1', self.target._get_target(iqn))
def test_verify_backing_lun(self):
iqn = self.test_vol
with mock.patch('cinder.utils.execute',
return_value=(self.fake_iscsi_scan, None)):
self.assertTrue(self.target._verify_backing_lun(
'iqn.2010-10.org.openstack:'
'volume-83c2e877-feed-46be-'
'8435-77884fe55b45', '1'))
self.assertTrue(self.target._verify_backing_lun(iqn, '1'))
# Test the failure case
bad_scan = self.fake_iscsi_scan.replace('LUN: 1', 'LUN: 3')
with mock.patch('cinder.utils.execute',
return_value=(bad_scan, None)):
self.assertFalse(self.target._verify_backing_lun(
'iqn.2010-10.org.openstack:'
'volume-83c2e877-feed-46be-'
'8435-77884fe55b45', '1'))
self.assertFalse(self.target._verify_backing_lun(iqn, '1'))
@mock.patch.object(time, 'sleep')
@mock.patch('cinder.utils.execute')
@ -116,8 +108,7 @@ class TestTgtAdmDriver(tf.TargetDriverFixture):
expected_command = ('tgtadm', '--lld', 'iscsi', '--op', 'new',
'--mode', 'logicalunit', '--tid', '1',
'--lun', '1', '-b',
'/dev/stack-volumes-lvmdriver-1/'
'volume-83c2e877-feed-46be-8435-77884fe55b45')
self.testvol_path)
mock_execute.assert_called_once_with(*expected_command,
run_as_root=True)
@ -147,18 +138,19 @@ class TestTgtAdmDriver(tf.TargetDriverFixture):
def test_get_target_chap_auth(self):
persist_file =\
'<target iqn.2010-10.org.openstack:volume-83c2e877-feed-46be-8435-77884fe55b45>\n'\
' backing-store /dev/stack-volumes-lvmdriver-1/volume-83c2e877-feed-46be-8435-77884fe55b45\n'\
'<target iqn.2010-10.org.openstack:volume-%(id)s>\n'\
' backing-store %(bspath)s\n'\
' driver iscsi\n'\
' incominguser otzLy2UYbYfnP4zXLG5z 234Zweo38VGBBvrpK9nt\n'\
' incominguser otzL 234Z\n'\
' write-cache on\n'\
'</target>'
'</target>' % {'id': self.VOLUME_ID,
'bspath': self.testvol_path}
with open(os.path.join(self.fake_volumes_dir,
self.test_vol.split(':')[1]),
'wb') as tmp_file:
tmp_file.write(persist_file)
ctxt = context.get_admin_context()
expected = ('otzLy2UYbYfnP4zXLG5z', '234Zweo38VGBBvrpK9nt')
expected = ('otzL', '234Z')
self.assertEqual(expected,
self.target._get_target_chap_auth(ctxt,
self.test_vol))
@ -240,25 +232,22 @@ class TestTgtAdmDriver(tf.TargetDriverFixture):
mock_exec.side_effect = _fake_execute
test_vol_id = '83c2e877-feed-46be-8435-77884fe55b45'
test_vol_name = 'volume-83c2e877-feed-46be-8435-77884fe55b45'
with mock.patch.object(self.target, '_get_target', return_value=False):
self.assertEqual(
None,
self.target.remove_iscsi_target(
1,
0,
test_vol_id,
test_vol_name))
self.VOLUME_ID,
self.VOLUME_NAME))
mock_exec.side_effect = _fake_execute_wrong_message
self.assertRaises(exception.ISCSITargetRemoveFailed,
self.target.remove_iscsi_target,
1,
0,
test_vol_id,
test_vol_name)
self.VOLUME_ID,
self.VOLUME_NAME)
@mock.patch('os.path.isfile', return_value=True)
@mock.patch('os.path.exists', return_value=True)
@ -285,25 +274,22 @@ class TestTgtAdmDriver(tf.TargetDriverFixture):
mock_exec.side_effect = _fake_execute
test_vol_id = '83c2e877-feed-46be-8435-77884fe55b45'
test_vol_name = 'volume-83c2e877-feed-46be-8435-77884fe55b45'
with mock.patch.object(self.target, '_get_target', return_value=False):
self.assertEqual(
None,
self.target.remove_iscsi_target(
1,
0,
test_vol_id,
test_vol_name))
self.VOLUME_ID,
self.VOLUME_NAME))
mock_exec.side_effect = _fake_execute_wrong_message
self.assertRaises(exception.ISCSITargetRemoveFailed,
self.target.remove_iscsi_target,
1,
0,
test_vol_id,
test_vol_name)
self.VOLUME_ID,
self.VOLUME_NAME)
@mock.patch.object(tgt.TgtAdm, '_get_iscsi_properties')
def test_initialize_connection(self, mock_get_iscsi):
@ -359,8 +345,7 @@ class TestTgtAdmDriver(tf.TargetDriverFixture):
expected_result = {'location': '10.9.8.7:3260,1 ' +
self.iscsi_target_prefix +
self.testvol['name'] + ' 1',
'auth': 'CHAP '
'QZJbisG9AL954FNF4D P68eE7u9eFqDGexd28DQ'}
'auth': 'CHAP QZJb P68e'}
with mock.patch('cinder.utils.execute', return_value=('', '')),\
mock.patch.object(self.target, '_get_target',
@ -370,9 +355,9 @@ class TestTgtAdmDriver(tf.TargetDriverFixture):
mock.patch.object(self.target, '_get_target_chap_auth',
side_effect=lambda x, y: None) as m_chap,\
mock.patch.object(vutils, 'generate_username',
side_effect=lambda: 'QZJbisG9AL954FNF4D'),\
side_effect=lambda: 'QZJb'),\
mock.patch.object(vutils, 'generate_password',
side_effect=lambda: 'P68eE7u9eFqDGexd28DQ'):
side_effect=lambda: 'P68e'):
ctxt = context.get_admin_context()
self.assertEqual(expected_result,
@ -380,12 +365,9 @@ class TestTgtAdmDriver(tf.TargetDriverFixture):
self.testvol,
self.fake_volumes_dir))
m_chap.side_effect = lambda x, y: ('otzLy2UYbYfnP4zXLG5z',
'234Zweo38VGBBvrpK9nt')
m_chap.side_effect = lambda x, y: ('otzL', '234Z')
expected_result['auth'] = ('CHAP '
'otzLy2UYbYfnP4zXLG5z '
'234Zweo38VGBBvrpK9nt')
expected_result['auth'] = ('CHAP otzL 234Z')
self.assertEqual(expected_result,
self.target.create_export(ctxt,