)]}'
{"neutron/agent/l3/agent.py":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"2c7b67ca5aa0e670efb2bd7a875631c4044b8e16","unresolved":false,"context_lines":[{"line_number":433,"context_line":"        network_id \u003d kwargs[\u0027network\u0027][\u0027id\u0027]"},{"line_number":434,"context_line":"        for ri in self.router_info.values():"},{"line_number":435,"context_line":"            # cannot iterate [None]"},{"line_number":436,"context_line":"            ri_ex_gw_port \u003d [ri.ex_gw_port] if ri.ex_gw_port else []"},{"line_number":437,"context_line":"            ports \u003d itertools.chain(ri.internal_ports, ri_ex_gw_port)"},{"line_number":438,"context_line":"            port_belongs \u003d lambda p: p[\u0027network_id\u0027] \u003d\u003d network_id"},{"line_number":439,"context_line":"            if any(port_belongs(p) for p in ports):"},{"line_number":440,"context_line":"                update \u003d queue.RouterUpdate("}],"source_content_type":"text/x-python","patch_set":1,"id":"5f4e5783_3cd82079","line":437,"range":{"start_line":436,"start_character":0,"end_line":437,"end_character":69},"updated":"2017-10-17 08:55:55.000000000","message":"How about:\n\n ports \u003d list(ri.internal_ports)\n if ri.ex_gw_port:\n     ports.append(ri.ex_gw_port)","commit_id":"b4721276ee76d5e23fd6906773fed3d7d20a2cff"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"a555946302c6f51c82a0260bcec1e64d024b24fd","unresolved":false,"context_lines":[{"line_number":433,"context_line":"        network_id \u003d kwargs[\u0027network\u0027][\u0027id\u0027]"},{"line_number":434,"context_line":"        for ri in self.router_info.values():"},{"line_number":435,"context_line":"            # cannot iterate [None]"},{"line_number":436,"context_line":"            ri_ex_gw_port \u003d [ri.ex_gw_port] if ri.ex_gw_port else []"},{"line_number":437,"context_line":"            ports \u003d itertools.chain(ri.internal_ports, ri_ex_gw_port)"},{"line_number":438,"context_line":"            port_belongs \u003d lambda p: p[\u0027network_id\u0027] \u003d\u003d network_id"},{"line_number":439,"context_line":"            if any(port_belongs(p) for p in ports):"},{"line_number":440,"context_line":"                update \u003d queue.RouterUpdate("}],"source_content_type":"text/x-python","patch_set":1,"id":"5f4e5783_48ed44b5","line":437,"range":{"start_line":436,"start_character":0,"end_line":437,"end_character":69},"in_reply_to":"5f4e5783_3cd82079","updated":"2017-10-17 19:59:37.000000000","message":"Yeah, that should work too, and gets rid of the itertools import.","commit_id":"b4721276ee76d5e23fd6906773fed3d7d20a2cff"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"b48d0e04f94c382714bf56985f9b55bae08cff40","unresolved":false,"context_lines":[{"line_number":429,"context_line":""},{"line_number":430,"context_line":"    def network_update(self, context, **kwargs):"},{"line_number":431,"context_line":"        network_id \u003d kwargs[\u0027network\u0027][\u0027id\u0027]"},{"line_number":432,"context_line":"        for ri in self.router_info.values():"},{"line_number":433,"context_line":"            ports \u003d list(ri.internal_ports)"},{"line_number":434,"context_line":"            if ri.ex_gw_port:"},{"line_number":435,"context_line":"                ports.append(ri.ex_gw_port)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_dc6c110a","line":432,"updated":"2017-10-19 08:06:05.000000000","message":"I\u0027m not an L3 expert but it looks that in test_network_update UT self.router_info is empty dict and because of that this test fails","commit_id":"48c1f35a2ec93c3d1d3c0bc0bdba30df7ea8f78d"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"36fd086f04d593d1e6f144241ecd2ac672eb487d","unresolved":false,"context_lines":[{"line_number":429,"context_line":""},{"line_number":430,"context_line":"    def network_update(self, context, **kwargs):"},{"line_number":431,"context_line":"        network_id \u003d kwargs[\u0027network\u0027][\u0027id\u0027]"},{"line_number":432,"context_line":"        for ri in self.router_info.values():"},{"line_number":433,"context_line":"            ports \u003d list(ri.internal_ports)"},{"line_number":434,"context_line":"            if ri.ex_gw_port:"},{"line_number":435,"context_line":"                ports.append(ri.ex_gw_port)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_045c7d7c","line":432,"in_reply_to":"3f4b6375_dc6c110a","updated":"2017-10-19 21:24:56.000000000","message":"Yes, it fails locally for me too, need to look at the test again.","commit_id":"48c1f35a2ec93c3d1d3c0bc0bdba30df7ea8f78d"}],"neutron/tests/unit/agent/l3/test_agent.py":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"029d330ebb2ad0b0e8c8a28e12b5ff76ac769b53","unresolved":false,"context_lines":[{"line_number":2312,"context_line":"        agent._queue \u003d mock.Mock()"},{"line_number":2313,"context_line":"        network \u003d {\u0027id\u0027: _uuid()}"},{"line_number":2314,"context_line":"        agent.network_update(None, network\u003dnetwork)"},{"line_number":2315,"context_line":"        self.assertFalse(agent._queue.called)"},{"line_number":2316,"context_line":""},{"line_number":2317,"context_line":"    def test_network_update(self):"},{"line_number":2318,"context_line":"        router \u003d l3_test_common.prepare_router_data(num_internal_ports\u003d2)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f4b6375_95652e48","line":2315,"range":{"start_line":2315,"start_character":25,"end_line":2315,"end_character":37},"updated":"2017-10-20 07:39:25.000000000","message":"Should it be agent._queue.add.called ?","commit_id":"c08b7cb8073acf1d777c08659fb80c13f1b41eb2"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"83f01fcbf7a0c6e04ecc7a767115f476ef8c86d4","unresolved":false,"context_lines":[{"line_number":2312,"context_line":"        agent._queue \u003d mock.Mock()"},{"line_number":2313,"context_line":"        network \u003d {\u0027id\u0027: _uuid()}"},{"line_number":2314,"context_line":"        agent.network_update(None, network\u003dnetwork)"},{"line_number":2315,"context_line":"        self.assertFalse(agent._queue.called)"},{"line_number":2316,"context_line":""},{"line_number":2317,"context_line":"    def test_network_update(self):"},{"line_number":2318,"context_line":"        router \u003d l3_test_common.prepare_router_data(num_internal_ports\u003d2)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f4b6375_ad91f39b","line":2315,"range":{"start_line":2315,"start_character":25,"end_line":2315,"end_character":37},"in_reply_to":"3f4b6375_95652e48","updated":"2017-10-20 20:14:11.000000000","message":"Done","commit_id":"c08b7cb8073acf1d777c08659fb80c13f1b41eb2"}]}
