)]}'
{"tempest/services/identity/json/policy_client.py":[{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"36647062d4e5265e89750d48dbd7d795d0006a23","unresolved":false,"context_lines":[{"line_number":29,"context_line":"        self.service \u003d self.config.identity.catalog_type"},{"line_number":30,"context_line":"        self.endpoint_url \u003d \u0027adminURL\u0027"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    def has_policy_extensions(self):"},{"line_number":33,"context_line":"        \"\"\""},{"line_number":34,"context_line":"        Returns True if the policies Extensions are supported"},{"line_number":35,"context_line":"        False otherwise"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAM3%2F%2FEGs%3D","line":32,"updated":"2013-02-08 11:18:24.000000000","message":"Description does not matches behavior ... it returns True when the policies are unavailable.","commit_id":"a192c391d204fb6d947f6f0fbbaf51f30ba52bc5"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"95c0e97c298d492af0661820e2e0a30e7263689b","unresolved":false,"context_lines":[{"line_number":39,"context_line":"            self.list_policies()"},{"line_number":40,"context_line":"        except exceptions.NotFound:"},{"line_number":41,"context_line":"            enabled \u003d False"},{"line_number":42,"context_line":"        return enabled"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def create_policy(self, blob, type):"},{"line_number":45,"context_line":"        \"\"\"Creates a Policy.\"\"\""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2FD7Y%3D","line":42,"updated":"2013-02-08 14:19:34.000000000","message":"Maybe just return T/F, not necessary to store in \u0027enabled\u0027 var?","commit_id":"c609ee995d303f4d75f8ad5ab7085526ee4215af"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"b25c8aa6533d6cc21d0d58eacdd748a7fab85fb5","unresolved":false,"context_lines":[{"line_number":37,"context_line":"            self.list_policies()"},{"line_number":38,"context_line":"        except exceptions.NotFound:"},{"line_number":39,"context_line":"            return False"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def create_policy(self, blob, type):"},{"line_number":42,"context_line":"        \"\"\"Creates a Policy.\"\"\""},{"line_number":43,"context_line":"        post_body \u003d {"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAM3%2F%2BwmM%3D","line":40,"updated":"2013-02-19 20:36:04.000000000","message":"return True is missing.","commit_id":"61479e0d84de17c2263a78ff0996962d7f89368d"}],"tempest/services/identity/xml/policy_client.py":[{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"36647062d4e5265e89750d48dbd7d795d0006a23","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        json \u003d xml_to_json(body)"},{"line_number":52,"context_line":"        return json"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def has_policy_extensions(self):"},{"line_number":55,"context_line":"        \"\"\""},{"line_number":56,"context_line":"        Returns True if the policies Extensions are supported"},{"line_number":57,"context_line":"        False otherwise"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAM3%2F%2FEGg%3D","line":54,"updated":"2013-02-08 11:18:24.000000000","message":"Same \u0027problem\u0027 as in PolicyClientJSON.","commit_id":"a192c391d204fb6d947f6f0fbbaf51f30ba52bc5"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"95c0e97c298d492af0661820e2e0a30e7263689b","unresolved":false,"context_lines":[{"line_number":29,"context_line":"from tempest.services.compute.xml.common import Text"},{"line_number":30,"context_line":"from tempest.services.compute.xml.common import xml_to_json"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"XMLNS \u003d \"http://docs.openstack.org/identity/api/v2.0\""},{"line_number":33,"context_line":""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"class PolicyClientXML(RestClientXML):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2FD68%3D","line":32,"updated":"2013-02-08 14:19:34.000000000","message":"Not sure about NS for v2 vs v3 (does such ns already exists)?","commit_id":"c609ee995d303f4d75f8ad5ab7085526ee4215af"},{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"95c0e97c298d492af0661820e2e0a30e7263689b","unresolved":false,"context_lines":[{"line_number":61,"context_line":"            self.list_policies()"},{"line_number":62,"context_line":"        except exceptions.NotFound:"},{"line_number":63,"context_line":"            enabled \u003d False"},{"line_number":64,"context_line":"        return enabled"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    def create_policy(self, blob, type):"},{"line_number":67,"context_line":"        \"\"\"Creates a Policy.\"\"\""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2FD60%3D","line":64,"updated":"2013-02-08 14:19:34.000000000","message":"same as for JSON client, just return T/F?","commit_id":"c609ee995d303f4d75f8ad5ab7085526ee4215af"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"b25c8aa6533d6cc21d0d58eacdd748a7fab85fb5","unresolved":false,"context_lines":[{"line_number":59,"context_line":"            self.list_policies()"},{"line_number":60,"context_line":"        except exceptions.NotFound:"},{"line_number":61,"context_line":"            return False"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    def create_policy(self, blob, type):"},{"line_number":64,"context_line":"        \"\"\"Creates a Policy.\"\"\""},{"line_number":65,"context_line":"        create_policy \u003d Element(\"policy\", xmlns\u003dXMLNS, blob\u003dblob, type\u003dtype)"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAM3%2F%2BwmE%3D","line":62,"updated":"2013-02-19 20:36:04.000000000","message":"return True is missing.","commit_id":"61479e0d84de17c2263a78ff0996962d7f89368d"}],"tempest/tests/identity/admin/test_policies.py":[{"author":{"_account_id":6683,"name":"Pavel Sedlák","email":"psedlak@redhat.com","username":"psedlak"},"change_message_id":"36647062d4e5265e89750d48dbd7d795d0006a23","unresolved":false,"context_lines":[{"line_number":134,"context_line":"    @classmethod"},{"line_number":135,"context_line":"    def setUpClass(cls):"},{"line_number":136,"context_line":"        super(PoliciesTestJSON, cls).setUpClass()"},{"line_number":137,"context_line":"        if cls.policy_client.has_policy_extensions():"},{"line_number":138,"context_line":"            raise cls.skipException(\"Policy extensions disabled\")"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAM3%2F%2FEGc%3D","line":137,"updated":"2013-02-08 11:18:24.000000000","message":"Looks wrong - skip \"if we have\" extension? Same think few lines below for XML. Caused by \"inverted\" returned value in PolicyClients.","commit_id":"a192c391d204fb6d947f6f0fbbaf51f30ba52bc5"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"60eda49f4bc2e907adb2fa12dbef2976bdcc88f2","unresolved":false,"context_lines":[{"line_number":15,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":16,"context_line":"#    under the License."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from nose.plugins.attrib import attr"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":21,"context_line":"from tempest import exceptions"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAM3%2F%2BouI%3D","line":18,"updated":"2013-02-24 10:00:56.000000000","message":"Please do not use \"from nose.plugins.attrib import attr\".\nYou should use the tempest.test.attr.","commit_id":"d6b0cd6c54349cb1ef7c60b3a23aa02a32236d58"},{"author":{"_account_id":6455,"name":"Harika Vakadi","email":"harika_vakadi@persistent.co.in","username":"harika-vakadi"},"change_message_id":"18bb3246a7a44f773e761fe04d4839f074f9e975","unresolved":false,"context_lines":[{"line_number":15,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":16,"context_line":"#    under the License."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from nose.plugins.attrib import attr"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":21,"context_line":"from tempest import exceptions"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAM3%2F%2Bmbk%3D","line":18,"in_reply_to":"AAAAM3%2F%2BouI%3D","updated":"2013-02-26 06:24:22.000000000","message":"Done","commit_id":"d6b0cd6c54349cb1ef7c60b3a23aa02a32236d58"}],"tempest/tests/identity/admin/v3/test_policies.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"257e21b4f4e5bce4edb5aaded48ec7ce4ec5aeaf","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        policy_type \u003d rand_name(\u0027PolicyType-\u0027)"},{"line_number":79,"context_line":"        resp, policy \u003d self.policy_client.create_policy(blob, policy_type)"},{"line_number":80,"context_line":"        self.addCleanup(self._delete_policy, policy[\u0027id\u0027])"},{"line_number":81,"context_line":"        self.assertTrue(\u0027id\u0027 in policy)"},{"line_number":82,"context_line":"        self.assertTrue(\u0027type\u0027 in policy)"},{"line_number":83,"context_line":"        self.assertTrue(\u0027blob\u0027 in policy)"},{"line_number":84,"context_line":"        self.assertFalse(policy[\u0027id\u0027] is None)"}],"source_content_type":"text/x-python","patch_set":13,"id":"AAAAOn%2F%2Ft%2FU%3D","line":81,"updated":"2013-04-26 11:52:44.000000000","message":"please convert these to assertIn, not assertTrue. assertTrue is terrible to debug when it goes wrong.","commit_id":"72254134e4b5912ba460132db8bd01a27d6e7f70"},{"author":{"_account_id":6455,"name":"Harika Vakadi","email":"harika_vakadi@persistent.co.in","username":"harika-vakadi"},"change_message_id":"6e05a372083d85ba719180e19a4830ed78f4dd5e","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        policy_type \u003d rand_name(\u0027PolicyType-\u0027)"},{"line_number":79,"context_line":"        resp, policy \u003d self.policy_client.create_policy(blob, policy_type)"},{"line_number":80,"context_line":"        self.addCleanup(self._delete_policy, policy[\u0027id\u0027])"},{"line_number":81,"context_line":"        self.assertTrue(\u0027id\u0027 in policy)"},{"line_number":82,"context_line":"        self.assertTrue(\u0027type\u0027 in policy)"},{"line_number":83,"context_line":"        self.assertTrue(\u0027blob\u0027 in policy)"},{"line_number":84,"context_line":"        self.assertFalse(policy[\u0027id\u0027] is None)"}],"source_content_type":"text/x-python","patch_set":13,"id":"AAAAOn%2F%2Fp9A%3D","line":81,"in_reply_to":"AAAAOn%2F%2FqCI%3D","updated":"2013-04-30 13:10:20.000000000","message":"Hi Sean Dague,\n\nAs suggested by Ravikumar Venkatesan, I am waiting to resubmit the new patch after https://review.openstack.org/#/c/20688/  submission goes through.\n\nThanks,\nHarika.","commit_id":"72254134e4b5912ba460132db8bd01a27d6e7f70"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"98f32aed929978b5294373c3b1fe2ec2c66351e1","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        policy_type \u003d rand_name(\u0027PolicyType-\u0027)"},{"line_number":79,"context_line":"        resp, policy \u003d self.policy_client.create_policy(blob, policy_type)"},{"line_number":80,"context_line":"        self.addCleanup(self._delete_policy, policy[\u0027id\u0027])"},{"line_number":81,"context_line":"        self.assertTrue(\u0027id\u0027 in policy)"},{"line_number":82,"context_line":"        self.assertTrue(\u0027type\u0027 in policy)"},{"line_number":83,"context_line":"        self.assertTrue(\u0027blob\u0027 in policy)"},{"line_number":84,"context_line":"        self.assertFalse(policy[\u0027id\u0027] is None)"}],"source_content_type":"text/x-python","patch_set":13,"id":"AAAAOn%2F%2FqCI%3D","line":81,"in_reply_to":"AAAAOn%2F%2Ft%2Bs%3D","updated":"2013-04-30 11:36:36.000000000","message":"still waiting on an updated patch here","commit_id":"72254134e4b5912ba460132db8bd01a27d6e7f70"},{"author":{"_account_id":6455,"name":"Harika Vakadi","email":"harika_vakadi@persistent.co.in","username":"harika-vakadi"},"change_message_id":"1dcfb632b4dd7278cf09ea54c22902ab4a5b1bac","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        policy_type \u003d rand_name(\u0027PolicyType-\u0027)"},{"line_number":79,"context_line":"        resp, policy \u003d self.policy_client.create_policy(blob, policy_type)"},{"line_number":80,"context_line":"        self.addCleanup(self._delete_policy, policy[\u0027id\u0027])"},{"line_number":81,"context_line":"        self.assertTrue(\u0027id\u0027 in policy)"},{"line_number":82,"context_line":"        self.assertTrue(\u0027type\u0027 in policy)"},{"line_number":83,"context_line":"        self.assertTrue(\u0027blob\u0027 in policy)"},{"line_number":84,"context_line":"        self.assertFalse(policy[\u0027id\u0027] is None)"}],"source_content_type":"text/x-python","patch_set":13,"id":"AAAAOn%2F%2Ft%2Bs%3D","line":81,"in_reply_to":"AAAAOn%2F%2Ft%2FU%3D","updated":"2013-04-26 11:57:19.000000000","message":"Sure, Will make suggested changes in next patch submission","commit_id":"72254134e4b5912ba460132db8bd01a27d6e7f70"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"81b710008123a18bd0d69b9f53c95aca58524c15","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":31,"context_line":"    def test_create_get_delete_policy(self):"},{"line_number":32,"context_line":"        #Test to create policy"},{"line_number":33,"context_line":"        blob \u003d rand_name(\u0027BlobName-\u0027)"},{"line_number":34,"context_line":"        policy_type \u003d rand_name(\u0027PolicyType-\u0027)"},{"line_number":35,"context_line":"        resp, policy \u003d self.policy_client.create_policy(blob, policy_type)"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAOn%2F%2FXJQ%3D","line":32,"updated":"2013-05-13 16:26:54.000000000","message":"I believe you can delete this test method. test_create_update_delete_policy() below does everything this test method does.","commit_id":"ed9902c1edaf3b384485e0ff6eaf0f702beff995"},{"author":{"_account_id":6455,"name":"Harika Vakadi","email":"harika_vakadi@persistent.co.in","username":"harika-vakadi"},"change_message_id":"dada6e4ceecd8ad0edc7560f909b429ff5a2aac7","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":31,"context_line":"    def test_create_get_delete_policy(self):"},{"line_number":32,"context_line":"        #Test to create policy"},{"line_number":33,"context_line":"        blob \u003d rand_name(\u0027BlobName-\u0027)"},{"line_number":34,"context_line":"        policy_type \u003d rand_name(\u0027PolicyType-\u0027)"},{"line_number":35,"context_line":"        resp, policy \u003d self.policy_client.create_policy(blob, policy_type)"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAOn%2F%2FV0Q%3D","line":32,"in_reply_to":"AAAAOn%2F%2FXJQ%3D","updated":"2013-05-14 06:04:06.000000000","message":"Done","commit_id":"ed9902c1edaf3b384485e0ff6eaf0f702beff995"}]}
