)]}'
{"oslo_policy/generator.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"e9b00499484f950f54cc59a74d2988bfdc4b4ecb","unresolved":false,"context_lines":[{"line_number":93,"context_line":"                                        subsequent_indent\u003d\u0027# \u0027,"},{"line_number":94,"context_line":"                                        break_long_words\u003dFalse,"},{"line_number":95,"context_line":"                                        replace_whitespace\u003dFalse)"},{"line_number":96,"context_line":"        formatted_text +\u003d \u0027\\n\u0027"},{"line_number":97,"context_line":"    return formatted_text"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ba2be162_4b8f7975","line":96,"updated":"2017-03-06 16:51:23.000000000","message":"I think you leave a trailing \u0027\\n\u0027 with this code here?\n\nMaybe create formatted_lines then do .join(\"\\n\") to avoid the off by one error here.","commit_id":"fd5ffe657b96a7d8aafb628f9bd277082e3a3930"}],"oslo_policy/tests/test_generator.py":[{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"7c43ce9a6793626968cbdf3158854732df47a54c","unresolved":false,"context_lines":[{"line_number":87,"context_line":"            extensions\u003dextensions, namespace\u003d[\u0027base_rules\u0027, \u0027rules\u0027])"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"        expected \u003d \u0027\u0027\u0027# Basic admin check"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"\"admin\": \"is_admin:True\""},{"line_number":92,"context_line":"# This is a long description to check that line wrapping functions"},{"line_number":93,"context_line":"# properly"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba2be162_9d1e4c6e","line":90,"updated":"2017-03-03 22:31:47.000000000","message":"What is the empty line here for?","commit_id":"fd5ffe657b96a7d8aafb628f9bd277082e3a3930"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"e9b00499484f950f54cc59a74d2988bfdc4b4ecb","unresolved":false,"context_lines":[{"line_number":87,"context_line":"            extensions\u003dextensions, namespace\u003d[\u0027base_rules\u0027, \u0027rules\u0027])"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"        expected \u003d \u0027\u0027\u0027# Basic admin check"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"\"admin\": \"is_admin:True\""},{"line_number":92,"context_line":"# This is a long description to check that line wrapping functions"},{"line_number":93,"context_line":"# properly"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba2be162_0b710178","line":90,"in_reply_to":"ba2be162_9d1e4c6e","updated":"2017-03-06 16:51:23.000000000","message":"+1 this seems like a bug here.","commit_id":"fd5ffe657b96a7d8aafb628f9bd277082e3a3930"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"e9b00499484f950f54cc59a74d2988bfdc4b4ecb","unresolved":false,"context_lines":[{"line_number":132,"context_line":"\"shared\": \"field:networks:shared\u003dTrue\""},{"line_number":133,"context_line":"#"},{"line_number":134,"context_line":"\"admin_or_owner\": \"rule:admin or rule:owner\""},{"line_number":135,"context_line":"\u0027\u0027\u0027"},{"line_number":136,"context_line":"        stdout \u003d self._capture_stdout()"},{"line_number":137,"context_line":"        with mock.patch(\u0027stevedore.named.NamedExtensionManager\u0027,"},{"line_number":138,"context_line":"                        return_value\u003dtest_mgr) as mock_ext_mgr:"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba2be162_0b1f410a","line":135,"updated":"2017-03-06 16:51:23.000000000","message":"I think we need to add a test here, add an extra policy rule that has a description that contains a \"/n\" character.","commit_id":"fd5ffe657b96a7d8aafb628f9bd277082e3a3930"}]}
