)]}'
{"tempest/api/compute/security_groups/test_security_group_rules.py":[{"author":{"_account_id":5586,"name":"Ivan-Zhu","email":"zhubo198511@gmail.com","username":"ivan-zhu"},"change_message_id":"852e8a8055558ed88ce91f24c9e4281a28eed3f5","unresolved":false,"context_lines":[{"line_number":143,"context_line":"            self.client.create_security_group(s1_name, s1_description)"},{"line_number":144,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":145,"context_line":"        sg1_id \u003d sg1[\u0027id\u0027]"},{"line_number":146,"context_line":"        self.addCleanup(self.client.delete_security_group, sg1_id)"},{"line_number":147,"context_line":"        # Creating other Security Group to access to group1"},{"line_number":148,"context_line":"        s2_name \u003d data_utils.rand_name(\u0027securitygroup2-\u0027)"},{"line_number":149,"context_line":"        s2_description \u003d data_utils.rand_name(\u0027description2-\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2Ftbg%3D","line":146,"updated":"2013-10-30 06:06:26.000000000","message":"the cleanup should be after create. put it in line:144","commit_id":"45761b2cc6af45a0a8351b98176d0b13a90ed5fc"},{"author":{"_account_id":5586,"name":"Ivan-Zhu","email":"zhubo198511@gmail.com","username":"ivan-zhu"},"change_message_id":"adb690b13ad6f8fa4f80309cd6c8be9af685e0f6","unresolved":false,"context_lines":[{"line_number":143,"context_line":"            self.client.create_security_group(s1_name, s1_description)"},{"line_number":144,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":145,"context_line":"        sg1_id \u003d sg1[\u0027id\u0027]"},{"line_number":146,"context_line":"        self.addCleanup(self.client.delete_security_group, sg1_id)"},{"line_number":147,"context_line":"        # Creating other Security Group to access to group1"},{"line_number":148,"context_line":"        s2_name \u003d data_utils.rand_name(\u0027securitygroup2-\u0027)"},{"line_number":149,"context_line":"        s2_description \u003d data_utils.rand_name(\u0027description2-\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2FtNE%3D","line":146,"in_reply_to":"AAAATn%2F%2FtUQ%3D","updated":"2013-10-30 07:10:02.000000000","message":"http://docs.python.org/dev/library/unittest.html please see addCleanup again in this link. It just be used to manager resource, just register the clean up function.","commit_id":"45761b2cc6af45a0a8351b98176d0b13a90ed5fc"},{"author":{"_account_id":8289,"name":"huangtianhua","email":"tiantian223@163.com","username":"huangtianhua"},"change_message_id":"a493fe7fa7d2d7f590a658644ba7716a0ebcb9a9","unresolved":false,"context_lines":[{"line_number":143,"context_line":"            self.client.create_security_group(s1_name, s1_description)"},{"line_number":144,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":145,"context_line":"        sg1_id \u003d sg1[\u0027id\u0027]"},{"line_number":146,"context_line":"        self.addCleanup(self.client.delete_security_group, sg1_id)"},{"line_number":147,"context_line":"        # Creating other Security Group to access to group1"},{"line_number":148,"context_line":"        s2_name \u003d data_utils.rand_name(\u0027securitygroup2-\u0027)"},{"line_number":149,"context_line":"        s2_description \u003d data_utils.rand_name(\u0027description2-\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2FtUQ%3D","line":146,"in_reply_to":"AAAATn%2F%2Ftbg%3D","updated":"2013-10-30 06:30:31.000000000","message":"In my opinion,we have to find a problem as soon as possible.It may be failed when creating a security group.","commit_id":"45761b2cc6af45a0a8351b98176d0b13a90ed5fc"},{"author":{"_account_id":5586,"name":"Ivan-Zhu","email":"zhubo198511@gmail.com","username":"ivan-zhu"},"change_message_id":"852e8a8055558ed88ce91f24c9e4281a28eed3f5","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        s2_name \u003d data_utils.rand_name(\u0027securitygroup2-\u0027)"},{"line_number":149,"context_line":"        s2_description \u003d data_utils.rand_name(\u0027description2-\u0027)"},{"line_number":150,"context_line":"        resp, sg2 \u003d \\"},{"line_number":151,"context_line":"            self.client.create_security_group(s2_name, s2_description)"},{"line_number":152,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":153,"context_line":"        sg2_id \u003d sg2[\u0027id\u0027]"},{"line_number":154,"context_line":"        # Adding rules to the Group1"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2Ftbc%3D","line":151,"updated":"2013-10-30 06:06:26.000000000","message":"need cleanup","commit_id":"45761b2cc6af45a0a8351b98176d0b13a90ed5fc"},{"author":{"_account_id":8289,"name":"huangtianhua","email":"tiantian223@163.com","username":"huangtianhua"},"change_message_id":"a493fe7fa7d2d7f590a658644ba7716a0ebcb9a9","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        s2_name \u003d data_utils.rand_name(\u0027securitygroup2-\u0027)"},{"line_number":149,"context_line":"        s2_description \u003d data_utils.rand_name(\u0027description2-\u0027)"},{"line_number":150,"context_line":"        resp, sg2 \u003d \\"},{"line_number":151,"context_line":"            self.client.create_security_group(s2_name, s2_description)"},{"line_number":152,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":153,"context_line":"        sg2_id \u003d sg2[\u0027id\u0027]"},{"line_number":154,"context_line":"        # Adding rules to the Group1"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2FtTs%3D","line":151,"in_reply_to":"AAAATn%2F%2Ftbc%3D","updated":"2013-10-30 06:30:31.000000000","message":"See line 167.This test i want to verify the rule will be delete when the peer group is deleted.","commit_id":"45761b2cc6af45a0a8351b98176d0b13a90ed5fc"},{"author":{"_account_id":5586,"name":"Ivan-Zhu","email":"zhubo198511@gmail.com","username":"ivan-zhu"},"change_message_id":"852e8a8055558ed88ce91f24c9e4281a28eed3f5","unresolved":false,"context_lines":[{"line_number":160,"context_line":"                                                   ip_protocol,"},{"line_number":161,"context_line":"                                                   from_port,"},{"line_number":162,"context_line":"                                                   to_port,"},{"line_number":163,"context_line":"                                                   group_id\u003dsg2_id)"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":166,"context_line":"        # Delete group2"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2FtbY%3D","line":163,"updated":"2013-10-30 06:06:26.000000000","message":"need cleanup","commit_id":"45761b2cc6af45a0a8351b98176d0b13a90ed5fc"},{"author":{"_account_id":5586,"name":"Ivan-Zhu","email":"zhubo198511@gmail.com","username":"ivan-zhu"},"change_message_id":"852e8a8055558ed88ce91f24c9e4281a28eed3f5","unresolved":false,"context_lines":[{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":166,"context_line":"        # Delete group2"},{"line_number":167,"context_line":"        self.client.delete_security_group(sg2_id)"},{"line_number":168,"context_line":"        # Get rules of the Group1"},{"line_number":169,"context_line":"        resp, rules \u003d \\"},{"line_number":170,"context_line":"            self.client.list_security_group_rules(sg1_id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2FtbI%3D","line":167,"updated":"2013-10-30 06:06:26.000000000","message":"need check the response, because here we want to test the delete action","commit_id":"45761b2cc6af45a0a8351b98176d0b13a90ed5fc"},{"author":{"_account_id":5586,"name":"Ivan-Zhu","email":"zhubo198511@gmail.com","username":"ivan-zhu"},"change_message_id":"adb690b13ad6f8fa4f80309cd6c8be9af685e0f6","unresolved":false,"context_lines":[{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":166,"context_line":"        # Delete group2"},{"line_number":167,"context_line":"        self.client.delete_security_group(sg2_id)"},{"line_number":168,"context_line":"        # Get rules of the Group1"},{"line_number":169,"context_line":"        resp, rules \u003d \\"},{"line_number":170,"context_line":"            self.client.list_security_group_rules(sg1_id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2FtNU%3D","line":167,"in_reply_to":"AAAATn%2F%2FtTM%3D","updated":"2013-10-30 07:10:02.000000000","message":"no, it must return code, should be 202 I think. and check the code is better.","commit_id":"45761b2cc6af45a0a8351b98176d0b13a90ed5fc"},{"author":{"_account_id":8289,"name":"huangtianhua","email":"tiantian223@163.com","username":"huangtianhua"},"change_message_id":"a493fe7fa7d2d7f590a658644ba7716a0ebcb9a9","unresolved":false,"context_lines":[{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":166,"context_line":"        # Delete group2"},{"line_number":167,"context_line":"        self.client.delete_security_group(sg2_id)"},{"line_number":168,"context_line":"        # Get rules of the Group1"},{"line_number":169,"context_line":"        resp, rules \u003d \\"},{"line_number":170,"context_line":"            self.client.list_security_group_rules(sg1_id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2FtTM%3D","line":167,"in_reply_to":"AAAATn%2F%2FtbI%3D","updated":"2013-10-30 06:30:31.000000000","message":"May be the name of the test is not appropriate.\n1.I don\u0027t want to test the security_group_delete\n2.The delete function in the client don\u0027t return the status code,so ......","commit_id":"45761b2cc6af45a0a8351b98176d0b13a90ed5fc"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"bac7177ed60698280a98db239f318cfb6b02a11b","unresolved":false,"context_lines":[{"line_number":29,"context_line":"        cls.client \u003d cls.security_groups_client"},{"line_number":30,"context_line":"        cls.neutron_available \u003d cls.config.service_available.neutron"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    @attr(type\u003d\u0027smoke\u0027)"},{"line_number":33,"context_line":"    def test_security_group_rules_create(self):"},{"line_number":34,"context_line":"        # Positive test: Creation of Security Group rule"},{"line_number":35,"context_line":"        # should be successful"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F%2BhsY%3D","line":32,"updated":"2013-11-25 04:24:37.000000000","message":"I think the reason about these changes should be in the commit message.","commit_id":"00bf5c07191e695f858e10b2ac7648f9a003aa26"}],"tempest/api/compute/security_groups/test_security_group_rules_negative.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"cfdf1bd0bd4b5be3e82ea64cba06f4b70e0dd995","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def test_security_group_rules_create_with_non_existent_id(self):"},{"line_number":40,"context_line":"        # Negative test: Creation of Security Group rule should FAIL"},{"line_number":41,"context_line":"        # with non existent Parent group id"},{"line_number":42,"context_line":"        # Adding rules to the non existent  Security Group id"},{"line_number":43,"context_line":"        parent_group_id \u003d data_utils.rand_int_id(start\u003d999)"},{"line_number":44,"context_line":"        ip_protocol \u003d \u0027tcp\u0027"},{"line_number":45,"context_line":"        from_port \u003d 22"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FsVU%3D","line":42,"updated":"2013-10-30 11:19:30.000000000","message":"nit: There is one unnecessary space between \"existent\" and \"Security\".","commit_id":"b9731a7885ae75d8f1c5f533aec5fd1b03785740"},{"author":{"_account_id":8289,"name":"huangtianhua","email":"tiantian223@163.com","username":"huangtianhua"},"change_message_id":"bee39312ba7e53028fcefba346c3386a90f89444","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def test_security_group_rules_create_with_non_existent_id(self):"},{"line_number":40,"context_line":"        # Negative test: Creation of Security Group rule should FAIL"},{"line_number":41,"context_line":"        # with non existent Parent group id"},{"line_number":42,"context_line":"        # Adding rules to the non existent  Security Group id"},{"line_number":43,"context_line":"        parent_group_id \u003d data_utils.rand_int_id(start\u003d999)"},{"line_number":44,"context_line":"        ip_protocol \u003d \u0027tcp\u0027"},{"line_number":45,"context_line":"        from_port \u003d 22"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FpDU%3D","line":42,"in_reply_to":"AAAATn%2F%2FsVU%3D","updated":"2013-10-31 01:16:28.000000000","message":"Thanks.I will modify this.","commit_id":"b9731a7885ae75d8f1c5f533aec5fd1b03785740"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"cfdf1bd0bd4b5be3e82ea64cba06f4b70e0dd995","unresolved":false,"context_lines":[{"line_number":122,"context_line":"        # Adding rules to the created Security Group"},{"line_number":123,"context_line":"        parent_group_id \u003d securitygroup[\u0027id\u0027]"},{"line_number":124,"context_line":"        ip_protocol \u003d \u0027tcp\u0027"},{"line_number":125,"context_line":"        from_port \u003d data_utils.rand_int_id(start\u003d999, end\u003d65535)"},{"line_number":126,"context_line":"        to_port \u003d 22"},{"line_number":127,"context_line":"        self.addCleanup(self.client.delete_security_group, securitygroup[\u0027id\u0027])"},{"line_number":128,"context_line":"        self.assertRaises(exceptions.BadRequest,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FsUk%3D","line":125,"updated":"2013-10-30 11:19:30.000000000","message":"I feel the purpose of this test is the same as the following \"test_security_group_rules_create_with_invalid_port_range\".","commit_id":"b9731a7885ae75d8f1c5f533aec5fd1b03785740"},{"author":{"_account_id":8289,"name":"huangtianhua","email":"tiantian223@163.com","username":"huangtianhua"},"change_message_id":"bee39312ba7e53028fcefba346c3386a90f89444","unresolved":false,"context_lines":[{"line_number":122,"context_line":"        # Adding rules to the created Security Group"},{"line_number":123,"context_line":"        parent_group_id \u003d securitygroup[\u0027id\u0027]"},{"line_number":124,"context_line":"        ip_protocol \u003d \u0027tcp\u0027"},{"line_number":125,"context_line":"        from_port \u003d data_utils.rand_int_id(start\u003d999, end\u003d65535)"},{"line_number":126,"context_line":"        to_port \u003d 22"},{"line_number":127,"context_line":"        self.addCleanup(self.client.delete_security_group, securitygroup[\u0027id\u0027])"},{"line_number":128,"context_line":"        self.assertRaises(exceptions.BadRequest,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FpC4%3D","line":125,"in_reply_to":"AAAATn%2F%2FsUk%3D","updated":"2013-10-31 01:16:28.000000000","message":"This test isn\u0027t the new one.I just make a separate file and move this over to the file.\nYes,I agree with you.I will modify this.","commit_id":"b9731a7885ae75d8f1c5f533aec5fd1b03785740"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"cfdf1bd0bd4b5be3e82ea64cba06f4b70e0dd995","unresolved":false,"context_lines":[{"line_number":170,"context_line":"    @skip_because(bug\u003d\"1182384\","},{"line_number":171,"context_line":"                  condition\u003dconfig.TempestConfig().service_available.neutron)"},{"line_number":172,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027gate\u0027])"},{"line_number":173,"context_line":"    def test_security_group_rules_delete_with_invalid_id(self):"},{"line_number":174,"context_line":"        # Negative test: Deletion of Security Group rule should be FAIL"},{"line_number":175,"context_line":"        # with invalid rule id"},{"line_number":176,"context_line":"        self.assertRaises(exceptions.NotFound,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FsWE%3D","line":173,"updated":"2013-10-30 11:19:30.000000000","message":"s/with_invalid_id/with_non_existent_id/\n\nI know this is not due to your change, but it is a good chance for fixing here.","commit_id":"b9731a7885ae75d8f1c5f533aec5fd1b03785740"},{"author":{"_account_id":8289,"name":"huangtianhua","email":"tiantian223@163.com","username":"huangtianhua"},"change_message_id":"bee39312ba7e53028fcefba346c3386a90f89444","unresolved":false,"context_lines":[{"line_number":170,"context_line":"    @skip_because(bug\u003d\"1182384\","},{"line_number":171,"context_line":"                  condition\u003dconfig.TempestConfig().service_available.neutron)"},{"line_number":172,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027gate\u0027])"},{"line_number":173,"context_line":"    def test_security_group_rules_delete_with_invalid_id(self):"},{"line_number":174,"context_line":"        # Negative test: Deletion of Security Group rule should be FAIL"},{"line_number":175,"context_line":"        # with invalid rule id"},{"line_number":176,"context_line":"        self.assertRaises(exceptions.NotFound,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FpCs%3D","line":173,"in_reply_to":"AAAATn%2F%2FsWE%3D","updated":"2013-10-31 01:16:28.000000000","message":"Thanks. I will  modify all errors about this.","commit_id":"b9731a7885ae75d8f1c5f533aec5fd1b03785740"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"cfdf1bd0bd4b5be3e82ea64cba06f4b70e0dd995","unresolved":false,"context_lines":[{"line_number":172,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027gate\u0027])"},{"line_number":173,"context_line":"    def test_security_group_rules_delete_with_invalid_id(self):"},{"line_number":174,"context_line":"        # Negative test: Deletion of Security Group rule should be FAIL"},{"line_number":175,"context_line":"        # with invalid rule id"},{"line_number":176,"context_line":"        self.assertRaises(exceptions.NotFound,"},{"line_number":177,"context_line":"                          self.client.delete_security_group_rule,"},{"line_number":178,"context_line":"                          data_utils.rand_int_id(start\u003d999))"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FsV4%3D","line":175,"updated":"2013-10-30 11:19:30.000000000","message":"s/invalid/non existent/","commit_id":"b9731a7885ae75d8f1c5f533aec5fd1b03785740"},{"author":{"_account_id":8289,"name":"huangtianhua","email":"tiantian223@163.com","username":"huangtianhua"},"change_message_id":"bee39312ba7e53028fcefba346c3386a90f89444","unresolved":false,"context_lines":[{"line_number":172,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027gate\u0027])"},{"line_number":173,"context_line":"    def test_security_group_rules_delete_with_invalid_id(self):"},{"line_number":174,"context_line":"        # Negative test: Deletion of Security Group rule should be FAIL"},{"line_number":175,"context_line":"        # with invalid rule id"},{"line_number":176,"context_line":"        self.assertRaises(exceptions.NotFound,"},{"line_number":177,"context_line":"                          self.client.delete_security_group_rule,"},{"line_number":178,"context_line":"                          data_utils.rand_int_id(start\u003d999))"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FpCk%3D","line":175,"in_reply_to":"AAAATn%2F%2FsV4%3D","updated":"2013-10-31 01:16:28.000000000","message":"ditto","commit_id":"b9731a7885ae75d8f1c5f533aec5fd1b03785740"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"cc3e015324527b96c386e63c2033dd58eaaebe84","unresolved":false,"context_lines":[{"line_number":170,"context_line":"    @skip_because(bug\u003d\"1182384\","},{"line_number":171,"context_line":"                  condition\u003dconfig.TempestConfig().service_available.neutron)"},{"line_number":172,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027gate\u0027])"},{"line_number":173,"context_line":"    def test_delete_security_group_rule_with_invalid_id(self):"},{"line_number":174,"context_line":"        # Negative test: Deletion of Security Group rule should be FAIL"},{"line_number":175,"context_line":"        # with invalid rule id"},{"line_number":176,"context_line":"        self.assertRaises(exceptions.NotFound,"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATn%2F%2Fo5o%3D","line":173,"updated":"2013-10-31 02:26:28.000000000","message":"not applied with my previous point.","commit_id":"cfc368e8c46f7029c58f0e6abcd86f953c1b7733"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"cc3e015324527b96c386e63c2033dd58eaaebe84","unresolved":false,"context_lines":[{"line_number":172,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027gate\u0027])"},{"line_number":173,"context_line":"    def test_delete_security_group_rule_with_invalid_id(self):"},{"line_number":174,"context_line":"        # Negative test: Deletion of Security Group rule should be FAIL"},{"line_number":175,"context_line":"        # with invalid rule id"},{"line_number":176,"context_line":"        self.assertRaises(exceptions.NotFound,"},{"line_number":177,"context_line":"                          self.client.delete_security_group_rule,"},{"line_number":178,"context_line":"                          data_utils.rand_int_id(start\u003d999))"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATn%2F%2Fo5k%3D","line":175,"updated":"2013-10-31 02:26:28.000000000","message":"ditto","commit_id":"cfc368e8c46f7029c58f0e6abcd86f953c1b7733"}]}
