)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"1e84d3934c15d3c06032a4f50d9348af6efdeb40","unresolved":false,"context_lines":[{"line_number":10,"context_line":"unittests to the v3 API framework"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Partially implements blueprint nova-v3-api"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ic5c14ef83e0ec16f36672377f1daa046044dce78"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAAQn%2F%2Fi84%3D","line":13,"updated":"2013-07-29 14:06:23.000000000","message":"The ALIAS is changed and the ALIAS was the prefix of attribute, so we need add DocImpact at here?","commit_id":"724815d9336d38970459d3e4e5f5e7396a732f20"}],"nova/tests/api/openstack/compute/plugins/v3/test_server_usage.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"1e84d3934c15d3c06032a4f50d9348af6efdeb40","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        self.flags("},{"line_number":66,"context_line":"            osapi_compute_extension\u003d["},{"line_number":67,"context_line":"                \u0027nova.api.openstack.compute.contrib.select_extensions\u0027],"},{"line_number":68,"context_line":"            osapi_compute_ext_list\u003d[\u0027Server_usage\u0027])"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def _make_request(self, url):"},{"line_number":71,"context_line":"        req \u003d fakes.HTTPRequest.blank(url)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2Fi%2BA%3D","line":68,"updated":"2013-07-29 14:06:23.000000000","message":"This is needless for v3 test","commit_id":"724815d9336d38970459d3e4e5f5e7396a732f20"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"b26715df2cddf734c0ad76b27b50a02c17156383","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        self.flags("},{"line_number":66,"context_line":"            osapi_compute_extension\u003d["},{"line_number":67,"context_line":"                \u0027nova.api.openstack.compute.contrib.select_extensions\u0027],"},{"line_number":68,"context_line":"            osapi_compute_ext_list\u003d[\u0027Server_usage\u0027])"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def _make_request(self, url):"},{"line_number":71,"context_line":"        req \u003d fakes.HTTPRequest.blank(url)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2FgwM%3D","line":68,"in_reply_to":"AAAAQn%2F%2Fi%2BA%3D","updated":"2013-07-30 01:06:19.000000000","message":"Done","commit_id":"724815d9336d38970459d3e4e5f5e7396a732f20"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"1e84d3934c15d3c06032a4f50d9348af6efdeb40","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        return jsonutils.loads(body).get(\u0027servers\u0027)"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def assertServerUsage(self, server, launched_at, terminated_at):"},{"line_number":84,"context_line":"        print server"},{"line_number":85,"context_line":"        resp_launched_at \u003d timeutils.parse_isotime("},{"line_number":86,"context_line":"            server.get(\u0027%slaunched_at\u0027 % self.prefix))"},{"line_number":87,"context_line":"        self.assertEqual(timeutils.normalize_time(resp_launched_at),"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2Fi90%3D","line":84,"updated":"2013-07-29 14:06:23.000000000","message":"Oops","commit_id":"724815d9336d38970459d3e4e5f5e7396a732f20"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"b26715df2cddf734c0ad76b27b50a02c17156383","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        return jsonutils.loads(body).get(\u0027servers\u0027)"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def assertServerUsage(self, server, launched_at, terminated_at):"},{"line_number":84,"context_line":"        print server"},{"line_number":85,"context_line":"        resp_launched_at \u003d timeutils.parse_isotime("},{"line_number":86,"context_line":"            server.get(\u0027%slaunched_at\u0027 % self.prefix))"},{"line_number":87,"context_line":"        self.assertEqual(timeutils.normalize_time(resp_launched_at),"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2FgwI%3D","line":84,"in_reply_to":"AAAAQn%2F%2Fi90%3D","updated":"2013-07-30 01:06:19.000000000","message":"Done","commit_id":"724815d9336d38970459d3e4e5f5e7396a732f20"}]}
