)]}'
{"cinder/tests/unit/test_pure.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"a1fc7afc65420d0b10d95ff3573c1ffdd3443abb","unresolved":false,"context_lines":[{"line_number":999,"context_line":"        self.assertIs(real_result, None)"},{"line_number":1000,"context_line":"        self.array.list_hosts.return_value.append(good_host)"},{"line_number":1001,"context_line":"        real_result \u003d self.driver._get_host(CONNECTOR)"},{"line_number":1002,"context_line":"        self.assertEqual(real_result, good_host)"},{"line_number":1003,"context_line":"        self.assert_error_propagates([self.array.list_hosts],"},{"line_number":1004,"context_line":"                                     self.driver._get_host, CONNECTOR)"},{"line_number":1005,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_82503933","line":1002,"updated":"2015-05-22 17:21:01.000000000","message":"Please change all instances to (EXPECTED, ACTUAL).","commit_id":"3a973cfdc53c4d144a712a663b1292657b489af8"},{"author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"change_message_id":"1a4e8e00837693c378d147af99969b9812f8948f","unresolved":false,"context_lines":[{"line_number":999,"context_line":"        self.assertIs(real_result, None)"},{"line_number":1000,"context_line":"        self.array.list_hosts.return_value.append(good_host)"},{"line_number":1001,"context_line":"        real_result \u003d self.driver._get_host(CONNECTOR)"},{"line_number":1002,"context_line":"        self.assertEqual(real_result, good_host)"},{"line_number":1003,"context_line":"        self.assert_error_propagates([self.array.list_hosts],"},{"line_number":1004,"context_line":"                                     self.driver._get_host, CONNECTOR)"},{"line_number":1005,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_824836b4","line":1002,"in_reply_to":"7a016987_82503933","updated":"2015-05-22 18:36:28.000000000","message":"Done","commit_id":"3a973cfdc53c4d144a712a663b1292657b489af8"},{"author":{"_account_id":14428,"name":"Bharat Kumar Kobagana","email":"bharath.kobagana@gmail.com","username":"bharatkk"},"change_message_id":"f49463b282149a0a3f266d6d3eebada507654b1a","unresolved":false,"context_lines":[{"line_number":979,"context_line":"        self.assertEqual("},{"line_number":980,"context_line":"            self.driver.SUPPORTED_REST_API_VERSIONS,"},{"line_number":981,"context_line":"            self.purestorage_module.FlashArray.supported_rest_versions"},{"line_number":982,"context_line":"        )"},{"line_number":983,"context_line":"        mock_choose_target_iscsi_port.assert_called_with()"},{"line_number":984,"context_line":"        self.assertEqual(ISCSI_PORTS[0], self.driver._iscsi_port)"},{"line_number":985,"context_line":"        self.assert_error_propagates("}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_702e16a6","line":982,"updated":"2015-05-24 07:06:56.000000000","message":"I think here the order of arguments is wrong.","commit_id":"27caaccddaddbb2c23fcd1c5558408669fbca3fc"},{"author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"change_message_id":"0621866dfcecb305faf3a80a9d272200b54e3731","unresolved":false,"context_lines":[{"line_number":979,"context_line":"        self.assertEqual("},{"line_number":980,"context_line":"            self.driver.SUPPORTED_REST_API_VERSIONS,"},{"line_number":981,"context_line":"            self.purestorage_module.FlashArray.supported_rest_versions"},{"line_number":982,"context_line":"        )"},{"line_number":983,"context_line":"        mock_choose_target_iscsi_port.assert_called_with()"},{"line_number":984,"context_line":"        self.assertEqual(ISCSI_PORTS[0], self.driver._iscsi_port)"},{"line_number":985,"context_line":"        self.assert_error_propagates("}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_1618fad1","line":982,"in_reply_to":"7a016987_702e16a6","updated":"2015-05-24 19:22:39.000000000","message":"Nah, its in the correct order for (expected, actual) or at least close enough without hardcoding versions in this test... we don\u0027t really care which versions they are as much as that the \u0027FlashArray\u0027 objects version are now the subset supported by the driver.","commit_id":"27caaccddaddbb2c23fcd1c5558408669fbca3fc"},{"author":{"_account_id":14428,"name":"Bharat Kumar Kobagana","email":"bharath.kobagana@gmail.com","username":"bharatkk"},"change_message_id":"f49463b282149a0a3f266d6d3eebada507654b1a","unresolved":false,"context_lines":[{"line_number":993,"context_line":"    def test_get_host(self):"},{"line_number":994,"context_line":"        good_host \u003d PURE_HOST.copy()"},{"line_number":995,"context_line":"        good_host.update(iqn\u003d[\"another-wrong-iqn\", INITIATOR_IQN])"},{"line_number":996,"context_line":"        bad_host \u003d {\"name\": \"bad-host\", \"iqn\": [\"wrong-iqn\"]}"},{"line_number":997,"context_line":"        self.array.list_hosts.return_value \u003d [bad_host]"},{"line_number":998,"context_line":"        real_result \u003d self.driver._get_host(CONNECTOR)"},{"line_number":999,"context_line":"        self.assertIs(real_result, None)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_30341efa","line":996,"updated":"2015-05-24 07:06:56.000000000","message":"The last item in the dictionary should have a trailing comma.\n\nhttp://docs.openstack.org/developer/hacking/#dictionaries-lists\n\nAnd for below dicts as well.","commit_id":"27caaccddaddbb2c23fcd1c5558408669fbca3fc"},{"author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"change_message_id":"0621866dfcecb305faf3a80a9d272200b54e3731","unresolved":false,"context_lines":[{"line_number":993,"context_line":"    def test_get_host(self):"},{"line_number":994,"context_line":"        good_host \u003d PURE_HOST.copy()"},{"line_number":995,"context_line":"        good_host.update(iqn\u003d[\"another-wrong-iqn\", INITIATOR_IQN])"},{"line_number":996,"context_line":"        bad_host \u003d {\"name\": \"bad-host\", \"iqn\": [\"wrong-iqn\"]}"},{"line_number":997,"context_line":"        self.array.list_hosts.return_value \u003d [bad_host]"},{"line_number":998,"context_line":"        real_result \u003d self.driver._get_host(CONNECTOR)"},{"line_number":999,"context_line":"        self.assertIs(real_result, None)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_b62926e8","line":996,"in_reply_to":"7a016987_30341efa","updated":"2015-05-24 19:22:39.000000000","message":"That rule is, afaik, for larger multi-line dictionaries (\u003e80 characters), for single line ones like this if it extends any it would need to be re-formatted anyway so adding the comma to the end doesn\u0027t really improve readability of future diffs in any meaningful way.\n\nI\u0027ll clean up the others in here that are larger though.","commit_id":"27caaccddaddbb2c23fcd1c5558408669fbca3fc"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"1c22fd5756ebeb547ee0a60004e679c96cc7225b","unresolved":false,"context_lines":[{"line_number":88,"context_line":"    \"volume_name\": \"volume-\" + SRC_VOL_ID,"},{"line_number":89,"context_line":"    \"volume_size\": 2,"},{"line_number":90,"context_line":"    \"display_name\": \"fake_snapshot\","},{"line_number":91,"context_line":"    \"cgsnapshot_id\": None"},{"line_number":92,"context_line":"}"},{"line_number":93,"context_line":"SNAPSHOT_WITH_CGROUP \u003d SNAPSHOT.copy()"},{"line_number":94,"context_line":"SNAPSHOT_WITH_CGROUP[\u0027cgsnapshot_id\u0027] \u003d \\"}],"source_content_type":"text/x-python","patch_set":6,"id":"7a016987_398be920","line":91,"updated":"2015-05-24 22:29:15.000000000","message":"Ending comma here?","commit_id":"0d3ef427f50004681df8868d4d0a84b8ccbddae2"},{"author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"change_message_id":"ad96bfd9fe7cce6a597242f8239125da4f576da8","unresolved":false,"context_lines":[{"line_number":88,"context_line":"    \"volume_name\": \"volume-\" + SRC_VOL_ID,"},{"line_number":89,"context_line":"    \"volume_size\": 2,"},{"line_number":90,"context_line":"    \"display_name\": \"fake_snapshot\","},{"line_number":91,"context_line":"    \"cgsnapshot_id\": None"},{"line_number":92,"context_line":"}"},{"line_number":93,"context_line":"SNAPSHOT_WITH_CGROUP \u003d SNAPSHOT.copy()"},{"line_number":94,"context_line":"SNAPSHOT_WITH_CGROUP[\u0027cgsnapshot_id\u0027] \u003d \\"}],"source_content_type":"text/x-python","patch_set":6,"id":"7a016987_a4d44ceb","line":91,"in_reply_to":"7a016987_398be920","updated":"2015-05-25 02:54:49.000000000","message":"Done","commit_id":"0d3ef427f50004681df8868d4d0a84b8ccbddae2"}],"cinder/volume/drivers/pure.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"a1fc7afc65420d0b10d95ff3573c1ffdd3443abb","unresolved":false,"context_lines":[{"line_number":281,"context_line":"                \"provisioned_capacity\": provisioned_space,"},{"line_number":282,"context_line":"                \"max_over_subscription_ratio\": thin_provisioning,"},{"line_number":283,"context_line":"                \"total_volumes\": total_vols,"},{"line_number":284,"context_line":"                \"filter_function\": self.get_filter_function()"},{"line_number":285,"context_line":"                }"},{"line_number":286,"context_line":"        self._stats \u003d data"},{"line_number":287,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_bd17da43","line":284,"updated":"2015-05-22 17:21:01.000000000","message":"This was a recent discovery for me, but there is a guideline that if a dict is \u003e 80 characters it should end with a comma with the closing bracket on the next line. I think the reasoning is if additional values are added in the future, the diff would just highlight the new line of code and not the existing just to add the comma.","commit_id":"3a973cfdc53c4d144a712a663b1292657b489af8"},{"author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"change_message_id":"1a4e8e00837693c378d147af99969b9812f8948f","unresolved":false,"context_lines":[{"line_number":281,"context_line":"                \"provisioned_capacity\": provisioned_space,"},{"line_number":282,"context_line":"                \"max_over_subscription_ratio\": thin_provisioning,"},{"line_number":283,"context_line":"                \"total_volumes\": total_vols,"},{"line_number":284,"context_line":"                \"filter_function\": self.get_filter_function()"},{"line_number":285,"context_line":"                }"},{"line_number":286,"context_line":"        self._stats \u003d data"},{"line_number":287,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_dd4df6c4","line":284,"in_reply_to":"7a016987_bd17da43","updated":"2015-05-22 18:36:28.000000000","message":"Done. I actually like that syntax better, and I agree it makes the diffs nicer (and helps prevent me from forgetting to add in the comma when adding new rows).","commit_id":"3a973cfdc53c4d144a712a663b1292657b489af8"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"a1fc7afc65420d0b10d95ff3573c1ffdd3443abb","unresolved":false,"context_lines":[{"line_number":463,"context_line":""},{"line_number":464,"context_line":"        ref_vol_name \u003d existing_ref[\u0027name\u0027]"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":"        connected_hosts \u003d \\"},{"line_number":467,"context_line":"            self._array.list_volume_private_connections(ref_vol_name)"},{"line_number":468,"context_line":"        if len(connected_hosts) \u003e 0:"},{"line_number":469,"context_line":"            raise exception.ManageExistingInvalidReference("}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_fd6672eb","line":466,"updated":"2015-05-22 17:21:01.000000000","message":"Not a requirement, but I know the preference is to use () to allow multiline rather than using the \\ line continuation.","commit_id":"3a973cfdc53c4d144a712a663b1292657b489af8"},{"author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"change_message_id":"1a4e8e00837693c378d147af99969b9812f8948f","unresolved":false,"context_lines":[{"line_number":463,"context_line":""},{"line_number":464,"context_line":"        ref_vol_name \u003d existing_ref[\u0027name\u0027]"},{"line_number":465,"context_line":""},{"line_number":466,"context_line":"        connected_hosts \u003d \\"},{"line_number":467,"context_line":"            self._array.list_volume_private_connections(ref_vol_name)"},{"line_number":468,"context_line":"        if len(connected_hosts) \u003e 0:"},{"line_number":469,"context_line":"            raise exception.ManageExistingInvalidReference("}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_a2a9f225","line":466,"in_reply_to":"7a016987_fd6672eb","updated":"2015-05-22 18:36:28.000000000","message":"Yea... I\u0027m torn on these ones, definitely for conditionals I like the () better but for \u0027one line\u0027 assignments that got broken up for the 80 char limit I tend to opt for \\ more. As you said its not a requirement, so I\u0027m going to be lazy here and leave it alone.","commit_id":"3a973cfdc53c4d144a712a663b1292657b489af8"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"75e55bbd03455a72680bf7bff44875609fd8a04a","unresolved":false,"context_lines":[{"line_number":322,"context_line":"        else:"},{"line_number":323,"context_line":"            msg \u003d _(\"create_consistencygroup_from_src only supports a\""},{"line_number":324,"context_line":"                    \" cgsnapshot source, other sources cannot be used.\")"},{"line_number":325,"context_line":"            raise exception.InvalidInput(msg)"},{"line_number":326,"context_line":""},{"line_number":327,"context_line":"        return None, None"},{"line_number":328,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"5afe65bd_1f0fc8e2","line":325,"updated":"2015-06-02 05:21:23.000000000","message":"This should be:\n\nexception.InvalidInput(reason\u003dmsg)","commit_id":"2c753b1d698f9766e7897ca9cb24737ba65b5e51"},{"author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"change_message_id":"ebb07f0b02f3d6ad83536fd6fdc77559fdc366aa","unresolved":false,"context_lines":[{"line_number":322,"context_line":"        else:"},{"line_number":323,"context_line":"            msg \u003d _(\"create_consistencygroup_from_src only supports a\""},{"line_number":324,"context_line":"                    \" cgsnapshot source, other sources cannot be used.\")"},{"line_number":325,"context_line":"            raise exception.InvalidInput(msg)"},{"line_number":326,"context_line":""},{"line_number":327,"context_line":"        return None, None"},{"line_number":328,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"5afe65bd_fc7744d2","line":325,"in_reply_to":"5afe65bd_1f0fc8e2","updated":"2015-06-02 15:28:22.000000000","message":"Done","commit_id":"2c753b1d698f9766e7897ca9cb24737ba65b5e51"}]}
