)]}'
{"cinder/tests/unit/volume/drivers/dell_emc/vmax/test_vmax.py":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"ab91f03213e3495ebc44eea1f841853691684ef1","unresolved":false,"context_lines":[{"line_number":1396,"context_line":"        self.assertRaises(exception.VolumeBackendAPIException,"},{"line_number":1397,"context_line":"                          self.utils.get_array_and_device_id,"},{"line_number":1398,"context_line":"                          volume, external_ref)"},{"line_number":1399,"context_line":"        # Test for device id more than 5 digits"},{"line_number":1400,"context_line":"        external_ref \u003d {u\u0027source-name\u0027: u\u0027000001\u0027}"},{"line_number":1401,"context_line":"        self.assertRaises(exception.VolumeBackendAPIException,"},{"line_number":1402,"context_line":"                          self.utils.get_array_and_device_id,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_229d4456","line":1399,"updated":"2018-09-21 09:26:08.000000000","message":"Please, use ddt library here","commit_id":"a1dbe10cbefc903fbe0e248994f06717e9b71666"},{"author":{"_account_id":26402,"name":"Kumar Prashant","email":"kumar.prashant@dell.com","username":"prashk"},"change_message_id":"78531b7eca3b34495c392aaf188fced049a9dddb","unresolved":false,"context_lines":[{"line_number":1396,"context_line":"        self.assertRaises(exception.VolumeBackendAPIException,"},{"line_number":1397,"context_line":"                          self.utils.get_array_and_device_id,"},{"line_number":1398,"context_line":"                          volume, external_ref)"},{"line_number":1399,"context_line":"        # Test for device id more than 5 digits"},{"line_number":1400,"context_line":"        external_ref \u003d {u\u0027source-name\u0027: u\u0027000001\u0027}"},{"line_number":1401,"context_line":"        self.assertRaises(exception.VolumeBackendAPIException,"},{"line_number":1402,"context_line":"                          self.utils.get_array_and_device_id,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_419373a5","line":1399,"in_reply_to":"3f79a3b5_229d4456","updated":"2018-09-24 16:41:22.000000000","message":"Done","commit_id":"a1dbe10cbefc903fbe0e248994f06717e9b71666"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"ab91f03213e3495ebc44eea1f841853691684ef1","unresolved":false,"context_lines":[{"line_number":1397,"context_line":"                          self.utils.get_array_and_device_id,"},{"line_number":1398,"context_line":"                          volume, external_ref)"},{"line_number":1399,"context_line":"        # Test for device id more than 5 digits"},{"line_number":1400,"context_line":"        external_ref \u003d {u\u0027source-name\u0027: u\u0027000001\u0027}"},{"line_number":1401,"context_line":"        self.assertRaises(exception.VolumeBackendAPIException,"},{"line_number":1402,"context_line":"                          self.utils.get_array_and_device_id,"},{"line_number":1403,"context_line":"                          volume, external_ref)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_c2c0102e","line":1400,"updated":"2018-09-21 09:26:08.000000000","message":"Please, add a test which covers a case where a name contains less than 5 digits","commit_id":"a1dbe10cbefc903fbe0e248994f06717e9b71666"},{"author":{"_account_id":26402,"name":"Kumar Prashant","email":"kumar.prashant@dell.com","username":"prashk"},"change_message_id":"78531b7eca3b34495c392aaf188fced049a9dddb","unresolved":false,"context_lines":[{"line_number":1397,"context_line":"                          self.utils.get_array_and_device_id,"},{"line_number":1398,"context_line":"                          volume, external_ref)"},{"line_number":1399,"context_line":"        # Test for device id more than 5 digits"},{"line_number":1400,"context_line":"        external_ref \u003d {u\u0027source-name\u0027: u\u0027000001\u0027}"},{"line_number":1401,"context_line":"        self.assertRaises(exception.VolumeBackendAPIException,"},{"line_number":1402,"context_line":"                          self.utils.get_array_and_device_id,"},{"line_number":1403,"context_line":"                          volume, external_ref)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_6190ef97","line":1400,"in_reply_to":"3f79a3b5_c2c0102e","updated":"2018-09-24 16:41:22.000000000","message":"Done","commit_id":"a1dbe10cbefc903fbe0e248994f06717e9b71666"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"328b59b437b8429c7ae62f567118a086026bd370","unresolved":false,"context_lines":[{"line_number":49,"context_line":"from cinder.volume import volume_types"},{"line_number":50,"context_line":"from cinder.zonemanager import utils as fczm_utils"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"from ddt import data"},{"line_number":53,"context_line":"from ddt import ddt"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"CINDER_EMC_CONFIG_DIR \u003d \u0027/etc/cinder/\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_acf17b98","line":52,"updated":"2018-10-25 22:07:02.000000000","message":"This needs to be moved up to be grouped with the other third party lib imports (mock, reqeusts, six).","commit_id":"917288ae1f8601f8d1957d6c02f4e4d381cc72bc"},{"author":{"_account_id":26402,"name":"Kumar Prashant","email":"kumar.prashant@dell.com","username":"prashk"},"change_message_id":"0dcd76bbbeadc9d3bf0c035509c3c0d524b4753a","unresolved":false,"context_lines":[{"line_number":49,"context_line":"from cinder.volume import volume_types"},{"line_number":50,"context_line":"from cinder.zonemanager import utils as fczm_utils"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"from ddt import data"},{"line_number":53,"context_line":"from ddt import ddt"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"CINDER_EMC_CONFIG_DIR \u003d \u0027/etc/cinder/\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_4b4a89ae","line":52,"in_reply_to":"3f79a3b5_acf17b98","updated":"2018-11-02 07:18:09.000000000","message":"Done","commit_id":"917288ae1f8601f8d1957d6c02f4e4d381cc72bc"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"b3ff1f9f88dd6877c9d45d9fe73ee6053c5c3454","unresolved":false,"context_lines":[{"line_number":19,"context_line":"import platform"},{"line_number":20,"context_line":"import time"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"from ddt import data"},{"line_number":23,"context_line":"from ddt import ddt"},{"line_number":24,"context_line":"import mock"},{"line_number":25,"context_line":"import requests"},{"line_number":26,"context_line":"import six"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_11e7b7ad","line":23,"range":{"start_line":22,"start_character":0,"end_line":23,"end_character":19},"updated":"2018-11-05 09:57:04.000000000","message":"i think this can be shortened,\nimport ddt","commit_id":"6fee4e260c2c4e9418bab8c9bf8c19d47840a0e3"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"bbb122d8842476f1310dce01c985b2732ad31757","unresolved":false,"context_lines":[{"line_number":50,"context_line":"from cinder.volume import utils as volume_utils"},{"line_number":51,"context_line":"from cinder.volume import volume_types"},{"line_number":52,"context_line":"from cinder.zonemanager import utils as fczm_utils"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"CINDER_EMC_CONFIG_DIR \u003d \u0027/etc/cinder/\u0027"},{"line_number":56,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_b1214aa4","line":53,"updated":"2018-11-02 08:23:25.000000000","message":"nit: unrelated change, redundant newline","commit_id":"6fee4e260c2c4e9418bab8c9bf8c19d47840a0e3"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"b3ff1f9f88dd6877c9d45d9fe73ee6053c5c3454","unresolved":false,"context_lines":[{"line_number":1262,"context_line":"        pass"},{"line_number":1263,"context_line":""},{"line_number":1264,"context_line":""},{"line_number":1265,"context_line":"@ddt"},{"line_number":1266,"context_line":"class VMAXUtilsTest(test.TestCase):"},{"line_number":1267,"context_line":"    def setUp(self):"},{"line_number":1268,"context_line":"        self.data \u003d VMAXCommonData()"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_d1f85f4c","line":1265,"range":{"start_line":1265,"start_character":0,"end_line":1265,"end_character":4},"updated":"2018-11-05 09:57:04.000000000","message":"@ddt.ddt","commit_id":"6fee4e260c2c4e9418bab8c9bf8c19d47840a0e3"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"b3ff1f9f88dd6877c9d45d9fe73ee6053c5c3454","unresolved":false,"context_lines":[{"line_number":1416,"context_line":"                          self.utils.get_array_and_device_id,"},{"line_number":1417,"context_line":"                          volume, external_ref)"},{"line_number":1418,"context_line":""},{"line_number":1419,"context_line":"    @data({u\u0027source-name\u0027: u\u0027000001\u0027}, {u\u0027source-name\u0027: u\u002700028A\u0027})"},{"line_number":1420,"context_line":"    def test_get_array_and_device_id_invalid_long_id(self, external_ref):"},{"line_number":1421,"context_line":"        volume \u003d deepcopy(self.data.test_volume)"},{"line_number":1422,"context_line":"        # Test for device id more than 5 digits"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_91f2e768","line":1419,"range":{"start_line":1419,"start_character":4,"end_line":1419,"end_character":9},"updated":"2018-11-05 09:57:04.000000000","message":"@ddt.data","commit_id":"6fee4e260c2c4e9418bab8c9bf8c19d47840a0e3"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"b3ff1f9f88dd6877c9d45d9fe73ee6053c5c3454","unresolved":false,"context_lines":[{"line_number":1424,"context_line":"                          self.utils.get_array_and_device_id,"},{"line_number":1425,"context_line":"                          volume, external_ref)"},{"line_number":1426,"context_line":""},{"line_number":1427,"context_line":"    @data({u\u0027source-name\u0027: u\u002701\u0027}, {u\u0027source-name\u0027: u\u0027028A\u0027},"},{"line_number":1428,"context_line":"          {u\u0027source-name\u0027: u\u00270001\u0027})"},{"line_number":1429,"context_line":"    def test_get_array_and_device_id_invalid_short_id(self, external_ref):"},{"line_number":1430,"context_line":"        volume \u003d deepcopy(self.data.test_volume)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_318f53d4","line":1427,"range":{"start_line":1427,"start_character":4,"end_line":1427,"end_character":9},"updated":"2018-11-05 09:57:04.000000000","message":"@ddt.data","commit_id":"6fee4e260c2c4e9418bab8c9bf8c19d47840a0e3"}],"cinder/volume/drivers/dell_emc/vmax/utils.py":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"a26ad7bb3332a9e7e468c7e0d0c5ca0c00b5a78a","unresolved":false,"context_lines":[{"line_number":349,"context_line":"                          {\u0027device_id\u0027: device_id})"},{"line_number":350,"context_line":"                exception_message \u003d (_(\"Device ID should be of 5 digits\"))"},{"line_number":351,"context_line":"                raise exception.VolumeBackendAPIException("},{"line_number":352,"context_line":"                    message\u003dexception_message)"},{"line_number":353,"context_line":"        else:"},{"line_number":354,"context_line":"            exception_message \u003d (_(\"Source volume device ID is required.\"))"},{"line_number":355,"context_line":"            raise exception.VolumeBackendAPIException("}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_22c17282","line":352,"updated":"2018-10-08 18:01:11.000000000","message":"This is generally less complicated if structured as...\n    if len(device_id) !\u003d 5:\n        \u003cerror\u003e\n    \u003cnormal path\u003e","commit_id":"b344fb88e7aa02f5e2fd12ac2056c541688c222d"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"bbe2c55e26b60bc89edef6c69e42825396817cb6","unresolved":false,"context_lines":[{"line_number":344,"context_line":"                          {\u0027device_id\u0027: device_id,"},{"line_number":345,"context_line":"                           \u0027array\u0027: array})"},{"line_number":346,"context_line":"            else:"},{"line_number":347,"context_line":"                LOG.error(\"Device ID: %(device_id)s is invalid. \""},{"line_number":348,"context_line":"                          \"Device ID consists of exactly 5 digits\","},{"line_number":349,"context_line":"                          {\u0027device_id\u0027: device_id})"},{"line_number":350,"context_line":"                exception_message \u003d (_(\"Device ID should be of 5 digits\"))"},{"line_number":351,"context_line":"                raise exception.VolumeBackendAPIException("},{"line_number":352,"context_line":"                    message\u003dexception_message)"},{"line_number":353,"context_line":"        else:"},{"line_number":354,"context_line":"            exception_message \u003d (_(\"Source volume device ID is required.\"))"},{"line_number":355,"context_line":"            raise exception.VolumeBackendAPIException("}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_03ef7c1d","line":352,"range":{"start_line":347,"start_character":0,"end_line":352,"end_character":46},"updated":"2018-10-09 21:00:47.000000000","message":"This really should be handled as one error message.  exception_message \u003d _() and then send exception message to LOG.error and the exception.","commit_id":"b344fb88e7aa02f5e2fd12ac2056c541688c222d"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"a78c125cdf098571199b2c7383a00fef332e10c3","unresolved":false,"context_lines":[{"line_number":344,"context_line":"                          {\u0027device_id\u0027: device_id,"},{"line_number":345,"context_line":"                           \u0027array\u0027: array})"},{"line_number":346,"context_line":"            else:"},{"line_number":347,"context_line":"                LOG.error(\"Device ID: %(device_id)s is invalid. \""},{"line_number":348,"context_line":"                          \"Device ID consists of exactly 5 digits\","},{"line_number":349,"context_line":"                          {\u0027device_id\u0027: device_id})"},{"line_number":350,"context_line":"                exception_message \u003d (_(\"Device ID should be of 5 digits\"))"},{"line_number":351,"context_line":"                raise exception.VolumeBackendAPIException("},{"line_number":352,"context_line":"                    message\u003dexception_message)"},{"line_number":353,"context_line":"        else:"},{"line_number":354,"context_line":"            exception_message \u003d (_(\"Source volume device ID is required.\"))"},{"line_number":355,"context_line":"            raise exception.VolumeBackendAPIException("}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_b17283e3","line":352,"range":{"start_line":347,"start_character":0,"end_line":352,"end_character":46},"in_reply_to":"3f79a3b5_03ef7c1d","updated":"2018-10-10 09:44:06.000000000","message":"Thanks Eric, Jay.  We will change this.","commit_id":"b344fb88e7aa02f5e2fd12ac2056c541688c222d"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"66a17524688ea26b086d3efb73cb68bf3d79154b","unresolved":false,"context_lines":[{"line_number":345,"context_line":"                LOG.error(error_message)"},{"line_number":346,"context_line":"                raise exception.VolumeBackendAPIException("},{"line_number":347,"context_line":"                    message\u003derror_message)"},{"line_number":348,"context_line":"            else:"},{"line_number":349,"context_line":"                LOG.debug(\"Get device ID of existing volume - device ID: \""},{"line_number":350,"context_line":"                          \"%(device_id)s, Array: %(array)s.\","},{"line_number":351,"context_line":"                          {\u0027device_id\u0027: device_id,"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_c7417a65","line":348,"range":{"start_line":348,"start_character":12,"end_line":348,"end_character":17},"updated":"2018-10-10 15:17:46.000000000","message":"nit: we can remove this \"else\".","commit_id":"917288ae1f8601f8d1957d6c02f4e4d381cc72bc"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"328b59b437b8429c7ae62f567118a086026bd370","unresolved":false,"context_lines":[{"line_number":345,"context_line":"                LOG.error(error_message)"},{"line_number":346,"context_line":"                raise exception.VolumeBackendAPIException("},{"line_number":347,"context_line":"                    message\u003derror_message)"},{"line_number":348,"context_line":"            else:"},{"line_number":349,"context_line":"                LOG.debug(\"Get device ID of existing volume - device ID: \""},{"line_number":350,"context_line":"                          \"%(device_id)s, Array: %(array)s.\","},{"line_number":351,"context_line":"                          {\u0027device_id\u0027: device_id,"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_4cec67bb","line":348,"range":{"start_line":348,"start_character":12,"end_line":348,"end_character":17},"in_reply_to":"3f79a3b5_c7417a65","updated":"2018-10-25 22:07:02.000000000","message":"+1","commit_id":"917288ae1f8601f8d1957d6c02f4e4d381cc72bc"},{"author":{"_account_id":26402,"name":"Kumar Prashant","email":"kumar.prashant@dell.com","username":"prashk"},"change_message_id":"0dcd76bbbeadc9d3bf0c035509c3c0d524b4753a","unresolved":false,"context_lines":[{"line_number":345,"context_line":"                LOG.error(error_message)"},{"line_number":346,"context_line":"                raise exception.VolumeBackendAPIException("},{"line_number":347,"context_line":"                    message\u003derror_message)"},{"line_number":348,"context_line":"            else:"},{"line_number":349,"context_line":"                LOG.debug(\"Get device ID of existing volume - device ID: \""},{"line_number":350,"context_line":"                          \"%(device_id)s, Array: %(array)s.\","},{"line_number":351,"context_line":"                          {\u0027device_id\u0027: device_id,"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_cbc3f904","line":348,"range":{"start_line":348,"start_character":12,"end_line":348,"end_character":17},"in_reply_to":"3f79a3b5_c7417a65","updated":"2018-11-02 07:18:09.000000000","message":"Done","commit_id":"917288ae1f8601f8d1957d6c02f4e4d381cc72bc"}]}
