)]}'
{"keystone_tempest_plugin/services/identity/v3/mapping_rules_client.py":[{"author":{"_account_id":19985,"name":"Ryosuke Mizuno","email":"r-mizuno@rs.jp.nec.com","username":"r-mizuno"},"change_message_id":"1bce3c4bff543dfe3ed54da347b70dc65fd582ed","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    subpath_suffix \u003d \u0027mappings\u0027"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    def create_mapping_rule(self, mapping_id, rules):"},{"line_number":27,"context_line":"        \"\"\"Create an mapping rule.\"\"\""},{"line_number":28,"context_line":"        put_body \u003d jsonutils.dumps({\u0027mapping\u0027: rules})"},{"line_number":29,"context_line":"        resp, body \u003d self._put(mapping_id, put_body)"},{"line_number":30,"context_line":"        self.expected_success(201, resp.status)"}],"source_content_type":"text/x-python","patch_set":10,"id":"9abb7d3a_44682cbb","line":27,"range":{"start_line":27,"start_character":18,"end_line":27,"end_character":20},"updated":"2016-05-27 08:52:44.000000000","message":"nit : a\nalso need to be modified docstring of the other line.","commit_id":"8bbce600413cd542d6c3ea06df14eef5291d2177"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"95fdcdc8bd489ae4885d669e1cf985e2453ee8f4","unresolved":false,"context_lines":[{"line_number":27,"context_line":"        \"\"\"Create a mapping rule.\"\"\""},{"line_number":28,"context_line":"        put_body \u003d jsonutils.dumps({\u0027mapping\u0027: rules})"},{"line_number":29,"context_line":"        resp, body \u003d self._put(mapping_id, put_body)"},{"line_number":30,"context_line":"        self.expected_success(201, resp.status)"},{"line_number":31,"context_line":"        body \u003d jsonutils.loads(body)"},{"line_number":32,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"7aa08908_a855cb1e","line":30,"updated":"2016-06-13 15:38:36.000000000","message":"Same comment here about using http_client for status codes.\n\n    from six.moves import http_client\n    ...\n    self.expected_status(http_client.OK, resp.status)\n\nWe can do this in a follow on patch and get all of these at once.","commit_id":"28f778827e73811190572c0e67200d66f4490a13"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"bf2a41bc4fa87b9227c8f0b87e0ce9aa14f14667","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        \"\"\"List the mapping rules.\"\"\""},{"line_number":36,"context_line":"        resp, body \u003d self._get()"},{"line_number":37,"context_line":"        self.expected_success(200, resp.status)"},{"line_number":38,"context_line":"        body \u003d jsonutils.loads(body)"},{"line_number":39,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def show_mapping_rule(self, mapping_id):"}],"source_content_type":"text/x-python","patch_set":12,"id":"7aa08908_d3d55ce5","line":38,"updated":"2016-06-13 21:17:35.000000000","message":"It seems like the base client should be doing all the JSON handling.","commit_id":"28f778827e73811190572c0e67200d66f4490a13"}],"keystone_tempest_plugin/tests/api/identity/v3/test_mapping_rules.py":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"bf2a41bc4fa87b9227c8f0b87e0ce9aa14f14667","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    _MAPPING_REF \u003d fixtures.mapping_ref()"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    def _assert_mapping_rules_attributes(self, mapping, mapping_id,"},{"line_number":29,"context_line":"                                         mapping_ref\u003dNone):"},{"line_number":30,"context_line":"        self.assertIn(\u0027id\u0027, mapping)"},{"line_number":31,"context_line":"        self.assertEqual(mapping_id, mapping[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":12,"id":"7aa08908_f31df8be","line":28,"updated":"2016-06-13 21:17:35.000000000","message":"nit/aside: I\u0027ve seen these methods made private elsewhere in our code, and that makes no sense to me -- why should this be a private method? If this were written as a native part of unittest, the test framework that we\u0027re extending here, then it would be named something like:\n\n  assertValidMappingRules","commit_id":"28f778827e73811190572c0e67200d66f4490a13"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"4195d2d58b9d859b574e414d261d45546c474470","unresolved":false,"context_lines":[{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    @test.attr(type\u003d[\u0027negative\u0027])"},{"line_number":52,"context_line":"    @decorators.idempotent_id(\u0027341dac45-ce1f-4f15-afdc-1f9a7d7d7c40\u0027)"},{"line_number":53,"context_line":"    def test_mapping_rules_create_without_mandatory_attributes(self):"},{"line_number":54,"context_line":"        mapping_id \u003d data_utils.rand_uuid_hex()"},{"line_number":55,"context_line":"        self.assertRaises("},{"line_number":56,"context_line":"            lib_exc.BadRequest,"}],"source_content_type":"text/x-python","patch_set":12,"id":"7aa08908_8beba9db","line":53,"updated":"2016-06-13 15:43:12.000000000","message":"For negative tests it would be nice to have the failure expressed in a test naming convention: \n\n    def test_mapping_rules_create_without_mandatory_attributes_fails(self):","commit_id":"28f778827e73811190572c0e67200d66f4490a13"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"bf2a41bc4fa87b9227c8f0b87e0ce9aa14f14667","unresolved":false,"context_lines":[{"line_number":94,"context_line":""},{"line_number":95,"context_line":"        mapping \u003d self.mappings_client.update_mapping_rule("},{"line_number":96,"context_line":"            mapping_id, mapping_ref)[\u0027mapping\u0027]"},{"line_number":97,"context_line":"        self._assert_mapping_rules_attributes("},{"line_number":98,"context_line":"            mapping, mapping_id, mapping_ref)"}],"source_content_type":"text/x-python","patch_set":12,"id":"7aa08908_b3037041","line":97,"updated":"2016-06-13 21:17:35.000000000","message":"This would be a stronger comparison if you were comparing the result of a subsequent get_mapping_table() call to the expected mapping_ref as well.","commit_id":"28f778827e73811190572c0e67200d66f4490a13"}]}
