)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":12732,"name":"Bin Zhou","email":"zhou.bin9@zte.com.cn","username":"BinZhou"},"change_message_id":"b4e1d7703442e533cd4cc9a648fb722f6b7bbf4b","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Huawei: Support reporting disk type of pool"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adding support for reporting disk type of pool in"},{"line_number":10,"context_line":"huawei cinder driver. When creating volume we can"},{"line_number":11,"context_line":"specify the disk type of the pool we want to use"},{"line_number":12,"context_line":"ssd/sas/nl_sas/mix, cinder driver will report the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7aa08908_6d408a57","line":9,"updated":"2016-06-06 11:49:55.000000000","message":"Subsequent lines should be wrapped at 72 characters, not 50 characters.","commit_id":"cebf103c4de5ff0c801e040c036a82adc3095784"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"e5d7159a17bdac88eead2f1e787d34197addb549","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Huawei: Support reporting disk type of pool"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adding support for reporting disk type of pool in"},{"line_number":10,"context_line":"huawei cinder driver. When creating volume we can"},{"line_number":11,"context_line":"specify the disk type of the pool we want to use"},{"line_number":12,"context_line":"ssd/sas/nl_sas/mix, cinder driver will report the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7aa08908_89293f8c","line":9,"in_reply_to":"7aa08908_26420e11","updated":"2016-06-07 01:22:58.000000000","message":"Done\nThank you, I will deal with these characters.","commit_id":"cebf103c4de5ff0c801e040c036a82adc3095784"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"e5d7159a17bdac88eead2f1e787d34197addb549","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Huawei: Support reporting disk type of pool"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adding support for reporting disk type of pool in"},{"line_number":10,"context_line":"huawei cinder driver. When creating volume we can"},{"line_number":11,"context_line":"specify the disk type of the pool we want to use"},{"line_number":12,"context_line":"ssd/sas/nl_sas/mix, cinder driver will report the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7aa08908_4e2bdd94","line":9,"in_reply_to":"7aa08908_6d408a57","updated":"2016-06-07 01:22:58.000000000","message":"Done\nThank you for your opinion","commit_id":"cebf103c4de5ff0c801e040c036a82adc3095784"},{"author":{"_account_id":16708,"name":"Kendall Nelson","display_name":"Kendall (diablo_rojo)","email":"kennelson11@gmail.com","username":"kjnelson"},"change_message_id":"69d758b4e2f32047d0b6c45803b76ff1a1f5f27e","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Huawei: Support reporting disk type of pool"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adding support for reporting disk type of pool in"},{"line_number":10,"context_line":"huawei cinder driver. When creating volume we can"},{"line_number":11,"context_line":"specify the disk type of the pool we want to use"},{"line_number":12,"context_line":"ssd/sas/nl_sas/mix, cinder driver will report the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7aa08908_26420e11","line":9,"in_reply_to":"7aa08908_6d408a57","updated":"2016-06-06 16:15:56.000000000","message":"This isn\u0027t that big a deal, the concern is more when they go over the allotted characters, not under.","commit_id":"cebf103c4de5ff0c801e040c036a82adc3095784"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"a0fd599a501aa03852d6b8313a74e85d601ef088","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Huawei: Support reporting disk type of pool"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adding support for reporting disk type of pool in huawei cinder"},{"line_number":10,"context_line":"driver. When creating volume we can specify the disk type of the"},{"line_number":11,"context_line":"pool we want to use ssd/sas/nl_sas/mix, cinder driver will report"},{"line_number":12,"context_line":"the disk type of the pools. This BP provides this ability."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Implements: blueprint huawei-pool-disktype-support"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"7aa08908_ae6d9ecd","line":11,"range":{"start_line":10,"start_character":8,"end_line":11,"end_character":38},"updated":"2016-06-08 16:55:33.000000000","message":"Looks like we need to add DocImpact.","commit_id":"1c6028a355daa182adea990b23f5d2553433bfac"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"72fec0f3d592144c89b5a9b5e762257142843c1b","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Huawei: Support reporting disk type of pool"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adding support for reporting disk type of pool in huawei cinder"},{"line_number":10,"context_line":"driver. When creating volume we can specify the disk type of the"},{"line_number":11,"context_line":"pool we want to use ssd/sas/nl_sas/mix, cinder driver will report"},{"line_number":12,"context_line":"the disk type of the pools. This BP provides this ability."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Implements: blueprint huawei-pool-disktype-support"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"7aa08908_b3c44592","line":11,"range":{"start_line":10,"start_character":8,"end_line":11,"end_character":38},"in_reply_to":"7aa08908_ae6d9ecd","updated":"2016-06-12 06:36:28.000000000","message":"Done.\nThank you for your opinion.","commit_id":"1c6028a355daa182adea990b23f5d2553433bfac"},{"author":{"_account_id":16883,"name":"huyang","email":"huyang1@huawei.com","username":"huyang"},"change_message_id":"829c1d7a812de4b3c793ff702551b63106c895a3","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     liuke2 \u003cliuke2@huawei.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-06-17 09:48:41 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Huawei: Support reporting disk type of pool"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adding support for reporting disk type of pool in huawei cinder"},{"line_number":10,"context_line":"driver. When creating volume we can specify the disk type of the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"5a9d85d2_1d9c76bf","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":43},"updated":"2016-06-21 08:29:54.000000000","message":"In Huawei Driver\u0027s version history should add \"Support reporting disk type of pool\".","commit_id":"a0aa1d776e85bbd748e77ab0e8592c1d29da360a"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"ac8126d5ebc71aca5ba4788eb7c0a10a3840c4bb","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     liuke2 \u003cliuke2@huawei.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-06-17 09:48:41 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Huawei: Support reporting disk type of pool"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adding support for reporting disk type of pool in huawei cinder"},{"line_number":10,"context_line":"driver. When creating volume we can specify the disk type of the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"5a9d85d2_0291aa52","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":43},"in_reply_to":"5a9d85d2_1d9c76bf","updated":"2016-06-21 10:59:27.000000000","message":"Done","commit_id":"a0aa1d776e85bbd748e77ab0e8592c1d29da360a"}],"cinder/tests/unit/test_huawei_drivers.py":[{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"9568671159d40d7acdd84882f2324c023fa5c322","unresolved":false,"context_lines":[{"line_number":3451,"context_line":"        self.assertEqual(\u00272.0.5\u0027, data[\u0027driver_version\u0027])"},{"line_number":3452,"context_line":"        self.assertNotIn(\u0027replication_enabled\u0027, data[\u0027pools\u0027][0])"},{"line_number":3453,"context_line":""},{"line_number":3454,"context_line":"    def test_get_volume_disk_type_ssd(self):"},{"line_number":3455,"context_line":"        driver \u003d FakeISCSIStorage(configuration\u003dself.configuration)"},{"line_number":3456,"context_line":"        driver.do_setup()"},{"line_number":3457,"context_line":"        driver.replica \u003d None"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_6d085592","line":3454,"updated":"2016-06-07 08:03:30.000000000","message":"Looks like this test case is redundant, we can add one more input to test_get_volume_disk_type.","commit_id":"1b01a00421b041884117c9629468d0bd465b60e2"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"f3ffada6e8e31c9557a125153ebdd5dffc09e5b6","unresolved":false,"context_lines":[{"line_number":3451,"context_line":"        self.assertEqual(\u00272.0.5\u0027, data[\u0027driver_version\u0027])"},{"line_number":3452,"context_line":"        self.assertNotIn(\u0027replication_enabled\u0027, data[\u0027pools\u0027][0])"},{"line_number":3453,"context_line":""},{"line_number":3454,"context_line":"    def test_get_volume_disk_type_ssd(self):"},{"line_number":3455,"context_line":"        driver \u003d FakeISCSIStorage(configuration\u003dself.configuration)"},{"line_number":3456,"context_line":"        driver.do_setup()"},{"line_number":3457,"context_line":"        driver.replica \u003d None"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_193c73c7","line":3454,"in_reply_to":"7aa08908_6d085592","updated":"2016-06-07 11:32:06.000000000","message":"Done\nThank you for your opinion.","commit_id":"1b01a00421b041884117c9629468d0bd465b60e2"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"a0fd599a501aa03852d6b8313a74e85d601ef088","unresolved":false,"context_lines":[{"line_number":3486,"context_line":""},{"line_number":3487,"context_line":"        self.mock_object(rest_client.RestClient, \u0027get_all_pools\u0027,"},{"line_number":3488,"context_line":"                         mock.Mock(return_value\u003dstorage_pool_sas[\u0027data\u0027]))"},{"line_number":3489,"context_line":"        data \u003d driver.get_volume_stats()"},{"line_number":3490,"context_line":"        if disk_type_value[\u0027disktype\u0027]:"},{"line_number":3491,"context_line":"            self.assertEqual(disk_type_value[\u0027disktype\u0027],"},{"line_number":3492,"context_line":"                             data[\u0027pools\u0027][0][\u0027disk_type\u0027])"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aa08908_aeb3de08","line":3489,"updated":"2016-06-08 16:55:33.000000000","message":"We only need to test _get_disk_type in this method.","commit_id":"1c6028a355daa182adea990b23f5d2553433bfac"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"17ba72975843d1b78b51aed0fcd8e375a4eb991d","unresolved":false,"context_lines":[{"line_number":3486,"context_line":""},{"line_number":3487,"context_line":"        self.mock_object(rest_client.RestClient, \u0027get_all_pools\u0027,"},{"line_number":3488,"context_line":"                         mock.Mock(return_value\u003dstorage_pool_sas[\u0027data\u0027]))"},{"line_number":3489,"context_line":"        data \u003d driver.get_volume_stats()"},{"line_number":3490,"context_line":"        if disk_type_value[\u0027disktype\u0027]:"},{"line_number":3491,"context_line":"            self.assertEqual(disk_type_value[\u0027disktype\u0027],"},{"line_number":3492,"context_line":"                             data[\u0027pools\u0027][0][\u0027disk_type\u0027])"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aa08908_fe14dfe9","line":3489,"in_reply_to":"7aa08908_0681c74d","updated":"2016-06-17 01:44:33.000000000","message":"Our unit test is a module, we need to be concerned about the test before and after the data, check the output to meet the requirements.","commit_id":"1c6028a355daa182adea990b23f5d2553433bfac"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"8827126ff009854475bd2653cc917c74e041fdd9","unresolved":false,"context_lines":[{"line_number":3486,"context_line":""},{"line_number":3487,"context_line":"        self.mock_object(rest_client.RestClient, \u0027get_all_pools\u0027,"},{"line_number":3488,"context_line":"                         mock.Mock(return_value\u003dstorage_pool_sas[\u0027data\u0027]))"},{"line_number":3489,"context_line":"        data \u003d driver.get_volume_stats()"},{"line_number":3490,"context_line":"        if disk_type_value[\u0027disktype\u0027]:"},{"line_number":3491,"context_line":"            self.assertEqual(disk_type_value[\u0027disktype\u0027],"},{"line_number":3492,"context_line":"                             data[\u0027pools\u0027][0][\u0027disk_type\u0027])"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aa08908_c2c49d93","line":3489,"in_reply_to":"7aa08908_aeb3de08","updated":"2016-06-12 01:42:22.000000000","message":"Thank you for your opinion.\nWe not only need to test _get_disk_type module also need to test the context data and  process.","commit_id":"1c6028a355daa182adea990b23f5d2553433bfac"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"90a3cc3cf147a80b06246dcb3d15a2e72827ea66","unresolved":false,"context_lines":[{"line_number":3486,"context_line":""},{"line_number":3487,"context_line":"        self.mock_object(rest_client.RestClient, \u0027get_all_pools\u0027,"},{"line_number":3488,"context_line":"                         mock.Mock(return_value\u003dstorage_pool_sas[\u0027data\u0027]))"},{"line_number":3489,"context_line":"        data \u003d driver.get_volume_stats()"},{"line_number":3490,"context_line":"        if disk_type_value[\u0027disktype\u0027]:"},{"line_number":3491,"context_line":"            self.assertEqual(disk_type_value[\u0027disktype\u0027],"},{"line_number":3492,"context_line":"                             data[\u0027pools\u0027][0][\u0027disk_type\u0027])"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aa08908_0681c74d","line":3489,"in_reply_to":"7aa08908_c2c49d93","updated":"2016-06-16 12:13:41.000000000","message":"It is better to restrict the scope of a unit test to a single method for ease of maintenance.","commit_id":"1c6028a355daa182adea990b23f5d2553433bfac"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"a0fd599a501aa03852d6b8313a74e85d601ef088","unresolved":false,"context_lines":[{"line_number":3499,"context_line":"        driver.replica \u003d None"},{"line_number":3500,"context_line":"        self.mock_object(rest_client.RestClient, \u0027get_pool_info\u0027,"},{"line_number":3501,"context_line":"                         mock.Mock(return_value\u003dNone))"},{"line_number":3502,"context_line":"        data \u003d driver.get_volume_stats()"},{"line_number":3503,"context_line":"        self.assertIsNone(data[\u0027pools\u0027][0].get(\u0027disk_type\u0027))"},{"line_number":3504,"context_line":""},{"line_number":3505,"context_line":"    def test_extend_volume(self):"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aa08908_2e9fee5f","line":3502,"updated":"2016-06-08 16:55:33.000000000","message":"Same comment.","commit_id":"1c6028a355daa182adea990b23f5d2553433bfac"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"8827126ff009854475bd2653cc917c74e041fdd9","unresolved":false,"context_lines":[{"line_number":3499,"context_line":"        driver.replica \u003d None"},{"line_number":3500,"context_line":"        self.mock_object(rest_client.RestClient, \u0027get_pool_info\u0027,"},{"line_number":3501,"context_line":"                         mock.Mock(return_value\u003dNone))"},{"line_number":3502,"context_line":"        data \u003d driver.get_volume_stats()"},{"line_number":3503,"context_line":"        self.assertIsNone(data[\u0027pools\u0027][0].get(\u0027disk_type\u0027))"},{"line_number":3504,"context_line":""},{"line_number":3505,"context_line":"    def test_extend_volume(self):"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aa08908_8241f50d","line":3502,"in_reply_to":"7aa08908_2e9fee5f","updated":"2016-06-12 01:42:22.000000000","message":"Thank you for your opinion.\nWe not only need to test _get_disk_type module also need to test the context data and  process.","commit_id":"1c6028a355daa182adea990b23f5d2553433bfac"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"7250909a4c40dd7e3a5199a77f17e9ba3e06c0d6","unresolved":false,"context_lines":[{"line_number":2050,"context_line":""},{"line_number":2051,"context_line":"    def test_get_volume_status(self):"},{"line_number":2052,"context_line":"        data \u003d self.driver.get_volume_stats()"},{"line_number":2053,"context_line":"        self.assertEqual(\u00272.0.6\u0027, data[\u0027driver_version\u0027])"},{"line_number":2054,"context_line":""},{"line_number":2055,"context_line":"    @mock.patch.object(rest_client.RestClient, \u0027get_lun_info\u0027,"},{"line_number":2056,"context_line":"                       return_value\u003d{\"CAPACITY\": 6291456})"}],"source_content_type":"text/x-python","patch_set":13,"id":"3aaa91ec_bededa3c","line":2053,"range":{"start_line":2053,"start_character":26,"end_line":2053,"end_character":31},"updated":"2016-06-23 09:50:35.000000000","message":"Why can\u0027t we use the constant VERSION defined in huawei_driver module? We are only trying to check that driver version in the returned stats is set correctly to that constant.","commit_id":"41723d2699c8e5680b2da21027e5ee4db22847e6"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"907c287c98137d2c7e6480ba7bffcdcf38e9fb2d","unresolved":false,"context_lines":[{"line_number":2050,"context_line":""},{"line_number":2051,"context_line":"    def test_get_volume_status(self):"},{"line_number":2052,"context_line":"        data \u003d self.driver.get_volume_stats()"},{"line_number":2053,"context_line":"        self.assertEqual(\u00272.0.6\u0027, data[\u0027driver_version\u0027])"},{"line_number":2054,"context_line":""},{"line_number":2055,"context_line":"    @mock.patch.object(rest_client.RestClient, \u0027get_lun_info\u0027,"},{"line_number":2056,"context_line":"                       return_value\u003d{\"CAPACITY\": 6291456})"}],"source_content_type":"text/x-python","patch_set":13,"id":"3aaa91ec_743e4adb","line":2053,"range":{"start_line":2053,"start_character":26,"end_line":2053,"end_character":31},"in_reply_to":"3aaa91ec_bededa3c","updated":"2016-06-29 10:05:58.000000000","message":"Done\nThank you for your opinion.","commit_id":"41723d2699c8e5680b2da21027e5ee4db22847e6"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"7250909a4c40dd7e3a5199a77f17e9ba3e06c0d6","unresolved":false,"context_lines":[{"line_number":3431,"context_line":"            \u0027get_remote_device_by_wwn\u0027,"},{"line_number":3432,"context_line":"            mock.Mock(return_value\u003dremote_device_info))"},{"line_number":3433,"context_line":"        data \u003d self.driver.get_volume_stats()"},{"line_number":3434,"context_line":"        self.assertEqual(\u00272.0.6\u0027, data[\u0027driver_version\u0027])"},{"line_number":3435,"context_line":"        self.assertTrue(data[\u0027pools\u0027][0][\u0027replication_enabled\u0027])"},{"line_number":3436,"context_line":"        self.assertListEqual([\u0027sync\u0027, \u0027async\u0027],"},{"line_number":3437,"context_line":"                             data[\u0027pools\u0027][0][\u0027replication_type\u0027])"}],"source_content_type":"text/x-python","patch_set":13,"id":"3aaa91ec_3ef30ad8","line":3434,"range":{"start_line":3434,"start_character":26,"end_line":3434,"end_character":31},"updated":"2016-06-23 09:50:35.000000000","message":"Same comment.","commit_id":"41723d2699c8e5680b2da21027e5ee4db22847e6"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"309e959b0c9c4a622f0a1686513519b343a6a133","unresolved":false,"context_lines":[{"line_number":3925,"context_line":"              {\u0027TIER0CAPACITY\u0027: \u00270\u0027,"},{"line_number":3926,"context_line":"               \u0027TIER1CAPACITY\u0027: \u00270\u0027,"},{"line_number":3927,"context_line":"               \u0027TIER2CAPACITY\u0027: \u00270\u0027,"},{"line_number":3928,"context_line":"               \u0027disktype\u0027: \u0027\u0027})"},{"line_number":3929,"context_line":"    def test_get_volume_disk_type(self, disk_type_value):"},{"line_number":3930,"context_line":"        response_dict \u003d json.loads(FAKE_STORAGE_POOL_RESPONSE)"},{"line_number":3931,"context_line":"        storage_pool_sas \u003d copy.deepcopy(response_dict)"}],"source_content_type":"text/x-python","patch_set":18,"id":"dada55a8_0b045dbe","line":3928,"range":{"start_line":3928,"start_character":27,"end_line":3928,"end_character":29},"updated":"2016-07-18 14:24:03.000000000","message":"None","commit_id":"de1b9fb82bf9b8f041c919a28d5245796ff06b77"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"48d381affdc1099e9feae485e0e41996cf41d8ff","unresolved":false,"context_lines":[{"line_number":3925,"context_line":"              {\u0027TIER0CAPACITY\u0027: \u00270\u0027,"},{"line_number":3926,"context_line":"               \u0027TIER1CAPACITY\u0027: \u00270\u0027,"},{"line_number":3927,"context_line":"               \u0027TIER2CAPACITY\u0027: \u00270\u0027,"},{"line_number":3928,"context_line":"               \u0027disktype\u0027: \u0027\u0027})"},{"line_number":3929,"context_line":"    def test_get_volume_disk_type(self, disk_type_value):"},{"line_number":3930,"context_line":"        response_dict \u003d json.loads(FAKE_STORAGE_POOL_RESPONSE)"},{"line_number":3931,"context_line":"        storage_pool_sas \u003d copy.deepcopy(response_dict)"}],"source_content_type":"text/x-python","patch_set":18,"id":"dada55a8_662b75ec","line":3928,"range":{"start_line":3928,"start_character":27,"end_line":3928,"end_character":29},"in_reply_to":"dada55a8_0b045dbe","updated":"2016-07-19 01:16:47.000000000","message":"Thank you for your opinion.\nIt should be an empty string","commit_id":"de1b9fb82bf9b8f041c919a28d5245796ff06b77"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"b7336b6a315cf16c3cab107a9f23f74a0a84636c","unresolved":false,"context_lines":[{"line_number":3925,"context_line":"              {\u0027TIER0CAPACITY\u0027: \u00270\u0027,"},{"line_number":3926,"context_line":"               \u0027TIER1CAPACITY\u0027: \u00270\u0027,"},{"line_number":3927,"context_line":"               \u0027TIER2CAPACITY\u0027: \u00270\u0027,"},{"line_number":3928,"context_line":"               \u0027disktype\u0027: \u0027\u0027})"},{"line_number":3929,"context_line":"    def test_get_volume_disk_type(self, disk_type_value):"},{"line_number":3930,"context_line":"        response_dict \u003d json.loads(FAKE_STORAGE_POOL_RESPONSE)"},{"line_number":3931,"context_line":"        storage_pool_sas \u003d copy.deepcopy(response_dict)"}],"source_content_type":"text/x-python","patch_set":18,"id":"dada55a8_45cbb453","line":3928,"range":{"start_line":3928,"start_character":27,"end_line":3928,"end_character":29},"in_reply_to":"dada55a8_662b75ec","updated":"2016-07-19 10:40:33.000000000","message":"Why? It is not part of the input and it is used only to infer the expected output which is None if disktype is empty. If you set this to None, you don\u0027t need that conditional in line 3945.","commit_id":"de1b9fb82bf9b8f041c919a28d5245796ff06b77"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"309e959b0c9c4a622f0a1686513519b343a6a133","unresolved":false,"context_lines":[{"line_number":3942,"context_line":"        self.mock_object(rest_client.RestClient, \u0027get_all_pools\u0027,"},{"line_number":3943,"context_line":"                         mock.Mock(return_value\u003dstorage_pool_sas[\u0027data\u0027]))"},{"line_number":3944,"context_line":"        data \u003d driver.get_volume_stats()"},{"line_number":3945,"context_line":"        if disk_type_value[\u0027disktype\u0027]:"},{"line_number":3946,"context_line":"            self.assertEqual(disk_type_value[\u0027disktype\u0027],"},{"line_number":3947,"context_line":"                             data[\u0027pools\u0027][0][\u0027disk_type\u0027])"},{"line_number":3948,"context_line":"        else:"},{"line_number":3949,"context_line":"            self.assertIsNone(data[\u0027pools\u0027][0].get(\u0027disk_type\u0027))"},{"line_number":3950,"context_line":""},{"line_number":3951,"context_line":"    def test_get_disk_type_pool_info_none(self):"},{"line_number":3952,"context_line":"        driver \u003d FakeISCSIStorage(configuration\u003dself.configuration)"}],"source_content_type":"text/x-python","patch_set":18,"id":"dada55a8_ebee29eb","line":3949,"range":{"start_line":3945,"start_character":7,"end_line":3949,"end_character":64},"updated":"2016-07-18 14:24:03.000000000","message":"self.assertEqual(disk_type_value[\u0027disktype\u0027], data[\u0027pools\u0027][0][\u0027disk_type\u0027])","commit_id":"de1b9fb82bf9b8f041c919a28d5245796ff06b77"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"b7336b6a315cf16c3cab107a9f23f74a0a84636c","unresolved":false,"context_lines":[{"line_number":3942,"context_line":"        self.mock_object(rest_client.RestClient, \u0027get_all_pools\u0027,"},{"line_number":3943,"context_line":"                         mock.Mock(return_value\u003dstorage_pool_sas[\u0027data\u0027]))"},{"line_number":3944,"context_line":"        data \u003d driver.get_volume_stats()"},{"line_number":3945,"context_line":"        if disk_type_value[\u0027disktype\u0027]:"},{"line_number":3946,"context_line":"            self.assertEqual(disk_type_value[\u0027disktype\u0027],"},{"line_number":3947,"context_line":"                             data[\u0027pools\u0027][0][\u0027disk_type\u0027])"},{"line_number":3948,"context_line":"        else:"},{"line_number":3949,"context_line":"            self.assertIsNone(data[\u0027pools\u0027][0].get(\u0027disk_type\u0027))"},{"line_number":3950,"context_line":""},{"line_number":3951,"context_line":"    def test_get_disk_type_pool_info_none(self):"},{"line_number":3952,"context_line":"        driver \u003d FakeISCSIStorage(configuration\u003dself.configuration)"}],"source_content_type":"text/x-python","patch_set":18,"id":"dada55a8_c5884425","line":3949,"range":{"start_line":3945,"start_character":7,"end_line":3949,"end_character":64},"in_reply_to":"dada55a8_66dd3514","updated":"2016-07-19 10:40:33.000000000","message":"If you really want to make that change, you can wrap that line :)","commit_id":"de1b9fb82bf9b8f041c919a28d5245796ff06b77"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"48d381affdc1099e9feae485e0e41996cf41d8ff","unresolved":false,"context_lines":[{"line_number":3942,"context_line":"        self.mock_object(rest_client.RestClient, \u0027get_all_pools\u0027,"},{"line_number":3943,"context_line":"                         mock.Mock(return_value\u003dstorage_pool_sas[\u0027data\u0027]))"},{"line_number":3944,"context_line":"        data \u003d driver.get_volume_stats()"},{"line_number":3945,"context_line":"        if disk_type_value[\u0027disktype\u0027]:"},{"line_number":3946,"context_line":"            self.assertEqual(disk_type_value[\u0027disktype\u0027],"},{"line_number":3947,"context_line":"                             data[\u0027pools\u0027][0][\u0027disk_type\u0027])"},{"line_number":3948,"context_line":"        else:"},{"line_number":3949,"context_line":"            self.assertIsNone(data[\u0027pools\u0027][0].get(\u0027disk_type\u0027))"},{"line_number":3950,"context_line":""},{"line_number":3951,"context_line":"    def test_get_disk_type_pool_info_none(self):"},{"line_number":3952,"context_line":"        driver \u003d FakeISCSIStorage(configuration\u003dself.configuration)"}],"source_content_type":"text/x-python","patch_set":18,"id":"dada55a8_66dd3514","line":3949,"range":{"start_line":3945,"start_character":7,"end_line":3949,"end_character":64},"in_reply_to":"dada55a8_ebee29eb","updated":"2016-07-19 01:16:47.000000000","message":"Thank you for your opinion.\nThis is longer than 80 characters in a line","commit_id":"de1b9fb82bf9b8f041c919a28d5245796ff06b77"}],"cinder/volume/drivers/huawei/rest_client.py":[{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"9568671159d40d7acdd84882f2324c023fa5c322","unresolved":false,"context_lines":[{"line_number":1009,"context_line":"        \"\"\"Get disk type of the pool.\"\"\""},{"line_number":1010,"context_line":"        pool_info \u003d self.get_pool_info(pool_name, result)"},{"line_number":1011,"context_line":"        if not pool_info:"},{"line_number":1012,"context_line":"            return None"},{"line_number":1013,"context_line":""},{"line_number":1014,"context_line":"        pool_disk \u003d []"},{"line_number":1015,"context_line":"        for i, x in enumerate([\u0027ssd\u0027, \u0027sas\u0027, \u0027nl_sas\u0027]):"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_0d28b1e1","line":1012,"updated":"2016-06-07 08:03:30.000000000","message":"We don\u0027t have a test case for this path.","commit_id":"1b01a00421b041884117c9629468d0bd465b60e2"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"f3ffada6e8e31c9557a125153ebdd5dffc09e5b6","unresolved":false,"context_lines":[{"line_number":1009,"context_line":"        \"\"\"Get disk type of the pool.\"\"\""},{"line_number":1010,"context_line":"        pool_info \u003d self.get_pool_info(pool_name, result)"},{"line_number":1011,"context_line":"        if not pool_info:"},{"line_number":1012,"context_line":"            return None"},{"line_number":1013,"context_line":""},{"line_number":1014,"context_line":"        pool_disk \u003d []"},{"line_number":1015,"context_line":"        for i, x in enumerate([\u0027ssd\u0027, \u0027sas\u0027, \u0027nl_sas\u0027]):"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_731cb677","line":1012,"in_reply_to":"7aa08908_0d28b1e1","updated":"2016-06-07 11:32:06.000000000","message":"Thank you for your opinion.\nI use user case \u0027test_get_pool_info\u0027 to testing this path.","commit_id":"1b01a00421b041884117c9629468d0bd465b60e2"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"e2973c7bb09eb04c5c3723daec0e7a305120450e","unresolved":false,"context_lines":[{"line_number":1009,"context_line":"        \"\"\"Get disk type of the pool.\"\"\""},{"line_number":1010,"context_line":"        pool_info \u003d self.get_pool_info(pool_name, result)"},{"line_number":1011,"context_line":"        if not pool_info:"},{"line_number":1012,"context_line":"            return None"},{"line_number":1013,"context_line":""},{"line_number":1014,"context_line":"        pool_disk \u003d []"},{"line_number":1015,"context_line":"        for i, x in enumerate([\u0027ssd\u0027, \u0027sas\u0027, \u0027nl_sas\u0027]):"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_e178bec6","line":1012,"in_reply_to":"7aa08908_731cb677","updated":"2016-06-07 12:28:37.000000000","message":"test_get_pool_info should test get_pool_info method. We need a test for _get_disk_type which asserts for None return value if the pool info returned by get_pool_info is None.","commit_id":"1b01a00421b041884117c9629468d0bd465b60e2"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"009fde15dc1a700c749a520ea6ebabdae7827469","unresolved":false,"context_lines":[{"line_number":1009,"context_line":"        \"\"\"Get disk type of the pool.\"\"\""},{"line_number":1010,"context_line":"        pool_info \u003d self.get_pool_info(pool_name, result)"},{"line_number":1011,"context_line":"        if not pool_info:"},{"line_number":1012,"context_line":"            return None"},{"line_number":1013,"context_line":""},{"line_number":1014,"context_line":"        pool_disk \u003d []"},{"line_number":1015,"context_line":"        for i, x in enumerate([\u0027ssd\u0027, \u0027sas\u0027, \u0027nl_sas\u0027]):"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_1d4266ae","line":1012,"in_reply_to":"7aa08908_e178bec6","updated":"2016-06-08 01:12:49.000000000","message":"Done","commit_id":"1b01a00421b041884117c9629468d0bd465b60e2"}],"releasenotes/notes/huawei-pool-disktype-support-7c1f64639b42a48a.yaml":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"836e8204c167bac344f490c7147613cd0ac00392","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Add support for pool report disk type in huawei\r"},{"line_number":4,"context_line":"    cinder driver.\r"},{"line_number":5,"context_line":"upgrade:\r"},{"line_number":6,"context_line":"  - Add support for pool report disk type in huawei\r"},{"line_number":7,"context_line":"    cinder driver.\r"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"7aa08908_602a0f80","line":6,"updated":"2016-06-07 10:41:21.000000000","message":"We don\u0027t need to add it to the \u0027upgrade\u0027 section.","commit_id":"bdadd606d11d31720d1d58f27c239b5fce70fb59"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"f7291de673e1918a07fd238eb06132fb0dd9d56a","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - Add support for pool report disk type in huawei\r"},{"line_number":4,"context_line":"    cinder driver.\r"},{"line_number":5,"context_line":"upgrade:\r"},{"line_number":6,"context_line":"  - Add support for pool report disk type in huawei\r"},{"line_number":7,"context_line":"    cinder driver.\r"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"7aa08908_389f9fb5","line":6,"in_reply_to":"7aa08908_602a0f80","updated":"2016-06-07 11:31:28.000000000","message":"Done","commit_id":"bdadd606d11d31720d1d58f27c239b5fce70fb59"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"a0fd599a501aa03852d6b8313a74e85d601ef088","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---\r"},{"line_number":2,"context_line":"features:\r"},{"line_number":3,"context_line":"  - Add support for pool report disk type in huawei\r"},{"line_number":4,"context_line":"    cinder driver.\r"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"7aa08908_cecf4a54","line":3,"range":{"start_line":3,"start_character":20,"end_line":3,"end_character":41},"updated":"2016-06-08 16:55:33.000000000","message":"reporting pool disk type","commit_id":"1c6028a355daa182adea990b23f5d2553433bfac"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"8827126ff009854475bd2653cc917c74e041fdd9","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---\r"},{"line_number":2,"context_line":"features:\r"},{"line_number":3,"context_line":"  - Add support for pool report disk type in huawei\r"},{"line_number":4,"context_line":"    cinder driver.\r"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"7aa08908_a23cf1bf","line":3,"range":{"start_line":3,"start_character":20,"end_line":3,"end_character":41},"in_reply_to":"7aa08908_cecf4a54","updated":"2016-06-12 01:42:22.000000000","message":"Done.\nThank you for your opinion.","commit_id":"1c6028a355daa182adea990b23f5d2553433bfac"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"0dc54e08d1fdf2bb5257ed4564293277eb2eea46","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---\r"},{"line_number":2,"context_line":"features:\r"},{"line_number":3,"context_line":"  - Add support for pool reporting disk type in huawei\r"},{"line_number":4,"context_line":"    cinder driver.\r"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"7aa08908_864ad725","line":3,"range":{"start_line":3,"start_character":20,"end_line":3,"end_character":44},"updated":"2016-06-16 12:13:33.000000000","message":"My original comment was to replace this with \"reporting pool disk type\".\n\nPlease change to:\n\nAdd support for reporting pool disk type in Huawei driver.","commit_id":"1ad95d62d898563b481abec988dfc9c605b06191"},{"author":{"_account_id":17717,"name":"liuke","email":"liuke2@huawei.com","username":"liuke"},"change_message_id":"4bbe7260c73fc206b6436e098af4238ac31bb737","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---\r"},{"line_number":2,"context_line":"features:\r"},{"line_number":3,"context_line":"  - Add support for pool reporting disk type in huawei\r"},{"line_number":4,"context_line":"    cinder driver.\r"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"7aa08908_dee64315","line":3,"range":{"start_line":3,"start_character":20,"end_line":3,"end_character":44},"in_reply_to":"7aa08908_864ad725","updated":"2016-06-17 01:44:00.000000000","message":"Done","commit_id":"1ad95d62d898563b481abec988dfc9c605b06191"}]}
