)]}'
{"neutron/agent/linux/ip_lib.py":[{"author":{"_account_id":9631,"name":"sajuptpm","email":"sajuptpm@gmail.com","username":"sajuptpm"},"change_message_id":"f6c0090dbc2f206cbdefd9f45251ca3061c127cc","unresolved":false,"context_lines":[{"line_number":644,"context_line":""},{"line_number":645,"context_line":"def _arping(ns_name, iface_name, address, count):"},{"line_number":646,"context_line":"    arping_cmd \u003d [\u0027arping\u0027, \u0027-A\u0027, \u0027-I\u0027, iface_name, \u0027-c\u0027, count,"},{"line_number":647,"context_line":"                  \u0027-w\u0027, 1.5 * count, address]"},{"line_number":648,"context_line":"    try:"},{"line_number":649,"context_line":"        ip_wrapper \u003d IPWrapper(namespace\u003dns_name)"},{"line_number":650,"context_line":"        ip_wrapper.netns.execute(arping_cmd, check_exit_code\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba7be1f8_6401bf37","line":647,"updated":"2015-02-24 17:09:40.000000000","message":"Please add unit tests","commit_id":"25884e60e78a00a0684acdd71725e43202a5b1f4"},{"author":{"_account_id":14064,"name":"Kahou Lei","email":"kahou82@gmail.com","username":"kahou82"},"change_message_id":"995ec55bf13e77dbe3367012540ed1d62e5f482d","unresolved":false,"context_lines":[{"line_number":644,"context_line":""},{"line_number":645,"context_line":"def _arping(ns_name, iface_name, address, count):"},{"line_number":646,"context_line":"    arping_cmd \u003d [\u0027arping\u0027, \u0027-A\u0027, \u0027-I\u0027, iface_name, \u0027-c\u0027, count,"},{"line_number":647,"context_line":"                  \u0027-w\u0027, 1.5 * count, address]"},{"line_number":648,"context_line":"    try:"},{"line_number":649,"context_line":"        ip_wrapper \u003d IPWrapper(namespace\u003dns_name)"},{"line_number":650,"context_line":"        ip_wrapper.netns.execute(arping_cmd, check_exit_code\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_ced273ff","line":647,"updated":"2015-02-25 03:40:41.000000000","message":"How do you ensure that it is experiencing a huge latency instead of missing an interface?","commit_id":"b4f56b2b5e7e91d7b7abad64be08a1c6c8b71e82"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"5ca4ececba6a95ccfe92513060ef6b078f3402ef","unresolved":false,"context_lines":[{"line_number":644,"context_line":""},{"line_number":645,"context_line":"def _arping(ns_name, iface_name, address, count):"},{"line_number":646,"context_line":"    arping_cmd \u003d [\u0027arping\u0027, \u0027-A\u0027, \u0027-I\u0027, iface_name, \u0027-c\u0027, count,"},{"line_number":647,"context_line":"                  \u0027-w\u0027, 1.5 * count, address]"},{"line_number":648,"context_line":"    try:"},{"line_number":649,"context_line":"        ip_wrapper \u003d IPWrapper(namespace\u003dns_name)"},{"line_number":650,"context_line":"        ip_wrapper.netns.execute(arping_cmd, check_exit_code\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_786bdf84","line":647,"in_reply_to":"ba7be1f8_69518135","updated":"2015-02-25 22:00:56.000000000","message":"I\u0027m ok with not ensuring focused functional coverage for this change given how potentially expensive creating such a change promises to be, but I do want to see a comment justifying the timeout and its value so that future maintainers have as much detail as possible when they consider making modifications.","commit_id":"b4f56b2b5e7e91d7b7abad64be08a1c6c8b71e82"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"79df591bbce5be168a6b77266ef8e2bdad12a57c","unresolved":false,"context_lines":[{"line_number":644,"context_line":""},{"line_number":645,"context_line":"def _arping(ns_name, iface_name, address, count):"},{"line_number":646,"context_line":"    arping_cmd \u003d [\u0027arping\u0027, \u0027-A\u0027, \u0027-I\u0027, iface_name, \u0027-c\u0027, count,"},{"line_number":647,"context_line":"                  \u0027-w\u0027, 1.5 * count, address]"},{"line_number":648,"context_line":"    try:"},{"line_number":649,"context_line":"        ip_wrapper \u003d IPWrapper(namespace\u003dns_name)"},{"line_number":650,"context_line":"        ip_wrapper.netns.execute(arping_cmd, check_exit_code\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_69518135","line":647,"in_reply_to":"ba7be1f8_ced273ff","updated":"2015-02-25 04:48:40.000000000","message":"A multi-second latency would be very uncommon for an arping, wouldn\u0027t it? And even then, we don\u0027t actually examine whether or not this succeeds (we can\u0027t, with eventlet.spawn_n which is how this gets called by all of the helper functions).","commit_id":"b4f56b2b5e7e91d7b7abad64be08a1c6c8b71e82"}],"neutron/tests/unit/test_linux_ip_lib.py":[{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"92afee9aab98af8cb7b597d6988c19ef1d3041c4","unresolved":false,"context_lines":[{"line_number":960,"context_line":"        arping_cmd \u003d [\u0027arping\u0027, \u0027-A\u0027,"},{"line_number":961,"context_line":"                      \u0027-I\u0027, mock.sentinel.iface_name,"},{"line_number":962,"context_line":"                      \u0027-c\u0027, ARPING_COUNT,"},{"line_number":963,"context_line":"                      \u0027-w\u0027, mock.ANY,"},{"line_number":964,"context_line":"                      address]"},{"line_number":965,"context_line":"        ip_wrapper.netns.execute.assert_any_call(arping_cmd,"},{"line_number":966,"context_line":"                                                 check_exit_code\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_4e84c35d","line":963,"updated":"2015-02-25 03:22:17.000000000","message":"shouldn\u0027t this be tested that -w is 1.5 * ARPING_COUNT?","commit_id":"b4f56b2b5e7e91d7b7abad64be08a1c6c8b71e82"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"5ca4ececba6a95ccfe92513060ef6b078f3402ef","unresolved":false,"context_lines":[{"line_number":960,"context_line":"        arping_cmd \u003d [\u0027arping\u0027, \u0027-A\u0027,"},{"line_number":961,"context_line":"                      \u0027-I\u0027, mock.sentinel.iface_name,"},{"line_number":962,"context_line":"                      \u0027-c\u0027, ARPING_COUNT,"},{"line_number":963,"context_line":"                      \u0027-w\u0027, mock.ANY,"},{"line_number":964,"context_line":"                      address]"},{"line_number":965,"context_line":"        ip_wrapper.netns.execute.assert_any_call(arping_cmd,"},{"line_number":966,"context_line":"                                                 check_exit_code\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_f20e0ee4","line":963,"in_reply_to":"ba7be1f8_1465751d","updated":"2015-02-25 22:00:56.000000000","message":"+1\n\nSee: http://googletesting.blogspot.com/2015/01/testing-on-toilet-change-detector-tests.html","commit_id":"b4f56b2b5e7e91d7b7abad64be08a1c6c8b71e82"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"cfd26153d58bf7b2a242ddb5013b0ec9a1914faf","unresolved":false,"context_lines":[{"line_number":960,"context_line":"        arping_cmd \u003d [\u0027arping\u0027, \u0027-A\u0027,"},{"line_number":961,"context_line":"                      \u0027-I\u0027, mock.sentinel.iface_name,"},{"line_number":962,"context_line":"                      \u0027-c\u0027, ARPING_COUNT,"},{"line_number":963,"context_line":"                      \u0027-w\u0027, mock.ANY,"},{"line_number":964,"context_line":"                      address]"},{"line_number":965,"context_line":"        ip_wrapper.netns.execute.assert_any_call(arping_cmd,"},{"line_number":966,"context_line":"                                                 check_exit_code\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_1465751d","line":963,"in_reply_to":"ba7be1f8_49f03d67","updated":"2015-02-25 07:55:57.000000000","message":"+1 Terry","commit_id":"b4f56b2b5e7e91d7b7abad64be08a1c6c8b71e82"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"79df591bbce5be168a6b77266ef8e2bdad12a57c","unresolved":false,"context_lines":[{"line_number":960,"context_line":"        arping_cmd \u003d [\u0027arping\u0027, \u0027-A\u0027,"},{"line_number":961,"context_line":"                      \u0027-I\u0027, mock.sentinel.iface_name,"},{"line_number":962,"context_line":"                      \u0027-c\u0027, ARPING_COUNT,"},{"line_number":963,"context_line":"                      \u0027-w\u0027, mock.ANY,"},{"line_number":964,"context_line":"                      address]"},{"line_number":965,"context_line":"        ip_wrapper.netns.execute.assert_any_call(arping_cmd,"},{"line_number":966,"context_line":"                                                 check_exit_code\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_49f03d67","line":963,"in_reply_to":"ba7be1f8_4e84c35d","updated":"2015-02-25 04:48:40.000000000","message":"I do not condone tests that merely are exact copies of code just to see if anything changes at all. I see no point in writing code twice. The whole point of test code is that you can use it to verify behavior after you make changes to non-test code. Having to change the test when you make changes completely misses the point, in my opinion.\n\nHard-coding the test to mimic exactly the value of the timeout even though that is the kind of thing someone may change in the future--when it doesn\u0027t change the overall behavior of the function, is exactly the kind of thing someone shouldn\u0027t do in a unit test in my opinion. Otherwise, it\u0027s just writing code twice for no good reason. \"You changed this code, are you sure? (Y/N)\"","commit_id":"b4f56b2b5e7e91d7b7abad64be08a1c6c8b71e82"}]}
