)]}'
{"tempest/api/network/admin/test_agent_management.py":[{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"86bfb82af9f984225eb09e72cd5657b9f17c6055","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        agent_status \u003d {\u0027admin_state_up\u0027: status}"},{"line_number":50,"context_line":"        resp, body \u003d self.client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":51,"context_line":"                                              agent_info\u003dagent_status)"},{"line_number":52,"context_line":"        updated_status \u003d body[\u0027agent\u0027][\u0027admin_state_up\u0027]"},{"line_number":53,"context_line":"        self.assertEqual(\u0027200\u0027, resp[\u0027status\u0027])"},{"line_number":54,"context_line":"        self.assertNotEqual(origin_status, updated_status)"},{"line_number":55,"context_line":"        self.addCleanup(self._restore_agent)"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAATH%2F%2FbCk%3D","line":52,"updated":"2013-10-16 12:17:25.000000000","message":"I have concerns with changing the admin_state_up.\n\nI guess it can have negative effect to a parallel run.","commit_id":"bf7f77e1762400efea6d24f07109e8b471f0c7d7"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"7182ce1fabfc1357ae93609e44bd9988ce64a9f5","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        agent_status \u003d {\u0027admin_state_up\u0027: status}"},{"line_number":50,"context_line":"        resp, body \u003d self.client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":51,"context_line":"                                              agent_info\u003dagent_status)"},{"line_number":52,"context_line":"        updated_status \u003d body[\u0027agent\u0027][\u0027admin_state_up\u0027]"},{"line_number":53,"context_line":"        self.assertEqual(\u0027200\u0027, resp[\u0027status\u0027])"},{"line_number":54,"context_line":"        self.assertNotEqual(origin_status, updated_status)"},{"line_number":55,"context_line":"        self.addCleanup(self._restore_agent)"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAATH%2F%2FXLI%3D","line":52,"in_reply_to":"AAAATH%2F%2FbCk%3D","updated":"2013-10-17 07:53:57.000000000","message":"To avoid the negative effect, I update the adin_ state_up to the original one.","commit_id":"bf7f77e1762400efea6d24f07109e8b471f0c7d7"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"86bfb82af9f984225eb09e72cd5657b9f17c6055","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        self.addCleanup(self._restore_agent)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":70,"context_line":"    def test_delete_agent(self):"},{"line_number":71,"context_line":"        msg \u003d (\"Delete agent may have bad influence on the environment,\""},{"line_number":72,"context_line":"               \" skip it.\")"},{"line_number":73,"context_line":"        raise self.skipException(msg)"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAATH%2F%2FbBw%3D","line":70,"updated":"2013-10-16 12:17:25.000000000","message":"I do not think we need a test_ method just with skip exception.\n\nMay be it should be in the module\u0027s  doc string or it can be a comment.","commit_id":"bf7f77e1762400efea6d24f07109e8b471f0c7d7"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"7182ce1fabfc1357ae93609e44bd9988ce64a9f5","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        self.addCleanup(self._restore_agent)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":70,"context_line":"    def test_delete_agent(self):"},{"line_number":71,"context_line":"        msg \u003d (\"Delete agent may have bad influence on the environment,\""},{"line_number":72,"context_line":"               \" skip it.\")"},{"line_number":73,"context_line":"        raise self.skipException(msg)"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAATH%2F%2FXLE%3D","line":70,"in_reply_to":"AAAATH%2F%2FbBw%3D","updated":"2013-10-17 07:53:57.000000000","message":"Done","commit_id":"bf7f77e1762400efea6d24f07109e8b471f0c7d7"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"517a90bb5f70a66b685d0c665048e93eb7a31797","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        self.addCleanup(self._restore_agent)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":70,"context_line":"    def test_delete_agent(self):"},{"line_number":71,"context_line":"        \"\"\""},{"line_number":72,"context_line":"        Delete agent may have negative effect on the environment,"},{"line_number":73,"context_line":"        skip it."}],"source_content_type":"text/x-python","patch_set":12,"id":"AAAATX%2F%2F%2FUE%3D","line":70,"updated":"2013-10-23 08:16:40.000000000","message":"please delete this testcase due to it does nothng.","commit_id":"70c468b6229aa5689382d615b9de82ea367747ef"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"eba70bcc9daa3914c6b124cb085b170299d59f9e","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        self.addCleanup(self._restore_agent)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":70,"context_line":"    def test_delete_agent(self):"},{"line_number":71,"context_line":"        \"\"\""},{"line_number":72,"context_line":"        Delete agent may have negative effect on the environment,"},{"line_number":73,"context_line":"        skip it."}],"source_content_type":"text/x-python","patch_set":12,"id":"AAAATn%2F%2F%2F2I%3D","line":70,"in_reply_to":"AAAATX%2F%2F%2FUE%3D","updated":"2013-10-24 03:05:47.000000000","message":"Done","commit_id":"70c468b6229aa5689382d615b9de82ea367747ef"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"0ecc598955cb37b3ae10deb1f8aa9c2606edf6de","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":46,"context_line":"    def test_update_agent_status(self):"},{"line_number":47,"context_line":"        origin_status \u003d self.agent[\u0027admin_state_up\u0027]"},{"line_number":48,"context_line":"        #Try to update the \u0027admin_state_up\u0027 to the original"},{"line_number":49,"context_line":"        #one to avoid the negative effect."},{"line_number":50,"context_line":"        agent_status \u003d {\u0027admin_state_up\u0027: origin_status}"},{"line_number":51,"context_line":"        resp, body \u003d self.admin_client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAATn%2F%2FVic%3D","line":48,"updated":"2013-11-09 11:53:14.000000000","message":"Please use a space after #.","commit_id":"3bdfed5111042f25b015d81f9c3a3326bf3be08a"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"3963148dc09ebe37c49ba9a502f0ac82f3447231","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":46,"context_line":"    def test_update_agent_status(self):"},{"line_number":47,"context_line":"        origin_status \u003d self.agent[\u0027admin_state_up\u0027]"},{"line_number":48,"context_line":"        # Try to update the \u0027admin_state_up\u0027 to the original"},{"line_number":49,"context_line":"        # one to avoid the negative effect."},{"line_number":50,"context_line":"        agent_status \u003d {\u0027admin_state_up\u0027: origin_status}"},{"line_number":51,"context_line":"        resp, body \u003d self.admin_client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAATn%2F%2FEXI%3D","line":48,"updated":"2013-11-14 21:21:58.000000000","message":"This test is not very useful since if the update did nothing the test would still pass. The issue of tempests test that side-effect the underlying system has come up before but no good answer yet. For now it should be removed.","commit_id":"15369aa4fed2dda21aaf6d19b50d9293a447ef2c"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"43dbbf3cb7c75e40edc0d3ff44dbceeed836cffa","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":46,"context_line":"    def test_update_agent_status(self):"},{"line_number":47,"context_line":"        origin_status \u003d self.agent[\u0027admin_state_up\u0027]"},{"line_number":48,"context_line":"        # Try to update the \u0027admin_state_up\u0027 to the original"},{"line_number":49,"context_line":"        # one to avoid the negative effect."},{"line_number":50,"context_line":"        agent_status \u003d {\u0027admin_state_up\u0027: origin_status}"},{"line_number":51,"context_line":"        resp, body \u003d self.admin_client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAATn%2F%2B3SM%3D","line":48,"in_reply_to":"AAAATn%2F%2FEXI%3D","updated":"2013-11-19 08:04:36.000000000","message":"This test is designed to cover the API list and it really did things, though it have no effect, but return code, is 200 to explain it works, so is this type of api does not need to cover?","commit_id":"15369aa4fed2dda21aaf6d19b50d9293a447ef2c"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"3963148dc09ebe37c49ba9a502f0ac82f3447231","unresolved":false,"context_lines":[{"line_number":57,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":58,"context_line":"    def test_update_agent_description(self):"},{"line_number":59,"context_line":"        description \u003d \u0027description for update agent.\u0027"},{"line_number":60,"context_line":"        agent_description \u003d {\u0027description\u0027: description}"},{"line_number":61,"context_line":"        resp, body \u003d self.admin_client.update_agent("},{"line_number":62,"context_line":"            agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":63,"context_line":"            agent_info\u003dagent_description)"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAATn%2F%2FEW0%3D","line":60,"updated":"2013-11-14 21:21:58.000000000","message":"I would say the same thing about this test as the other one. It may seem harmless to change the description but who knows what else might be looking at that?","commit_id":"15369aa4fed2dda21aaf6d19b50d9293a447ef2c"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"43dbbf3cb7c75e40edc0d3ff44dbceeed836cffa","unresolved":false,"context_lines":[{"line_number":57,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":58,"context_line":"    def test_update_agent_description(self):"},{"line_number":59,"context_line":"        description \u003d \u0027description for update agent.\u0027"},{"line_number":60,"context_line":"        agent_description \u003d {\u0027description\u0027: description}"},{"line_number":61,"context_line":"        resp, body \u003d self.admin_client.update_agent("},{"line_number":62,"context_line":"            agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":63,"context_line":"            agent_info\u003dagent_description)"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAATn%2F%2B3SI%3D","line":60,"in_reply_to":"AAAATn%2F%2FEW0%3D","updated":"2013-11-19 08:04:36.000000000","message":"Ditto with above.","commit_id":"15369aa4fed2dda21aaf6d19b50d9293a447ef2c"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"3963148dc09ebe37c49ba9a502f0ac82f3447231","unresolved":false,"context_lines":[{"line_number":64,"context_line":"        self.assertEqual(\u0027200\u0027, resp[\u0027status\u0027])"},{"line_number":65,"context_line":"        updated_description \u003d body[\u0027agent\u0027][\u0027description\u0027]"},{"line_number":66,"context_line":"        self.assertEqual(updated_description, description)"},{"line_number":67,"context_line":"        self.addCleanup(self._restore_agent)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    def _restore_agent(self):"},{"line_number":70,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAATn%2F%2FEXA%3D","line":67,"updated":"2013-11-14 21:21:58.000000000","message":"This needs to come before the assert above it.","commit_id":"15369aa4fed2dda21aaf6d19b50d9293a447ef2c"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"43dbbf3cb7c75e40edc0d3ff44dbceeed836cffa","unresolved":false,"context_lines":[{"line_number":64,"context_line":"        self.assertEqual(\u0027200\u0027, resp[\u0027status\u0027])"},{"line_number":65,"context_line":"        updated_description \u003d body[\u0027agent\u0027][\u0027description\u0027]"},{"line_number":66,"context_line":"        self.assertEqual(updated_description, description)"},{"line_number":67,"context_line":"        self.addCleanup(self._restore_agent)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    def _restore_agent(self):"},{"line_number":70,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAATn%2F%2B3SA%3D","line":67,"in_reply_to":"AAAATn%2F%2FEXA%3D","updated":"2013-11-19 08:04:36.000000000","message":"Agreed","commit_id":"15369aa4fed2dda21aaf6d19b50d9293a447ef2c"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"101a66322148e0c119ee6887d2933ecea4a65d63","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    @classmethod"},{"line_number":25,"context_line":"    def setUpClass(cls):"},{"line_number":26,"context_line":"        super(AgentManagementTestJSON, cls).setUpClass()"},{"line_number":27,"context_line":"        body \u003d cls.admin_client.list_agents()[1]"},{"line_number":28,"context_line":"        agents \u003d body[\u0027agents\u0027]"},{"line_number":29,"context_line":"        cls.agent \u003d agents[0]"},{"line_number":30,"context_line":""}],"source_content_type":"text/x-python","patch_set":19,"id":"AAAATn%2F%2Bh3I%3D","line":27,"updated":"2013-11-25 03:15:42.000000000","message":"Here seems a little difficult.\nHow about changing to the following like the other callers?\n\n resp, body \u003d self.admin_client.list_agents()","commit_id":"98e984a063e5024631ffa09dd7556c299f222a58"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"ebbbda61d4778422485ec83b3bae878bf2411abf","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    @classmethod"},{"line_number":25,"context_line":"    def setUpClass(cls):"},{"line_number":26,"context_line":"        super(AgentManagementTestJSON, cls).setUpClass()"},{"line_number":27,"context_line":"        body \u003d cls.admin_client.list_agents()[1]"},{"line_number":28,"context_line":"        agents \u003d body[\u0027agents\u0027]"},{"line_number":29,"context_line":"        cls.agent \u003d agents[0]"},{"line_number":30,"context_line":""}],"source_content_type":"text/x-python","patch_set":19,"id":"AAAATn%2F%2BhxA%3D","line":27,"in_reply_to":"AAAATn%2F%2Bh3I%3D","updated":"2013-11-25 03:58:56.000000000","message":"Done, keep it same with others.","commit_id":"98e984a063e5024631ffa09dd7556c299f222a58"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"101a66322148e0c119ee6887d2933ecea4a65d63","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    def test_update_agent_status(self):"},{"line_number":47,"context_line":"        origin_status \u003d self.agent[\u0027admin_state_up\u0027]"},{"line_number":48,"context_line":"        # Try to update the \u0027admin_state_up\u0027 to the original"},{"line_number":49,"context_line":"        # one to avoid the negative effect."},{"line_number":50,"context_line":"        agent_status \u003d {\u0027admin_state_up\u0027: origin_status}"},{"line_number":51,"context_line":"        resp, body \u003d self.admin_client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":52,"context_line":"                                                    agent_info\u003dagent_status)"}],"source_content_type":"text/x-python","patch_set":19,"id":"AAAATn%2F%2Bh2I%3D","line":49,"updated":"2013-11-25 03:15:42.000000000","message":"I am not sure this test is worth, because we cannot detect a problem update_agent() does not work with this test.","commit_id":"98e984a063e5024631ffa09dd7556c299f222a58"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"ebbbda61d4778422485ec83b3bae878bf2411abf","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    def test_update_agent_status(self):"},{"line_number":47,"context_line":"        origin_status \u003d self.agent[\u0027admin_state_up\u0027]"},{"line_number":48,"context_line":"        # Try to update the \u0027admin_state_up\u0027 to the original"},{"line_number":49,"context_line":"        # one to avoid the negative effect."},{"line_number":50,"context_line":"        agent_status \u003d {\u0027admin_state_up\u0027: origin_status}"},{"line_number":51,"context_line":"        resp, body \u003d self.admin_client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":52,"context_line":"                                                    agent_info\u003dagent_status)"}],"source_content_type":"text/x-python","patch_set":19,"id":"AAAATn%2F%2BhxE%3D","line":49,"in_reply_to":"AAAATn%2F%2Bh2I%3D","updated":"2013-11-25 03:58:56.000000000","message":"if it dose not work. the self.assertEqual(\u0027200\u0027, resp[\u0027status\u0027]) will be fail IMO, so suggest to keep it here.","commit_id":"98e984a063e5024631ffa09dd7556c299f222a58"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"c98f7aacbc4cea065ca8f061a24c2b8178986f3e","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    def test_update_agent_status(self):"},{"line_number":47,"context_line":"        origin_status \u003d self.agent[\u0027admin_state_up\u0027]"},{"line_number":48,"context_line":"        # Try to update the \u0027admin_state_up\u0027 to the original"},{"line_number":49,"context_line":"        # one to avoid the negative effect."},{"line_number":50,"context_line":"        agent_status \u003d {\u0027admin_state_up\u0027: origin_status}"},{"line_number":51,"context_line":"        resp, body \u003d self.admin_client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":52,"context_line":"                                                    agent_info\u003dagent_status)"}],"source_content_type":"text/x-python","patch_set":19,"id":"AAAATn%2F%2BhuI%3D","line":49,"in_reply_to":"AAAATn%2F%2BhvY%3D","updated":"2013-11-25 04:14:46.000000000","message":"ok, need to wait other reviews. thx.","commit_id":"98e984a063e5024631ffa09dd7556c299f222a58"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"b8f10fad727e676fbaca3665399bd0396f8ba2a8","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    def test_update_agent_status(self):"},{"line_number":47,"context_line":"        origin_status \u003d self.agent[\u0027admin_state_up\u0027]"},{"line_number":48,"context_line":"        # Try to update the \u0027admin_state_up\u0027 to the original"},{"line_number":49,"context_line":"        # one to avoid the negative effect."},{"line_number":50,"context_line":"        agent_status \u003d {\u0027admin_state_up\u0027: origin_status}"},{"line_number":51,"context_line":"        resp, body \u003d self.admin_client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":52,"context_line":"                                                    agent_info\u003dagent_status)"}],"source_content_type":"text/x-python","patch_set":19,"id":"AAAATn%2F%2BhvY%3D","line":49,"in_reply_to":"AAAATn%2F%2BhxE%3D","updated":"2013-11-25 04:07:21.000000000","message":"That means this test checks only a response code, does not check the function. then, I am not sure that this test is good or not.\n\nIn addition, test_update_agent_description() tests the same API. so it is not different even if removing this test from the viewpoint of API coverage. please wait for the other reviews.","commit_id":"98e984a063e5024631ffa09dd7556c299f222a58"},{"author":{"_account_id":8861,"name":"Joris Roovers","email":"jroovers@cisco.com","username":"joris.roovers"},"change_message_id":"789c070cae3f3f2fa67ac1e59eb6f9daf370b475","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        self.admin_client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":76,"context_line":"                                       agent_info\u003dorigin_agent)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"class AgentManagementTestXML(AgentManagementTestJSON):"},{"line_number":80,"context_line":"    _interface \u003d \u0027xml\u0027"}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAATn%2F%2BCDI%3D","line":78,"updated":"2013-12-03 08:57:37.000000000","message":"Any particular reason not to test agent_delete?","commit_id":"18e8850858121923e0d65a969f0ca77e48bf3b67"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"fda4969cfd0449eba380d2e7964983dfdf0f81ee","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        self.admin_client.update_agent(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":76,"context_line":"                                       agent_info\u003dorigin_agent)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"class AgentManagementTestXML(AgentManagementTestJSON):"},{"line_number":80,"context_line":"    _interface \u003d \u0027xml\u0027"}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAATn%2F%2BA4U%3D","line":78,"in_reply_to":"AAAATn%2F%2BCDI%3D","updated":"2013-12-03 13:47:35.000000000","message":"Please refer to the patch 11, if we delete an agent, it may have bad influence on the environment.","commit_id":"18e8850858121923e0d65a969f0ca77e48bf3b67"}],"tempest/api/network/base.py":[{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"607d458642e27711fc884379c8cac5122fdf769a","unresolved":false,"context_lines":[{"line_number":167,"context_line":""},{"line_number":168,"context_line":"    @classmethod"},{"line_number":169,"context_line":"    def setUpClass(cls):"},{"line_number":170,"context_line":"        super(BaseAdminNetworkTest, cls).setUpClass()"},{"line_number":171,"context_line":"        admin_username \u003d cls.config.compute_admin.username"},{"line_number":172,"context_line":"        admin_password \u003d cls.config.compute_admin.password"},{"line_number":173,"context_line":"        admin_tenant \u003d cls.config.compute_admin.tenant_name"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2FwX0%3D","line":170,"updated":"2013-10-10 09:37:46.000000000","message":"in https://review.openstack.org/#/c/47554/4 the admin client has been added directly to BaseNetworkTest as some API tests need the same operation to be performed with and without admin credentials. I suggest going into that direction instead of creating another class.\nThe checks for presence of admin username and password make sense if it\u0027s agreed it\u0027s ok to skip rather than fail in this cases; if merged in a single class, this check should be performed possibly with a decorator on the method requiring admin credentials.\n\nAlso - in cases where you have the same bit of code used in two patches under review, I think it might be worth isolating that piece of code into its own patch for simplifying your (and reviewers\u0027) task.","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"0479ea5c80d3caea5fc43eb9e598abe458d588b9","unresolved":false,"context_lines":[{"line_number":167,"context_line":""},{"line_number":168,"context_line":"    @classmethod"},{"line_number":169,"context_line":"    def setUpClass(cls):"},{"line_number":170,"context_line":"        super(BaseAdminNetworkTest, cls).setUpClass()"},{"line_number":171,"context_line":"        admin_username \u003d cls.config.compute_admin.username"},{"line_number":172,"context_line":"        admin_password \u003d cls.config.compute_admin.password"},{"line_number":173,"context_line":"        admin_tenant \u003d cls.config.compute_admin.tenant_name"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fr5k%3D","line":170,"in_reply_to":"AAAATH%2F%2FwX0%3D","updated":"2013-10-11 07:58:06.000000000","message":"See the comments https://review.openstack.org/#/c/50542/","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"}],"tempest/api/network/test_agent_management.py":[{"author":{"_account_id":7930,"name":"jun xie","email":"easonxie160@163.com","username":"jeffreycoho"},"change_message_id":"d62bd99247feafcbaa4daba2ac4e43267738ead6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#    not use this file except in compliance with the License. You may obtain"},{"line_number":5,"context_line":"#    a copy of the License at"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAS3%2F%2Fc2A%3D","line":2,"updated":"2013-09-26 14:21:20.000000000","message":"please add the copyright","commit_id":"d387f5c23517ab2d6525c45a38b4d6d493fd7392"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"f8541ecedad233ef3a98dffe6902b8f741508779","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#    not use this file except in compliance with the License. You may obtain"},{"line_number":5,"context_line":"#    a copy of the License at"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAS3%2F%2Fay8%3D","line":2,"in_reply_to":"AAAAS3%2F%2Fc2A%3D","updated":"2013-09-27 03:53:57.000000000","message":"Done","commit_id":"d387f5c23517ab2d6525c45a38b4d6d493fd7392"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"607d458642e27711fc884379c8cac5122fdf769a","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        agents \u003d body[\u0027agents\u0027]"},{"line_number":41,"context_line":"        cls.agent \u003d agents[0]"},{"line_number":42,"context_line":"        if len(agents) \u003e 1:"},{"line_number":43,"context_line":"            cls.be_deleted_agent \u003d agents[1]"},{"line_number":44,"context_line":"        else:"},{"line_number":45,"context_line":"            cls.be_deleted_agent \u003d None"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2FwXs%3D","line":43,"updated":"2013-10-10 09:37:46.000000000","message":"are you deliberately deciding to delete an agent if you find more than one?","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"0479ea5c80d3caea5fc43eb9e598abe458d588b9","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        agents \u003d body[\u0027agents\u0027]"},{"line_number":41,"context_line":"        cls.agent \u003d agents[0]"},{"line_number":42,"context_line":"        if len(agents) \u003e 1:"},{"line_number":43,"context_line":"            cls.be_deleted_agent \u003d agents[1]"},{"line_number":44,"context_line":"        else:"},{"line_number":45,"context_line":"            cls.be_deleted_agent \u003d None"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fr6I%3D","line":43,"in_reply_to":"AAAATH%2F%2FwXs%3D","updated":"2013-10-11 07:58:06.000000000","message":"It indeed will destroy the environment and can not restore, so i skip this test, do you have better solution of this issue.","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"607d458642e27711fc884379c8cac5122fdf769a","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        resp, body \u003d self.client.list_agents()"},{"line_number":50,"context_line":"        self.assertEqual(\u0027200\u0027, resp[\u0027status\u0027])"},{"line_number":51,"context_line":"        agents \u003d body[\u0027agents\u0027]"},{"line_number":52,"context_line":"        self.assertTrue(len(agents) \u003e 0)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":55,"context_line":"    def test_show_agent(self):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2FwXk%3D","line":52,"updated":"2013-10-10 09:37:46.000000000","message":"should you also test the expected agents are found?","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"0479ea5c80d3caea5fc43eb9e598abe458d588b9","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        resp, body \u003d self.client.list_agents()"},{"line_number":50,"context_line":"        self.assertEqual(\u0027200\u0027, resp[\u0027status\u0027])"},{"line_number":51,"context_line":"        agents \u003d body[\u0027agents\u0027]"},{"line_number":52,"context_line":"        self.assertTrue(len(agents) \u003e 0)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":55,"context_line":"    def test_show_agent(self):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fr6E%3D","line":52,"in_reply_to":"AAAATH%2F%2FwXk%3D","updated":"2013-10-11 07:58:06.000000000","message":"Done","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"607d458642e27711fc884379c8cac5122fdf769a","unresolved":false,"context_lines":[{"line_number":63,"context_line":"        origin_status \u003d bool(self.agent[\u0027admin_state_up\u0027])"},{"line_number":64,"context_line":"        status \u003d not origin_status"},{"line_number":65,"context_line":"        resp, body \u003d self.client.update_agent_status(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":66,"context_line":"                                                     status\u003dstatus)"},{"line_number":67,"context_line":"        updated_status \u003d body[\u0027agent\u0027][\u0027admin_state_up\u0027]"},{"line_number":68,"context_line":"        self.assertEqual(\u0027200\u0027, resp[\u0027status\u0027])"},{"line_number":69,"context_line":"        self.assertNotEqual(origin_status, updated_status)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2FwXE%3D","line":66,"updated":"2013-10-10 09:37:46.000000000","message":"nit: when the text is right-justified as in the statement above, consider going newline with the first argument","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"0479ea5c80d3caea5fc43eb9e598abe458d588b9","unresolved":false,"context_lines":[{"line_number":63,"context_line":"        origin_status \u003d bool(self.agent[\u0027admin_state_up\u0027])"},{"line_number":64,"context_line":"        status \u003d not origin_status"},{"line_number":65,"context_line":"        resp, body \u003d self.client.update_agent_status(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":66,"context_line":"                                                     status\u003dstatus)"},{"line_number":67,"context_line":"        updated_status \u003d body[\u0027agent\u0027][\u0027admin_state_up\u0027]"},{"line_number":68,"context_line":"        self.assertEqual(\u0027200\u0027, resp[\u0027status\u0027])"},{"line_number":69,"context_line":"        self.assertNotEqual(origin_status, updated_status)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fr54%3D","line":66,"in_reply_to":"AAAATH%2F%2FwXE%3D","updated":"2013-10-11 07:58:06.000000000","message":"Done","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"607d458642e27711fc884379c8cac5122fdf769a","unresolved":false,"context_lines":[{"line_number":101,"context_line":"        self.client.update_agent_status(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":102,"context_line":"                                        status\u003dstatus)"},{"line_number":103,"context_line":"        self.client.update_agent_description(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":104,"context_line":"                                             description\u003ddescription)"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"class AgentManagementTestXML(AgentManagementTestJSON):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2FwWs%3D","line":104,"updated":"2013-10-10 09:37:46.000000000","message":"can you change the client in a way that you won\u0027t need two calls for updating status and description?","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"0479ea5c80d3caea5fc43eb9e598abe458d588b9","unresolved":false,"context_lines":[{"line_number":101,"context_line":"        self.client.update_agent_status(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":102,"context_line":"                                        status\u003dstatus)"},{"line_number":103,"context_line":"        self.client.update_agent_description(agent_id\u003dself.agent[\u0027id\u0027],"},{"line_number":104,"context_line":"                                             description\u003ddescription)"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"class AgentManagementTestXML(AgentManagementTestJSON):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fr50%3D","line":104,"in_reply_to":"AAAATH%2F%2FwWs%3D","updated":"2013-10-11 07:58:06.000000000","message":"Thanks for the comments, I have changed it.","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"}],"tempest/services/network/json/network_client.py":[{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"607d458642e27711fc884379c8cac5122fdf769a","unresolved":false,"context_lines":[{"line_number":635,"context_line":"        body \u003d json.dumps(put_body)"},{"line_number":636,"context_line":"        resp, body \u003d self.put(uri, body\u003dbody, headers\u003dself.headers)"},{"line_number":637,"context_line":"        body \u003d json.loads(body)"},{"line_number":638,"context_line":"        return resp, body"},{"line_number":639,"context_line":""},{"line_number":640,"context_line":"    def delete_agent(self, agent_id):"},{"line_number":641,"context_line":"        uri \u003d \u0027%s/agents/%s\u0027 % (self.uri_prefix, agent_id)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2FwWg%3D","line":638,"updated":"2013-10-10 09:37:46.000000000","message":"It doesn\u0027t seem two distinct methods are required for updating status and description","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"},{"author":{"_account_id":8607,"name":"ChenZheng","email":"czheng@cn.ibm.com","username":"ChenZheng"},"change_message_id":"0479ea5c80d3caea5fc43eb9e598abe458d588b9","unresolved":false,"context_lines":[{"line_number":635,"context_line":"        body \u003d json.dumps(put_body)"},{"line_number":636,"context_line":"        resp, body \u003d self.put(uri, body\u003dbody, headers\u003dself.headers)"},{"line_number":637,"context_line":"        body \u003d json.loads(body)"},{"line_number":638,"context_line":"        return resp, body"},{"line_number":639,"context_line":""},{"line_number":640,"context_line":"    def delete_agent(self, agent_id):"},{"line_number":641,"context_line":"        uri \u003d \u0027%s/agents/%s\u0027 % (self.uri_prefix, agent_id)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATH%2F%2Fr5s%3D","line":638,"in_reply_to":"AAAATH%2F%2FwWg%3D","updated":"2013-10-11 07:58:06.000000000","message":"Done","commit_id":"7238c4c1c63423df0623a6b80cb8f2079caa2139"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"f0af7e7331b4d32168651925ef37d5bb839ce999","unresolved":false,"context_lines":[{"line_number":698,"context_line":"        body \u003d json.loads(body)"},{"line_number":699,"context_line":"        return resp, body"},{"line_number":700,"context_line":""},{"line_number":701,"context_line":"    def delete_agent(self, agent_id):"},{"line_number":702,"context_line":"        uri \u003d \u0027%s/agents/%s\u0027 % (self.uri_prefix, agent_id)"},{"line_number":703,"context_line":"        resp, body \u003d self.delete(uri, self.headers)"},{"line_number":704,"context_line":"        return resp, body"}],"source_content_type":"text/x-python","patch_set":21,"id":"AAAATn%2F9KT8%3D","line":701,"updated":"2013-12-16 06:06:20.000000000","message":"better to remove this because of the unused method.","commit_id":"5fd0a4496ace08f209a322d6920d07b50d6c311b"}],"tempest/services/network/xml/network_client.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"f0af7e7331b4d32168651925ef37d5bb839ce999","unresolved":false,"context_lines":[{"line_number":578,"context_line":"        body \u003d _root_tag_fetcher_and_xml_to_json_parse(body)"},{"line_number":579,"context_line":"        return resp, body"},{"line_number":580,"context_line":""},{"line_number":581,"context_line":"    def delete_agent(self, agent_id):"},{"line_number":582,"context_line":"        uri \u003d \u0027%s/agents/%s\u0027 % (self.uri_prefix, agent_id)"},{"line_number":583,"context_line":"        return self.delete(uri, self.headers)"},{"line_number":584,"context_line":""}],"source_content_type":"text/x-python","patch_set":21,"id":"AAAATn%2F9KT4%3D","line":581,"updated":"2013-12-16 06:06:20.000000000","message":"better to remove this because of the unused method.","commit_id":"5fd0a4496ace08f209a322d6920d07b50d6c311b"}]}
