)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"d7da41c7d5f90f34924885ab1c57d1fe387f5e00","unresolved":false,"context_lines":[{"line_number":7,"context_line":"add some negative tests for neutron"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"add one negative test for delete net, when the net id is not existent, delete network."},{"line_number":10,"context_line":"add two negative tests for subnet, the one is when the subnet\u0027s net id is not existent, delete subnet; the other one is when the subnet CIDR is invalid, create subnet."},{"line_number":11,"context_line":"add one negative test for delete port, when the port\u0027s net id is not existent, delete port."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Ibaf13e1c6c55b877213b2590e30acc7443cfbb0f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATn%2F%2FLTc%3D","line":10,"updated":"2013-11-13 10:37:06.000000000","message":"* The first line should be limited to 50 characters and should not end with a period.\n* Subsequent lines should be wrapped at 72 characters.","commit_id":"ff38a5153506fd4172272c493896e0082942e4f7"}],"tempest/api/network/test_networks.py":[{"author":{"_account_id":97,"name":"Daryl Walleck","email":"daryl.walleck@rackspace.com","username":"dwalleck"},"change_message_id":"a9d1dc8eed9a000d01ecfed0059659c924ca2b48","unresolved":false,"context_lines":[{"line_number":204,"context_line":""},{"line_number":205,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027smoke\u0027])"},{"line_number":206,"context_line":"    def test_delete_non_existent_net(self):"},{"line_number":207,"context_line":"        #added by netease(jimmy)"},{"line_number":208,"context_line":"        non_exist_id \u003d rand_name(\u0027network\u0027)"},{"line_number":209,"context_line":"        self.assertRaises(exceptions.NotFound, self.client.delete_network,"},{"line_number":210,"context_line":"                          non_exist_id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F%2FII0%3D","line":207,"updated":"2013-11-14 04:09:48.000000000","message":"I\u0027ve been out of the loop for awhile, but are these types of comments necessary? It seems like extra clutter in the code, which hurts readability","commit_id":"a49672a46e81ddd946253dadead1ad6fb1436516"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"54e1b056e100dc953a51c2be5e8fd18df81d7e59","unresolved":false,"context_lines":[{"line_number":203,"context_line":"                          non_exist_id)"},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027smoke\u0027])"},{"line_number":206,"context_line":"    def test_delete_non_existent_net(self):"},{"line_number":207,"context_line":"        non_exist_id \u003d rand_name(\u0027network\u0027)"},{"line_number":208,"context_line":"        self.assertRaises(exceptions.NotFound, self.client.delete_network,"},{"line_number":209,"context_line":"                          non_exist_id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2Bakw%3D","line":206,"updated":"2013-11-26 11:09:31.000000000","message":"The negative tests should be in file suffixed by \u0027_negative.py\u0027.","commit_id":"7368ef9f23e5f4698da6692bb04e5b335877673a"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"54e1b056e100dc953a51c2be5e8fd18df81d7e59","unresolved":false,"context_lines":[{"line_number":208,"context_line":"        self.assertRaises(exceptions.NotFound, self.client.delete_network,"},{"line_number":209,"context_line":"                          non_exist_id)"},{"line_number":210,"context_line":""},{"line_number":211,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027smoke\u0027])"},{"line_number":212,"context_line":"    def test_delete_non_existent_subnet(self):"},{"line_number":213,"context_line":"        non_exist_id \u003d rand_name(\u0027subnet\u0027)"},{"line_number":214,"context_line":"        self.assertRaises(exceptions.NotFound, self.client.delete_subnet,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2BakI%3D","line":211,"updated":"2013-11-26 11:09:31.000000000","message":"Do foo with \u0027non_existent\u0027 bar type of tests are going to be covered by a fuzzer,\nand this type of negative test is not planned to be  merged in the near future.\nhttp://www.mail-archive.com/openstack-dev@lists.openstack.org/msg08233.html","commit_id":"7368ef9f23e5f4698da6692bb04e5b335877673a"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"54e1b056e100dc953a51c2be5e8fd18df81d7e59","unresolved":false,"context_lines":[{"line_number":234,"context_line":"                          self.client.create_subnet,"},{"line_number":235,"context_line":"                          net_id, invalid_cidr)"},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"        #clean env"},{"line_number":238,"context_line":"        resp, body \u003d self.client.delete_network(net_id)"},{"line_number":239,"context_line":"        self.assertEqual(\u0027204\u0027, resp[\u0027status\u0027])"},{"line_number":240,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2BalA%3D","line":237,"updated":"2013-11-26 11:09:31.000000000","message":"space after # is required.","commit_id":"7368ef9f23e5f4698da6692bb04e5b335877673a"}]}
