)]}'
{"cinder/tests/unit/test_remotefs.py":[{"author":{"_account_id":14305,"name":"Yuriy Nesenenko","email":"ynesenenko@mirantis.com","username":"yuriy_n"},"change_message_id":"c4187ade1a0611a59f447e7790b8b9e1f328e075","unresolved":false,"context_lines":[{"line_number":328,"context_line":"        drv \u003d self._driver"},{"line_number":329,"context_line":""},{"line_number":330,"context_line":"        with mock.patch.object(drv, \u0027_create_snapshot\u0027) as \\"},{"line_number":331,"context_line":"                mock_create_snapshot,\\"},{"line_number":332,"context_line":"                mock.patch.object(drv, \u0027_delete_snapshot\u0027) as \\"},{"line_number":333,"context_line":"                mock_delete_snapshot,\\"},{"line_number":334,"context_line":"                mock.patch.object(drv, \u0027_copy_volume_from_snapshot\u0027) as \\"}],"source_content_type":"text/x-python","patch_set":4,"id":"da6ed579_b70c3d95","line":331,"range":{"start_line":331,"start_character":16,"end_line":331,"end_character":36},"updated":"2016-01-13 11:13:24.000000000","message":"It\u0027s preferred to use parentheses instead of \\ to wrap long lines.","commit_id":"e314520fecda46ad7f4e59777439ea26f775fb5c"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"538c94deebe720bf80095e792833b7a483e9c38c","unresolved":false,"context_lines":[{"line_number":328,"context_line":"        drv \u003d self._driver"},{"line_number":329,"context_line":""},{"line_number":330,"context_line":"        with mock.patch.object(drv, \u0027_create_snapshot\u0027) as \\"},{"line_number":331,"context_line":"                mock_create_snapshot,\\"},{"line_number":332,"context_line":"                mock.patch.object(drv, \u0027_delete_snapshot\u0027) as \\"},{"line_number":333,"context_line":"                mock_delete_snapshot,\\"},{"line_number":334,"context_line":"                mock.patch.object(drv, \u0027_copy_volume_from_snapshot\u0027) as \\"}],"source_content_type":"text/x-python","patch_set":4,"id":"da6ed579_e329eef3","line":331,"range":{"start_line":331,"start_character":16,"end_line":331,"end_character":36},"in_reply_to":"da6ed579_b70c3d95","updated":"2016-01-15 22:18:01.000000000","message":"This used backslashes because it\u0027s a lot easier to read.  (And readability always wins over style guidelines.)  In general I agree we should avoid them, but fixing it when just relocating this code is probably not worthwhile.","commit_id":"e314520fecda46ad7f4e59777439ea26f775fb5c"},{"author":{"_account_id":12661,"name":"Dmitry Guryanov","email":"dmitry.guryanov@gmail.com","username":"dguryanov"},"change_message_id":"62fabf49564751329646cd80d5600bc6594cef28","unresolved":false,"context_lines":[{"line_number":328,"context_line":"        drv \u003d self._driver"},{"line_number":329,"context_line":""},{"line_number":330,"context_line":"        with mock.patch.object(drv, \u0027_create_snapshot\u0027) as \\"},{"line_number":331,"context_line":"                mock_create_snapshot,\\"},{"line_number":332,"context_line":"                mock.patch.object(drv, \u0027_delete_snapshot\u0027) as \\"},{"line_number":333,"context_line":"                mock_delete_snapshot,\\"},{"line_number":334,"context_line":"                mock.patch.object(drv, \u0027_copy_volume_from_snapshot\u0027) as \\"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a68dd71_580984dc","line":331,"range":{"start_line":331,"start_character":16,"end_line":331,"end_character":36},"in_reply_to":"da6ed579_b70c3d95","updated":"2016-01-21 13:50:24.000000000","message":"Yuriy, could you please, tell, how can I avoid using backslashes? \n\nThis syntax doesn\u0027t work:\n\n        with (mock.patch.object(drv, \u0027_create_snapshot\u0027) as mock_create_snapshot,\n                mock.patch.object(drv, \u0027_delete_snapshot\u0027) as mock_delete_snapshot,\n                mock.patch.object(drv, \u0027_copy_volume_from_snapshot\u0027) as mock_copy_volume_from_snapshot):\n\n\nThe only working example I\u0027ve found in the code uses contextlib.nested","commit_id":"e314520fecda46ad7f4e59777439ea26f775fb5c"},{"author":{"_account_id":14305,"name":"Yuriy Nesenenko","email":"ynesenenko@mirantis.com","username":"yuriy_n"},"change_message_id":"c4187ade1a0611a59f447e7790b8b9e1f328e075","unresolved":false,"context_lines":[{"line_number":353,"context_line":"            drv.create_cloned_volume(volume, src_vref)"},{"line_number":354,"context_line":""},{"line_number":355,"context_line":"            mock_create_snapshot.assert_called_once_with(snap_ref)"},{"line_number":356,"context_line":"            mock_copy_volume_from_snapshot.\\"},{"line_number":357,"context_line":"                assert_called_once_with(snap_ref, volume_ref, volume[\u0027size\u0027])"},{"line_number":358,"context_line":"            self.assertTrue(mock_delete_snapshot.called)"}],"source_content_type":"text/x-python","patch_set":4,"id":"da6ed579_d7b9b17a","line":356,"range":{"start_line":356,"start_character":42,"end_line":356,"end_character":44},"updated":"2016-01-13 11:13:24.000000000","message":"It\u0027s preferred to use parentheses instead of \\ to wrap long lines.\nmock_copy_volume_from_snapshot.assert_called_once_with(\n    snap_ref, volume_ref, volume[\u0027size\u0027])","commit_id":"e314520fecda46ad7f4e59777439ea26f775fb5c"},{"author":{"_account_id":12661,"name":"Dmitry Guryanov","email":"dmitry.guryanov@gmail.com","username":"dguryanov"},"change_message_id":"62fabf49564751329646cd80d5600bc6594cef28","unresolved":false,"context_lines":[{"line_number":353,"context_line":"            drv.create_cloned_volume(volume, src_vref)"},{"line_number":354,"context_line":""},{"line_number":355,"context_line":"            mock_create_snapshot.assert_called_once_with(snap_ref)"},{"line_number":356,"context_line":"            mock_copy_volume_from_snapshot.\\"},{"line_number":357,"context_line":"                assert_called_once_with(snap_ref, volume_ref, volume[\u0027size\u0027])"},{"line_number":358,"context_line":"            self.assertTrue(mock_delete_snapshot.called)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a68dd71_5830a49e","line":356,"range":{"start_line":356,"start_character":42,"end_line":356,"end_character":44},"in_reply_to":"da6ed579_d7b9b17a","updated":"2016-01-21 13:50:24.000000000","message":"OK, I\u0027ll fix it.","commit_id":"e314520fecda46ad7f4e59777439ea26f775fb5c"},{"author":{"_account_id":11903,"name":"Anthony Lee","email":"anthony.mic.lee@hpe.com","username":"leeantho"},"change_message_id":"c587218de038b1264904332eb0b32abe98f91a81","unresolved":false,"context_lines":[{"line_number":339,"context_line":"                mock_copy_volume_from_snapshot:"},{"line_number":340,"context_line":""},{"line_number":341,"context_line":"            volume \u003d self._FAKE_VOLUME.copy()"},{"line_number":342,"context_line":"            src_vref \u003d self._FAKE_VOLUME.copy()"},{"line_number":343,"context_line":"            src_vref[\u0027id\u0027] \u003d \u0027375e32b2-804a-49f2-b282-85d1d5a5b9e1\u0027"},{"line_number":344,"context_line":"            src_vref[\u0027name\u0027] \u003d \u0027volume-%s\u0027 % src_vref[\u0027id\u0027]"},{"line_number":345,"context_line":"            volume_ref \u003d {\u0027id\u0027: volume[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":6,"id":"bae84128_6fd9fa56","line":342,"updated":"2016-02-23 23:35:54.000000000","message":"_FAKE_VOLUME doesn\u0027t appear to be a class variable so self._FAKE_VOLUME.copy() is causing this test to fail.\n\n_FAKE_VOLUME is created up above on line 42 but only locally to the setUp function.","commit_id":"e2a1aa2d509f8b53ec6865193907d0035e0d1cdf"},{"author":{"_account_id":12408,"name":"Maxim Nestratov","email":"mnestratov@virtuozzo.com","username":"mnestratov"},"change_message_id":"45feee1eb4299c1c4269e042d41565875eca880c","unresolved":false,"context_lines":[{"line_number":339,"context_line":"                mock_copy_volume_from_snapshot:"},{"line_number":340,"context_line":""},{"line_number":341,"context_line":"            volume \u003d self._FAKE_VOLUME.copy()"},{"line_number":342,"context_line":"            src_vref \u003d self._FAKE_VOLUME.copy()"},{"line_number":343,"context_line":"            src_vref[\u0027id\u0027] \u003d \u0027375e32b2-804a-49f2-b282-85d1d5a5b9e1\u0027"},{"line_number":344,"context_line":"            src_vref[\u0027name\u0027] \u003d \u0027volume-%s\u0027 % src_vref[\u0027id\u0027]"},{"line_number":345,"context_line":"            volume_ref \u003d {\u0027id\u0027: volume[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":6,"id":"bae84128_84cc11bc","line":342,"in_reply_to":"bae84128_6fd9fa56","updated":"2016-02-24 08:29:30.000000000","message":"Yeah. Actually I changed the order of patches by a mistake while rebasing. That is why Jenkins failed. Now it is fixed.\nCorrect order is: this change first, then patch https://review.openstack.org/#/c/261558","commit_id":"e2a1aa2d509f8b53ec6865193907d0035e0d1cdf"}]}
