|
6 | 6 | import testlib |
7 | 7 | import lvmlib |
8 | 8 | import util |
| 9 | +import xs_errors |
9 | 10 |
|
10 | 11 | import lvutil |
11 | 12 |
|
@@ -393,3 +394,22 @@ def test_command_error(self, mock_smlog, mock_cmd_lvm): |
393 | 394 | mock.call("PVs in VG vg1: []") |
394 | 395 | ]) |
395 | 396 | mock_smlog.assert_called_with("PVs in VG vg1: []") |
| 397 | + |
| 398 | + @mock.patch('lvutil.scsiutil.getSCSIid', autospec=True) |
| 399 | + def test_check_PV_SCSI_IDs_failure(self, mock_get_scsi_id, mock_smlog, mock_cmd_lvm): |
| 400 | + mock_cmd_lvm.return_value = """ /dev/disk/by-id/scsi-360014057b7f26e2962843fa8a0645fbd VG_XenStorage-401d198b-60ab-1f21-1359-bd4f127b8f38 lvm2 d-- 0 0 |
| 401 | + /dev/disk/by-id/scsi-36001405fdd436fa7f854cd685fc3b1fd VG_XenStorage-401d198b-60ab-1f21-1359-bd4f127b8f38 lvm2 a-- <49.99g 49.98g |
| 402 | +""" # noqa: E501 |
| 403 | + mock_get_scsi_id.side_effect = ['36001405fdd436fa7f854cd685fc3b1fd', |
| 404 | + '360014057b7f26e2962843fa8a0645fbd'] |
| 405 | + with self.assertRaises(xs_errors.SROSError) as srose: |
| 406 | + lvutil.checkPVScsiIds('VG_XenStorage-401d198b-60ab-1f21-1359-bd4f127b8f38', |
| 407 | + '36001405fdd436fa7f854cd685fc3b1fd') |
| 408 | + self.assertEqual(119, srose.exception.errno) |
| 409 | + |
| 410 | + @mock.patch('lvutil.scsiutil.getSCSIid', autospec=True) |
| 411 | + def test_check_PV_SCSI_IDs_success(self, mock_get_scsi_id, mock_smlog, mock_cmd_lvm): |
| 412 | + mock_cmd_lvm.return_value = """ /dev/disk/by-id/scsi-360014057b7f26e2962843fa8a0645fbd VG_XenStorage-401d198b-60ab-1f21-1359-bd4f127b8f38 lvm2 d-- 0 0""" # noqa: E501 |
| 413 | + mock_get_scsi_id.side_effect = ['36001405fdd436fa7f854cd685fc3b1fd'] |
| 414 | + lvutil.checkPVScsiIds('VG_XenStorage-401d198b-60ab-1f21-1359-bd4f127b8f38', |
| 415 | + '36001405fdd436fa7f854cd685fc3b1fd') |
0 commit comments