)]}'
{"neutron/tests/common/net_helpers.py":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"969df06a6a1acada312a925a82992fc4b05d9f81","unresolved":false,"context_lines":[{"line_number":105,"context_line":"    cmd \u003d [ping_command, \u0027-c\u0027, count, \u0027-W\u0027, timeout]"},{"line_number":106,"context_line":"    if size is not None:"},{"line_number":107,"context_line":"        # disable fragmentation"},{"line_number":108,"context_line":"        cmd +\u003d [\u0027-M\u0027, \u0027do\u0027]"},{"line_number":109,"context_line":"        # substract header size"},{"line_number":110,"context_line":"        cmd +\u003d [\u0027-s\u0027, size - (28 if ipversion \u003d\u003d 4 else 52)]"},{"line_number":111,"context_line":"    cmd.append(dst_ip)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a89bdaa_21e44aaa","line":108,"range":{"start_line":108,"start_character":8,"end_line":108,"end_character":27},"updated":"2016-09-13 14:54:30.000000000","message":"Nit: We can merge those two cmds without losing readability:\n\n cmd +\u003d [\n    \u0027-M\u0027, \u0027do\u0027,\n    \u0027-s\u0027, size - magic\n ]","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"969df06a6a1acada312a925a82992fc4b05d9f81","unresolved":false,"context_lines":[{"line_number":107,"context_line":"        # disable fragmentation"},{"line_number":108,"context_line":"        cmd +\u003d [\u0027-M\u0027, \u0027do\u0027]"},{"line_number":109,"context_line":"        # substract header size"},{"line_number":110,"context_line":"        cmd +\u003d [\u0027-s\u0027, size - (28 if ipversion \u003d\u003d 4 else 52)]"},{"line_number":111,"context_line":"    cmd.append(dst_ip)"},{"line_number":112,"context_line":"    ns_ip_wrapper.netns.execute(cmd)"},{"line_number":113,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9a89bdaa_a1421a66","line":110,"range":{"start_line":110,"start_character":29,"end_line":110,"end_character":59},"updated":"2016-09-13 14:54:30.000000000","message":"I\u0027d prefer something like:\n\n IPV4_HEADER_SIZE \u003d 28\n IPV6_HEADER_SIZE \u003d 52\n\n HEADER_SIZE {\n    IPV4: IPV4_HEADER_SIZE,\n    IPV6: IPV6_HEADER_SIZE,\n }\n\n ...\n\n cmd +\u003d [\u0027-s\u0027, size - HEADER_SIZE[ipversion]]","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"17db8a6a3323e5fd6d48daf6b268f394bb006546","unresolved":false,"context_lines":[{"line_number":107,"context_line":"        # disable fragmentation"},{"line_number":108,"context_line":"        cmd +\u003d [\u0027-M\u0027, \u0027do\u0027]"},{"line_number":109,"context_line":"        # substract header size"},{"line_number":110,"context_line":"        cmd +\u003d [\u0027-s\u0027, size - (28 if ipversion \u003d\u003d 4 else 52)]"},{"line_number":111,"context_line":"    cmd.append(dst_ip)"},{"line_number":112,"context_line":"    ns_ip_wrapper.netns.execute(cmd)"},{"line_number":113,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9a89bdaa_501af5c6","line":110,"range":{"start_line":110,"start_character":29,"end_line":110,"end_character":59},"in_reply_to":"9a89bdaa_1c05e912","updated":"2016-09-13 15:21:03.000000000","message":"neutron/plugins/common/constants.py has\n\nIP_HEADER_LENGTH[ipversion]\n\nWhere are the other byte numbers coming from?","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"50655f3b794c434ba57eeab3fad196678f0aa138","unresolved":false,"context_lines":[{"line_number":107,"context_line":"        # disable fragmentation"},{"line_number":108,"context_line":"        cmd +\u003d [\u0027-M\u0027, \u0027do\u0027]"},{"line_number":109,"context_line":"        # substract header size"},{"line_number":110,"context_line":"        cmd +\u003d [\u0027-s\u0027, size - (28 if ipversion \u003d\u003d 4 else 52)]"},{"line_number":111,"context_line":"    cmd.append(dst_ip)"},{"line_number":112,"context_line":"    ns_ip_wrapper.netns.execute(cmd)"},{"line_number":113,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9a89bdaa_b36c2bd1","line":110,"range":{"start_line":110,"start_character":29,"end_line":110,"end_character":59},"in_reply_to":"9a89bdaa_501af5c6","updated":"2016-09-13 15:25:15.000000000","message":"There is also ICMP header size (8 bytes for ipv4 and 32 for ipv6).","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"a76891f1d83ee1f385add43caa079e130722cf71","unresolved":false,"context_lines":[{"line_number":107,"context_line":"        # disable fragmentation"},{"line_number":108,"context_line":"        cmd +\u003d [\u0027-M\u0027, \u0027do\u0027]"},{"line_number":109,"context_line":"        # substract header size"},{"line_number":110,"context_line":"        cmd +\u003d [\u0027-s\u0027, size - (28 if ipversion \u003d\u003d 4 else 52)]"},{"line_number":111,"context_line":"    cmd.append(dst_ip)"},{"line_number":112,"context_line":"    ns_ip_wrapper.netns.execute(cmd)"},{"line_number":113,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9a89bdaa_1c05e912","line":110,"range":{"start_line":110,"start_character":29,"end_line":110,"end_character":59},"in_reply_to":"9a89bdaa_a1421a66","updated":"2016-09-13 15:07:01.000000000","message":"I think we even have those constants somewhere.","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"93f07c9c03014c4d188bfcf127389b8752375f27","unresolved":false,"context_lines":[{"line_number":107,"context_line":"        # disable fragmentation"},{"line_number":108,"context_line":"        cmd +\u003d [\u0027-M\u0027, \u0027do\u0027]"},{"line_number":109,"context_line":"        # substract header size"},{"line_number":110,"context_line":"        cmd +\u003d [\u0027-s\u0027, size - (28 if ipversion \u003d\u003d 4 else 52)]"},{"line_number":111,"context_line":"    cmd.append(dst_ip)"},{"line_number":112,"context_line":"    ns_ip_wrapper.netns.execute(cmd)"},{"line_number":113,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da6895a0_711cc513","line":110,"range":{"start_line":110,"start_character":29,"end_line":110,"end_character":59},"in_reply_to":"9a89bdaa_b36c2bd1","updated":"2016-10-24 21:55:09.000000000","message":"Done","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"}],"neutron/tests/fullstack/test_connectivity.py":[{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"42d9c19f572926fdf3b5d77abb63c0e1c06ee239","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        vms[0].block_until_ping(vms[2].ip)"},{"line_number":70,"context_line":"        vms[1].block_until_ping(vms[2].ip)"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    def _test_connectivity_mtu(self):"},{"line_number":73,"context_line":"        tenant_uuid \u003d uuidutils.generate_uuid()"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        network \u003d self.safe_client.create_network(tenant_uuid)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a89bdaa_edf6d9d5","line":72,"range":{"start_line":72,"start_character":8,"end_line":72,"end_character":30},"updated":"2016-09-13 14:01:55.000000000","message":"This is a pretty big code duplication with the above function, with the only change being that \u0027size\u0027 is now specified.\n\nIf this ends up merging, this should be solved.","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"a76891f1d83ee1f385add43caa079e130722cf71","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        vms[0].block_until_ping(vms[2].ip)"},{"line_number":70,"context_line":"        vms[1].block_until_ping(vms[2].ip)"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    def _test_connectivity_mtu(self):"},{"line_number":73,"context_line":"        tenant_uuid \u003d uuidutils.generate_uuid()"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        network \u003d self.safe_client.create_network(tenant_uuid)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a89bdaa_7ccc3535","line":72,"range":{"start_line":72,"start_character":8,"end_line":72,"end_character":30},"in_reply_to":"9a89bdaa_61df320d","updated":"2016-09-13 15:07:01.000000000","message":"Yeah, no doubt. I put it here for now to question why it passes. If I get the test to fail, I will consider merging it. :)","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"93f07c9c03014c4d188bfcf127389b8752375f27","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        vms[0].block_until_ping(vms[2].ip)"},{"line_number":70,"context_line":"        vms[1].block_until_ping(vms[2].ip)"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    def _test_connectivity_mtu(self):"},{"line_number":73,"context_line":"        tenant_uuid \u003d uuidutils.generate_uuid()"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        network \u003d self.safe_client.create_network(tenant_uuid)"}],"source_content_type":"text/x-python","patch_set":1,"id":"da6895a0_911b191b","line":72,"range":{"start_line":72,"start_character":8,"end_line":72,"end_character":30},"in_reply_to":"9a89bdaa_7ccc3535","updated":"2016-10-24 21:55:09.000000000","message":"Done","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"969df06a6a1acada312a925a82992fc4b05d9f81","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        vms[0].block_until_ping(vms[2].ip)"},{"line_number":70,"context_line":"        vms[1].block_until_ping(vms[2].ip)"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    def _test_connectivity_mtu(self):"},{"line_number":73,"context_line":"        tenant_uuid \u003d uuidutils.generate_uuid()"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        network \u003d self.safe_client.create_network(tenant_uuid)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a89bdaa_61df320d","line":72,"range":{"start_line":72,"start_character":8,"end_line":72,"end_character":30},"in_reply_to":"9a89bdaa_edf6d9d5","updated":"2016-09-13 14:54:30.000000000","message":"I agree. Also does anybody know why we have this _test_ methods? Why not having directly test_connectivity without calling to another method?\n\nHow about putting mtu to scenario and then on L67:\n\n size \u003d None\n if self.test_with_mtu:\n    size \u003d network[\u0027mtu\u0027]\n vm.block_until_ping(vms[x].ip, size\u003dsize)","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"}],"neutron/tests/fullstack/test_l3_agent.py":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"969df06a6a1acada312a925a82992fc4b05d9f81","unresolved":false,"context_lines":[{"line_number":69,"context_line":"            machine.FakeFullstackMachine("},{"line_number":70,"context_line":"                host, network[\u0027id\u0027], tenant_id, self.safe_client))"},{"line_number":71,"context_line":"        vm.block_until_boot()"},{"line_number":72,"context_line":"        return vm, network"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"class TestLegacyL3Agent(TestL3Agent):"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a89bdaa_5c4f716a","line":72,"range":{"start_line":72,"start_character":8,"end_line":72,"end_character":26},"updated":"2016-09-13 14:54:30.000000000","message":"Suggestion only: Do you think it would according method name semantically make better to sense to do:\n\n return network, subnet, vm","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"93f07c9c03014c4d188bfcf127389b8752375f27","unresolved":false,"context_lines":[{"line_number":69,"context_line":"            machine.FakeFullstackMachine("},{"line_number":70,"context_line":"                host, network[\u0027id\u0027], tenant_id, self.safe_client))"},{"line_number":71,"context_line":"        vm.block_until_boot()"},{"line_number":72,"context_line":"        return vm, network"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"class TestLegacyL3Agent(TestL3Agent):"}],"source_content_type":"text/x-python","patch_set":1,"id":"da6895a0_b1165def","line":72,"range":{"start_line":72,"start_character":8,"end_line":72,"end_character":26},"in_reply_to":"9a89bdaa_5c4f716a","updated":"2016-10-24 21:55:09.000000000","message":"Done","commit_id":"9bf1e5b9f372e95f0194cf0dabc21e20021ef444"}]}
