)]}'
{"openstackclient/tests/functional/network/v2/test_subnet.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"83967f62e91362f48426ae3283253908efb9b8a6","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class SubnetTests(base.TestCase):"},{"line_number":20,"context_line":"    \"\"\"Functional tests for subnet. \"\"\""},{"line_number":21,"context_line":"    NETWORK_NAME \u003d uuid.uuid4().hex"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    @classmethod"},{"line_number":24,"context_line":"    def setUpClass(cls):"}],"source_content_type":"text/x-python","patch_set":1,"id":"da36d5c6_079549e3","line":21,"range":{"start_line":21,"start_character":4,"end_line":21,"end_character":35},"updated":"2017-02-20 16:44:26.000000000","message":"do we wnat to move this into the setupClass?","commit_id":"ce4a7d694064e4cd0f466fedc35ad3a429f0c7d0"},{"author":{"_account_id":24080,"name":"jiahui.qiang","email":"jiahui.qiang@easystack.cn","username":"qiangjiahui"},"change_message_id":"5ae4360d56765a6e65c4dff7c3793646419b95b0","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class SubnetTests(base.TestCase):"},{"line_number":20,"context_line":"    \"\"\"Functional tests for subnet. \"\"\""},{"line_number":21,"context_line":"    NETWORK_NAME \u003d uuid.uuid4().hex"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    @classmethod"},{"line_number":24,"context_line":"    def setUpClass(cls):"}],"source_content_type":"text/x-python","patch_set":1,"id":"da36d5c6_f0c1bf81","line":21,"range":{"start_line":21,"start_character":4,"end_line":21,"end_character":35},"in_reply_to":"da36d5c6_079549e3","updated":"2017-02-21 05:47:00.000000000","message":"Done","commit_id":"ce4a7d694064e4cd0f466fedc35ad3a429f0c7d0"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"8a0d1cf7bc37d615d5536f4adcbc7cb20bcf0c1c","unresolved":false,"context_lines":[{"line_number":38,"context_line":"    def test_subnet_create_and_delete(self):"},{"line_number":39,"context_line":"        \"\"\"Test create, delete\"\"\""},{"line_number":40,"context_line":"        name1 \u003d uuid.uuid4().hex"},{"line_number":41,"context_line":"        cmd_output \u003d json.loads(self.openstack("},{"line_number":42,"context_line":"            \u0027subnet create -f json \u0027 +"},{"line_number":43,"context_line":"            \u0027--network \u0027 + self.NETWORK_NAME +"},{"line_number":44,"context_line":"            \u0027 --subnet-range 10.10.10.0/24 \u0027 +"}],"source_content_type":"text/x-python","patch_set":1,"id":"da36d5c6_8bb06df6","line":41,"updated":"2017-02-20 12:30:19.000000000","message":"We use a random subnet range when creating per https://review.openstack.org/#/c/421310/","commit_id":"ce4a7d694064e4cd0f466fedc35ad3a429f0c7d0"},{"author":{"_account_id":24080,"name":"jiahui.qiang","email":"jiahui.qiang@easystack.cn","username":"qiangjiahui"},"change_message_id":"5ae4360d56765a6e65c4dff7c3793646419b95b0","unresolved":false,"context_lines":[{"line_number":38,"context_line":"    def test_subnet_create_and_delete(self):"},{"line_number":39,"context_line":"        \"\"\"Test create, delete\"\"\""},{"line_number":40,"context_line":"        name1 \u003d uuid.uuid4().hex"},{"line_number":41,"context_line":"        cmd_output \u003d json.loads(self.openstack("},{"line_number":42,"context_line":"            \u0027subnet create -f json \u0027 +"},{"line_number":43,"context_line":"            \u0027--network \u0027 + self.NETWORK_NAME +"},{"line_number":44,"context_line":"            \u0027 --subnet-range 10.10.10.0/24 \u0027 +"}],"source_content_type":"text/x-python","patch_set":1,"id":"da36d5c6_30bc3705","line":41,"in_reply_to":"da36d5c6_8bb06df6","updated":"2017-02-21 05:47:00.000000000","message":"Done","commit_id":"ce4a7d694064e4cd0f466fedc35ad3a429f0c7d0"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"8a0d1cf7bc37d615d5536f4adcbc7cb20bcf0c1c","unresolved":false,"context_lines":[{"line_number":61,"context_line":"        \"\"\"Test create, list filter\"\"\""},{"line_number":62,"context_line":"        name1 \u003d uuid.uuid4().hex"},{"line_number":63,"context_line":"        name2 \u003d uuid.uuid4().hex"},{"line_number":64,"context_line":"        cmd_output \u003d json.loads(self.openstack("},{"line_number":65,"context_line":"            \u0027subnet create -f json \u0027 +"},{"line_number":66,"context_line":"            \u0027--network \u0027 + self.NETWORK_NAME +"},{"line_number":67,"context_line":"            \u0027 --subnet-range 10.10.10.0/24 \u0027 +"}],"source_content_type":"text/x-python","patch_set":1,"id":"da36d5c6_0b9d5d65","line":64,"updated":"2017-02-20 12:30:19.000000000","message":"ditto","commit_id":"ce4a7d694064e4cd0f466fedc35ad3a429f0c7d0"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"83967f62e91362f48426ae3283253908efb9b8a6","unresolved":false,"context_lines":[{"line_number":88,"context_line":"            \u0027subnet create -f json \u0027 +"},{"line_number":89,"context_line":"            \u0027--network \u0027 + self.NETWORK_NAME +"},{"line_number":90,"context_line":"            \u0027 --ip-version 6 \u0027 +"},{"line_number":91,"context_line":"            \u0027--subnet-range fe80::24be:5eff:fecd:c08d/96 \u0027 +"},{"line_number":92,"context_line":"            \u0027--no-dhcp \u0027 +"},{"line_number":93,"context_line":"            name2"},{"line_number":94,"context_line":"        ))"}],"source_content_type":"text/x-python","patch_set":1,"id":"da36d5c6_47b6618b","line":91,"range":{"start_line":91,"start_character":28,"end_line":91,"end_character":56},"updated":"2017-02-20 16:44:26.000000000","message":"same ^","commit_id":"ce4a7d694064e4cd0f466fedc35ad3a429f0c7d0"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"8a0d1cf7bc37d615d5536f4adcbc7cb20bcf0c1c","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        name \u003d uuid.uuid4().hex"},{"line_number":165,"context_line":"        new_name \u003d name + \"_\""},{"line_number":166,"context_line":"        cmd_output \u003d json.loads(self.openstack("},{"line_number":167,"context_line":"            \u0027subnet create -f json \u0027 +"},{"line_number":168,"context_line":"            \u0027--network \u0027 + self.NETWORK_NAME +"},{"line_number":169,"context_line":"            \u0027 --subnet-range 10.10.10.0/24 \u0027 +"}],"source_content_type":"text/x-python","patch_set":1,"id":"da36d5c6_4b8d9530","line":166,"updated":"2017-02-20 12:30:19.000000000","message":"ditto","commit_id":"ce4a7d694064e4cd0f466fedc35ad3a429f0c7d0"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"e71222c155a66c0821da0222da363b3d2838c107","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def test_subnet_create_and_delete(self):"},{"line_number":40,"context_line":"        \"\"\"Test create, delete\"\"\""},{"line_number":41,"context_line":"        name1 \u003d uuid.uuid4().hex"},{"line_number":42,"context_line":"        # Try random subnet range for subnet creating"},{"line_number":43,"context_line":"        # Because we can not determine ahead of time what subnets are already"},{"line_number":44,"context_line":"        # in use, possibly by another test running in parallel, try 4 times"},{"line_number":45,"context_line":"        for i in range(4):"}],"source_content_type":"text/x-python","patch_set":3,"id":"da36d5c6_515703ca","line":42,"updated":"2017-02-28 10:42:49.000000000","message":"One suggestion, you can write a common function for creating subnet that input the command and return the command output, and we can reuse the function, for example, we add a \"_subnet_create\" function and use it like this:\n    cmd \u003d \u0027subnet create -f json \u0027 +\n          \u0027--network \u0027 + self.NETWORK_NAME +\n          \u0027 --subnet-range \u0027 + subnet_ipv4 + \" \" +\n          name1\n    cmd_output \u003d _subnet_create(cmd)","commit_id":"6dfb3f7f9b56f2958eceee3131569d43a9da4679"},{"author":{"_account_id":24080,"name":"jiahui.qiang","email":"jiahui.qiang@easystack.cn","username":"qiangjiahui"},"change_message_id":"3399313fe66e44edc3fc7a7dcd9c14155832151b","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def test_subnet_create_and_delete(self):"},{"line_number":40,"context_line":"        \"\"\"Test create, delete\"\"\""},{"line_number":41,"context_line":"        name1 \u003d uuid.uuid4().hex"},{"line_number":42,"context_line":"        # Try random subnet range for subnet creating"},{"line_number":43,"context_line":"        # Because we can not determine ahead of time what subnets are already"},{"line_number":44,"context_line":"        # in use, possibly by another test running in parallel, try 4 times"},{"line_number":45,"context_line":"        for i in range(4):"}],"source_content_type":"text/x-python","patch_set":3,"id":"da36d5c6_8753f96b","line":42,"in_reply_to":"da36d5c6_515703ca","updated":"2017-02-28 12:19:32.000000000","message":"It looks good, but we may still need to make a random subnet_ipv4 in the _subnet_create function and it is one of the goal we make a common function. What about:\n    cmd \u003d \u0027subnet create -f json \u0027 +\n          \u0027--network \u0027 + self.NETWORK_NAME +\n          \u0027 --subnet-range \u0027\n    cmd_output \u003d _subnet_create(cmd, subnet_ipv4, name)","commit_id":"6dfb3f7f9b56f2958eceee3131569d43a9da4679"},{"author":{"_account_id":18332,"name":"Ankur","email":"ankur.gupta@intel.com","username":"ankur-gupta-f"},"change_message_id":"320499bb8e99bfedaeb4da4de441e4415e70870c","unresolved":false,"context_lines":[{"line_number":219,"context_line":""},{"line_number":220,"context_line":"        name \u003d uuid.uuid4().hex"},{"line_number":221,"context_line":"        new_name \u003d name + \"_\""},{"line_number":222,"context_line":"        for i in range(4):"},{"line_number":223,"context_line":"            # Make a random subnet ipv4"},{"line_number":224,"context_line":"            subnet_ipv4 \u003d \".\".join(map("},{"line_number":225,"context_line":"                str,"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba2be162_99e45c3c","line":222,"updated":"2017-02-28 17:58:45.000000000","message":"move all the looped subnet creation into its own function.","commit_id":"6dfb3f7f9b56f2958eceee3131569d43a9da4679"},{"author":{"_account_id":18332,"name":"Ankur","email":"ankur.gupta@intel.com","username":"ankur-gupta-f"},"change_message_id":"320499bb8e99bfedaeb4da4de441e4415e70870c","unresolved":false,"context_lines":[{"line_number":251,"context_line":"            cmd_output[\"description\"],"},{"line_number":252,"context_line":"        )"},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"        # Test set --no-dhcp --name --gateway --description"},{"line_number":255,"context_line":"        cmd_output \u003d self.openstack("},{"line_number":256,"context_line":"            \u0027subnet set \u0027 +"},{"line_number":257,"context_line":"            \u0027--name \u0027 + new_name +"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba2be162_79bec800","line":254,"updated":"2017-02-28 17:58:45.000000000","message":"move set and unset into its own test","commit_id":"6dfb3f7f9b56f2958eceee3131569d43a9da4679"}]}
