)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"74bf3b4d52bee4182dec8b710374f68482788b03","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Use 204 instead of 202 for delete of keypairs v3"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The delete of keypairs will access db directly. It isn\u0027t sync call."},{"line_number":10,"context_line":"So correct it to return 204."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-bug: 1252169"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"AAAATn%2F%2By%2Bo%3D","line":9,"updated":"2013-11-20 03:02:22.000000000","message":"I think you mean \"It isn\u0027t an async call\"","commit_id":"c93d5beaffd4704987a0c7c25523b3309046e4b5"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"b287f4de50e145d267adabcc1b4873c415cd8e39","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Use 204 instead of 202 for delete of keypairs v3"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The delete of keypairs will access db directly. It isn\u0027t sync call."},{"line_number":10,"context_line":"So correct it to return 204."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-bug: 1252169"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"AAAATn%2F%2BhSM%3D","line":9,"in_reply_to":"AAAATn%2F%2By%2Bo%3D","updated":"2013-11-25 07:36:32.000000000","message":"Done, thanks","commit_id":"c93d5beaffd4704987a0c7c25523b3309046e4b5"}],"nova/tests/api/openstack/compute/plugins/v3/test_keypairs.py":[{"author":{"_account_id":7040,"name":"GuoHui LIu","email":"liuguohui@gmail.com","username":"guohliu"},"change_message_id":"61fb9b92330b27ad9ea576cd3fb74bd5a0642624","unresolved":false,"context_lines":[{"line_number":451,"context_line":"        policy.set_rules(rules)"},{"line_number":452,"context_line":"        req \u003d fakes.HTTPRequest.blank(\u0027/v3/keypairs/FAKE\u0027)"},{"line_number":453,"context_line":"        req.method \u003d \u0027DELETE\u0027"},{"line_number":454,"context_line":"        self.KeyPairController.delete(req, \u0027FAKE\u0027)"},{"line_number":455,"context_line":""},{"line_number":456,"context_line":""},{"line_number":457,"context_line":"class KeypairsXMLSerializerTest(test.TestCase):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B84Q%3D","line":454,"updated":"2013-11-18 07:43:40.000000000","message":"why remove the assert here, we really can\u0027t assert anything here to make it looks better?","commit_id":"b6b844f7c5352bc26a8263e6b8064c1eaa5e75f8"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"a5a1e34759e7a7655b6115ac6d39a1344c38f5b6","unresolved":false,"context_lines":[{"line_number":451,"context_line":"        policy.set_rules(rules)"},{"line_number":452,"context_line":"        req \u003d fakes.HTTPRequest.blank(\u0027/v3/keypairs/FAKE\u0027)"},{"line_number":453,"context_line":"        req.method \u003d \u0027DELETE\u0027"},{"line_number":454,"context_line":"        self.KeyPairController.delete(req, \u0027FAKE\u0027)"},{"line_number":455,"context_line":""},{"line_number":456,"context_line":""},{"line_number":457,"context_line":"class KeypairsXMLSerializerTest(test.TestCase):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B4OU%3D","line":454,"in_reply_to":"AAAATn%2F%2B568%3D","updated":"2013-11-19 02:12:12.000000000","message":"You mean assert the None? I can update it.","commit_id":"b6b844f7c5352bc26a8263e6b8064c1eaa5e75f8"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"6cd0d331348019489b2eda413c19cfcb5d40d2c8","unresolved":false,"context_lines":[{"line_number":451,"context_line":"        policy.set_rules(rules)"},{"line_number":452,"context_line":"        req \u003d fakes.HTTPRequest.blank(\u0027/v3/keypairs/FAKE\u0027)"},{"line_number":453,"context_line":"        req.method \u003d \u0027DELETE\u0027"},{"line_number":454,"context_line":"        self.KeyPairController.delete(req, \u0027FAKE\u0027)"},{"line_number":455,"context_line":""},{"line_number":456,"context_line":""},{"line_number":457,"context_line":"class KeypairsXMLSerializerTest(test.TestCase):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B8x4%3D","line":454,"in_reply_to":"AAAATn%2F%2B84Q%3D","updated":"2013-11-18 08:15:51.000000000","message":"Because I use decorator wsgi.response instead of Response object. So it returns nothing. This test want to test policy. If it can\u0027t pass, it will raise Exception, then this test will failed. Does make sense?","commit_id":"b6b844f7c5352bc26a8263e6b8064c1eaa5e75f8"},{"author":{"_account_id":8430,"name":"Christopher Lefelhocz","email":"christopher.lefelhoc@rackspace.com","username":"leif"},"change_message_id":"ec60a6a472c6fafb22673fd61e7da47491f9b2a9","unresolved":false,"context_lines":[{"line_number":451,"context_line":"        policy.set_rules(rules)"},{"line_number":452,"context_line":"        req \u003d fakes.HTTPRequest.blank(\u0027/v3/keypairs/FAKE\u0027)"},{"line_number":453,"context_line":"        req.method \u003d \u0027DELETE\u0027"},{"line_number":454,"context_line":"        self.KeyPairController.delete(req, \u0027FAKE\u0027)"},{"line_number":455,"context_line":""},{"line_number":456,"context_line":""},{"line_number":457,"context_line":"class KeypairsXMLSerializerTest(test.TestCase):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B568%3D","line":454,"in_reply_to":"AAAATn%2F%2B8x4%3D","updated":"2013-11-18 18:38:25.000000000","message":"We should still check the response via getting the request.  It still exists right?","commit_id":"b6b844f7c5352bc26a8263e6b8064c1eaa5e75f8"}]}
