)]}'
{"api-ref/source/v3/samples/admin/get-role-inferences-response.json":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"49b5042cfb5da4dda489440338e34d312b8b06e7","unresolved":false,"context_lines":[{"line_number":16,"context_line":"        }"},{"line_number":17,"context_line":"    },"},{"line_number":18,"context_line":"    \"links\": {"},{"line_number":19,"context_line":"        \"self\": \"http://example.com/identity/v3/roles/7ceab6192ea34a548cc71b24f72e762c/implies/97e2f5d38bc94842bc3da818c16762ed\""},{"line_number":20,"context_line":"    }"},{"line_number":21,"context_line":"}"}],"source_content_type":"application/json","patch_set":1,"id":"3f044301_2e79732e","side":"PARENT","line":19,"updated":"2017-05-05 18:18:43.000000000","message":"I\u0027m looking through the docs to see where this is duplicated, but I\u0027m not finding. Where is the duplication happening?","commit_id":"da472c5f3b9c9d80f54284300a818acc2741c7e9"},{"author":{"_account_id":23081,"name":"Jeremy Zhang","email":"zhangjun_inspur@163.com","username":"jeremy.zhang"},"change_message_id":"bb2d91a249378c47651333a67f255f22310f2889","unresolved":false,"context_lines":[{"line_number":16,"context_line":"        }"},{"line_number":17,"context_line":"    },"},{"line_number":18,"context_line":"    \"links\": {"},{"line_number":19,"context_line":"        \"self\": \"http://example.com/identity/v3/roles/7ceab6192ea34a548cc71b24f72e762c/implies/97e2f5d38bc94842bc3da818c16762ed\""},{"line_number":20,"context_line":"    }"},{"line_number":21,"context_line":"}"}],"source_content_type":"application/json","patch_set":1,"id":"3f044301_cf92064c","side":"PARENT","line":19,"in_reply_to":"3f044301_2e79732e","updated":"2017-05-06 01:06:41.000000000","message":"Hi, Lance, thanks for reviewing.\nHere I mean the \u0027links\u0027 object that this patch removed is not found in the response body of get role inferences api.","commit_id":"da472c5f3b9c9d80f54284300a818acc2741c7e9"}],"keystone/assignment/controllers.py":[{"author":{"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},"change_message_id":"b6da0da97c0dd259d46946a2cea4f798459ca019","unresolved":false,"context_lines":[{"line_number":512,"context_line":"            request.context_dict, \u0027public\u0027)"},{"line_number":513,"context_line":"        response \u003d self._populate_implied_role_response("},{"line_number":514,"context_line":"            endpoint, prior_id, implied_id)"},{"line_number":515,"context_line":"        response[\"links\"] \u003d {"},{"line_number":516,"context_line":"            \"self\":"},{"line_number":517,"context_line":"                endpoint + \"/v3/roles/\" + prior_id + \"/implies/\" + implied_id"},{"line_number":518,"context_line":"        }"},{"line_number":519,"context_line":"        return response"},{"line_number":520,"context_line":""},{"line_number":521,"context_line":"    @controller.protected(callback\u003d_check_implies_role)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff0f0b1f_6a2bd181","line":518,"range":{"start_line":515,"start_character":8,"end_line":518,"end_character":9},"updated":"2017-05-19 15:09:45.000000000","message":"To be consistent with the rest of the methods, can you move this to the `_populate_implied_role_response` method which is right above.","commit_id":"4e115d49c31359993aa39c34848062ab0147e044"}],"keystone/tests/unit/test_v3_assignment.py":[{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"409ad5c5d178e1e068f2fb42351b21cc59dec617","unresolved":false,"context_lines":[{"line_number":2528,"context_line":"        self.assertEqual(expected_implied_id, implied_role[\u0027id\u0027])"},{"line_number":2529,"context_line":"        self.assertIsNotNone(implied_role[\u0027name\u0027])"},{"line_number":2530,"context_line":"        self.assertThat(implied_role[\u0027links\u0027][\u0027self\u0027], matchers.EndsWith("},{"line_number":2531,"context_line":"            \u0027/v3/roles/%s\u0027 % expected_implied_id))"},{"line_number":2532,"context_line":""},{"line_number":2533,"context_line":"    def _assert_two_roles_implied(self):"},{"line_number":2534,"context_line":"        self._assert_expected_implied_role_response("}],"source_content_type":"text/x-python","patch_set":5,"id":"df140735_7b042d15","line":2531,"updated":"2017-06-06 09:30:44.000000000","message":"this is fine, but this part of the tests is just checking on implied roles, there is a code below (starting on line 2541) that make assertions on the rules\n\nYou could simply copy \n\n    self.assertThat(response[\u0027links\u0027][\u0027self\u0027],\n                        matchers.EndsWith(\u0027/v3%s\u0027 % url))\n\ninto _assert_two_rules_defined and _assert_one_rule_defined and that should be all (those methods are already called somewhere else, so that will get tested without needing any further change as you needed in L2536-2539).","commit_id":"600c7247bc38c017c673b330a1d227331ca55f91"},{"author":{"_account_id":23081,"name":"Jeremy Zhang","email":"zhangjun_inspur@163.com","username":"jeremy.zhang"},"change_message_id":"84a60f66f1b68b3b96d1e76d6ecd30587b69ada0","unresolved":false,"context_lines":[{"line_number":2528,"context_line":"        self.assertEqual(expected_implied_id, implied_role[\u0027id\u0027])"},{"line_number":2529,"context_line":"        self.assertIsNotNone(implied_role[\u0027name\u0027])"},{"line_number":2530,"context_line":"        self.assertThat(implied_role[\u0027links\u0027][\u0027self\u0027], matchers.EndsWith("},{"line_number":2531,"context_line":"            \u0027/v3/roles/%s\u0027 % expected_implied_id))"},{"line_number":2532,"context_line":""},{"line_number":2533,"context_line":"    def _assert_two_roles_implied(self):"},{"line_number":2534,"context_line":"        self._assert_expected_implied_role_response("}],"source_content_type":"text/x-python","patch_set":5,"id":"df140735_f53de6ba","line":2531,"in_reply_to":"df140735_7b042d15","updated":"2017-06-06 12:44:52.000000000","message":"Hi, Samuel, thanks for your reviewing.\n\nSorry for not fully understanding what you mean.\n\nI think just copy \n     \"self.assertThat(response[\u0027links\u0027][\u0027self\u0027],\n                        matchers.EndsWith(\u0027/v3%s\u0027 % url))\"\ninto _assert_two_rules_defined and _assert_one_rule_defined, it maybe not enough to test the api response of getting role inference rule. Though some assertions are repeated with other api reponse (like get implied role), they\u0027re different apis. So I think it\u0027s better to keep this new created test.\n\nLooking forward your suggestion, :)","commit_id":"600c7247bc38c017c673b330a1d227331ca55f91"}]}
