)]}'
{"oslo_policy/tests/test_checker.py":[{"author":{"_account_id":15054,"name":"wangxiyuan","email":"wangxiyuan1007@gmail.com","username":"wangxiyuan"},"change_message_id":"62ec6212408096fed534e57b35d9b02a0adc5001","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2015 OpenStack Foundation."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_efc15351","line":1,"range":{"start_line":1,"start_character":0,"end_line":1,"end_character":42},"updated":"2018-10-31 02:44:47.000000000","message":"nit","commit_id":"f2417e3313e813b974744f31a29c9c772a8b7f3b"},{"author":{"_account_id":15054,"name":"wangxiyuan","email":"wangxiyuan1007@gmail.com","username":"wangxiyuan"},"change_message_id":"62ec6212408096fed534e57b35d9b02a0adc5001","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2015 OpenStack Foundation."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":5,"context_line":"#    not use this file except in compliance with the License. You may obtain"},{"line_number":6,"context_line":"#    a copy of the License at"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_cf87b711","line":3,"updated":"2018-10-31 02:44:47.000000000","message":"I suggest the file name can be set as \u0027test_shell\u0027 to keep the code tree consistent","commit_id":"f2417e3313e813b974744f31a29c9c772a8b7f3b"}],"oslo_policy/tests/test_shell.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"e2d88f5cd7da986b78b9604620df3efbb885c5a5","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    def test_all_nonadmin(self):"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"        policy_file \u003d open(self.get_config_file_fullname(\u0027policy.yaml\u0027), \u0027r\u0027)"},{"line_number":40,"context_line":"        access_file \u003d open(self.get_config_file_fullname(\u0027access.json\u0027), \u0027r\u0027)"},{"line_number":41,"context_line":"        apply_rule \u003d None"},{"line_number":42,"context_line":"        is_admin \u003d False"},{"line_number":43,"context_line":"        stdout \u003d self._capture_stdout()"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_0ac58190","line":40,"range":{"start_line":39,"start_character":0,"end_line":40,"end_character":77},"updated":"2018-11-01 10:34:27.000000000","message":"I\u0027m surprised Python (particularly python3) isn\u0027t complaining about file handles being left open. If it\u0027s happy though, so am I","commit_id":"11c27de86aec03080ec329a5e7140bacc1da49e9"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"dd93dc1d4517cd5b87eaddbba3f3c13928859919","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        access_file \u003d open(self.get_config_file_fullname(\u0027access.json\u0027), \u0027r\u0027)"},{"line_number":41,"context_line":"        apply_rule \u003d None"},{"line_number":42,"context_line":"        is_admin \u003d False"},{"line_number":43,"context_line":"        stdout \u003d self._capture_stdout()"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        shell.tool(policy_file, access_file, apply_rule, is_admin)"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_8abe71ad","line":43,"range":{"start_line":43,"start_character":8,"end_line":43,"end_character":39},"updated":"2018-11-01 10:49:20.000000000","message":"nit: You could probably make this a self attribute in setUp, given that you consistently use it in later tests.","commit_id":"11c27de86aec03080ec329a5e7140bacc1da49e9"},{"author":{"_account_id":22136,"name":"Harry Rybacki","email":"hrybacki@gmail.com"},"change_message_id":"086d36fd95c4f78869759afedf0133cbedfbf7ee","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        shell.tool(policy_file, access_file, apply_rule, is_admin)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        expected \u003d \u0027\u0027\u0027passed: sampleservice:sample_rule"},{"line_number":48,"context_line":"\u0027\u0027\u0027"},{"line_number":49,"context_line":"        self.assertEqual(expected, stdout.getvalue())"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_1245c072","line":48,"updated":"2018-10-31 19:45:45.000000000","message":"strange formatting but doesn\u0027t seem to be hitting the linter","commit_id":"11c27de86aec03080ec329a5e7140bacc1da49e9"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"e2d88f5cd7da986b78b9604620df3efbb885c5a5","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        shell.tool(policy_file, access_file, apply_rule, is_admin)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        expected \u003d \u0027\u0027\u0027passed: sampleservice:sample_rule"},{"line_number":48,"context_line":"\u0027\u0027\u0027"},{"line_number":49,"context_line":"        self.assertEqual(expected, stdout.getvalue())"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_4acb79a6","line":48,"in_reply_to":"3f79a3b5_1245c072","updated":"2018-11-01 10:34:27.000000000","message":"We could resolve this by using textwrap.dedent, but it\u0027s a nit that I wouldn\u0027t block on","commit_id":"11c27de86aec03080ec329a5e7140bacc1da49e9"}]}
