)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"eb2a411593a4ac96cb30f01c3160c97d320e9b54","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"4a2fa63f_8d256302","updated":"2026-06-04 17:44:04.000000000","message":"I think this is overly complicated. We already have a test for token issue. We simply need to extend it to test token revoke. The way this has been done currently leaves us with two identical tests.","commit_id":"63f108c719659ae8b5865d2ab486a5cf8db05e16"}],"openstackclient/tests/functional/identity/v3/common.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"eb2a411593a4ac96cb30f01c3160c97d320e9b54","unresolved":true,"context_lines":[{"line_number":521,"context_line":"        self.assert_show_fields(items, self.LIMIT_FIELDS)"},{"line_number":522,"context_line":"        return limit_id"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"    def _create_dummy_token(self, add_clean_up\u003dTrue):"},{"line_number":525,"context_line":"        raw_output \u003d self.openstack(\u0027token issue\u0027)"},{"line_number":526,"context_line":"        token \u003d self.parse_show_as_object(raw_output)"},{"line_number":527,"context_line":"        if add_clean_up:"},{"line_number":528,"context_line":"            self.addCleanup("},{"line_number":529,"context_line":"                self.openstack, \u0027token revoke {}\u0027.format(token[\u0027id\u0027])"},{"line_number":530,"context_line":"            )"},{"line_number":531,"context_line":"        items \u003d self.parse_show(raw_output)"},{"line_number":532,"context_line":"        self.assert_show_fields(items, self.TOKEN_FIELDS)"},{"line_number":533,"context_line":"        return token[\u0027id\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"e5ac2be4_b725e28d","line":533,"range":{"start_line":524,"start_character":0,"end_line":533,"end_character":26},"updated":"2026-06-04 17:44:04.000000000","message":"I see why you did this, but given there is only a single caller here it would be better to inline this code there","commit_id":"63f108c719659ae8b5865d2ab486a5cf8db05e16"}],"openstackclient/tests/functional/identity/v3/test_token.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"eb2a411593a4ac96cb30f01c3160c97d320e9b54","unresolved":true,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"class TokenTests(common.IdentityTests):"},{"line_number":17,"context_line":"    def test_token_issue(self):"},{"line_number":18,"context_line":"        self._create_dummy_token()"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    def test_token_revoke(self):"},{"line_number":21,"context_line":"        token_id \u003d self._create_dummy_token(add_clean_up\u003dFalse)"},{"line_number":22,"context_line":"        raw_output \u003d self.openstack(f\u0027token revoke {token_id}\u0027)"},{"line_number":23,"context_line":"        self.assertEqual(0, len(raw_output))"}],"source_content_type":"text/x-python","patch_set":1,"id":"0c32d445_9b6a98f2","line":23,"range":{"start_line":18,"start_character":0,"end_line":23,"end_character":44},"updated":"2026-06-04 17:44:04.000000000","message":"```suggestion\n        raw_output \u003d self.openstack(\u0027token issue\u0027)\n        token \u003d self.parse_show_as_object(raw_output)\n        items \u003d self.parse_show(raw_output)\n        self.assert_show_fields(items, self.TOKEN_FIELDS)\n        raw_output \u003d self.openstack(f\u0027token revoke {token[\"id\"]}\u0027)\n        self.assertEqual(0, len(raw_output))\n```","commit_id":"63f108c719659ae8b5865d2ab486a5cf8db05e16"}]}
