)]}'
{"dragonflow/tests/unit/test_app_base.py":[{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"ce2330f07458971225987fe51e41b94e7231b955","unresolved":false,"context_lines":[{"line_number":87,"context_line":"fake_lswitch_default_subnets \u003d [{\"dhcp_ip\": \"10.0.0.2\","},{"line_number":88,"context_line":"                 \"name\": \"private-subnet\","},{"line_number":89,"context_line":"                 \"enable_dhcp\": True,"},{"line_number":90,"context_line":"                 \"lswitch\": \"fake_switch1\","},{"line_number":91,"context_line":"                 \"dns_nameservers\": [],"},{"line_number":92,"context_line":"                 \"topic\": \"fake_tenant1\","},{"line_number":93,"context_line":"                 \"gateway_ip\": \"10.0.0.1\","}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_04dc7517","line":90,"range":{"start_line":90,"start_character":0,"end_line":90,"end_character":43},"updated":"2017-01-25 03:32:26.000000000","message":"Since you are using it as the default subnet, the lswitch parameter should be different under different logical switch.","commit_id":"71de55a1cf8e78dc948f177efe30296cb6a1e6fb"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"0ebfdbb7e4115b64b4c759b64ab3622f73431be4","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                 \"id\": \"fake_subnet1\"}]"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"def make_fake_logic_switch(subnets\u003dfake_lswitch_default_subnets,"},{"line_number":100,"context_line":"        name\u003d\u0027private\u0027,"},{"line_number":101,"context_line":"        router_external\u003dFalse,"},{"line_number":102,"context_line":"        segmentation_id\u003d41,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_75e63c16","line":99,"range":{"start_line":99,"start_character":35,"end_line":99,"end_character":63},"updated":"2017-01-23 19:27:29.000000000","message":"Please don\u0027t use mutable objects as default params. (Even if in this case it\u0027s passable)","commit_id":"71de55a1cf8e78dc948f177efe30296cb6a1e6fb"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"0ebfdbb7e4115b64b4c759b64ab3622f73431be4","unresolved":false,"context_lines":[{"line_number":104,"context_line":"        topic\u003d\u0027fake_tenant1\u0027,"},{"line_number":105,"context_line":"        version\u003d2,"},{"line_number":106,"context_line":"        network_type\u003d\u0027vxlan\u0027,"},{"line_number":107,"context_line":"        id\u003d\u0027fake_switch1\u0027,"},{"line_number":108,"context_line":"        unique_key\u003d1,"},{"line_number":109,"context_line":"        **kwargs):"},{"line_number":110,"context_line":"    fake_switch \u003d db_models.LogicalSwitch(\"{}\")"},{"line_number":111,"context_line":"    fake_switch.inner_obj \u003d {"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_5e713c43","line":108,"range":{"start_line":107,"start_character":0,"end_line":108,"end_character":21},"updated":"2017-01-23 19:27:29.000000000","message":"Maybe make these mandatory?","commit_id":"71de55a1cf8e78dc948f177efe30296cb6a1e6fb"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"ce2330f07458971225987fe51e41b94e7231b955","unresolved":false,"context_lines":[{"line_number":97,"context_line":""},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"def make_fake_logic_switch(subnets\u003dfake_lswitch_default_subnets,"},{"line_number":100,"context_line":"        name\u003d\u0027private\u0027,"},{"line_number":101,"context_line":"        router_external\u003dFalse,"},{"line_number":102,"context_line":"        segmentation_id\u003d41,"},{"line_number":103,"context_line":"        mtu\u003d1450,"},{"line_number":104,"context_line":"        topic\u003d\u0027fake_tenant1\u0027,"},{"line_number":105,"context_line":"        version\u003d2,"},{"line_number":106,"context_line":"        network_type\u003d\u0027vxlan\u0027,"},{"line_number":107,"context_line":"        id\u003d\u0027fake_switch1\u0027,"},{"line_number":108,"context_line":"        unique_key\u003d1,"},{"line_number":109,"context_line":"        **kwargs):"},{"line_number":110,"context_line":"    fake_switch \u003d db_models.LogicalSwitch(\"{}\")"},{"line_number":111,"context_line":"    fake_switch.inner_obj \u003d {"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_44d03dca","line":108,"range":{"start_line":100,"start_character":0,"end_line":108,"end_character":21},"updated":"2017-01-25 03:32:26.000000000","message":"like Omer said, some parameter can be omitted(just use hardcode value, like router_external, mtu), some can have a default value(like name, segmentation_id, topic, version, network_type), and some can be mandatory","commit_id":"71de55a1cf8e78dc948f177efe30296cb6a1e6fb"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"0ebfdbb7e4115b64b4c759b64ab3622f73431be4","unresolved":false,"context_lines":[{"line_number":141,"context_line":"        name\u003d\u0027public\u0027,"},{"line_number":142,"context_line":"        router_external\u003dTrue,"},{"line_number":143,"context_line":"        id\u003d\u0027fake_external_switch1\u0027,"},{"line_number":144,"context_line":"        unique_key\u003dNone)"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"def make_fake_port(subnets\u003d[\u0027fake_subnet1\u0027],"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_7e07d881","line":144,"range":{"start_line":144,"start_character":19,"end_line":144,"end_character":23},"updated":"2017-01-23 19:27:29.000000000","message":"Shouldn\u0027t this be 2?","commit_id":"71de55a1cf8e78dc948f177efe30296cb6a1e6fb"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"0ebfdbb7e4115b64b4c759b64ab3622f73431be4","unresolved":false,"context_lines":[{"line_number":144,"context_line":"        unique_key\u003dNone)"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"def make_fake_port(subnets\u003d[\u0027fake_subnet1\u0027],"},{"line_number":148,"context_line":"                   name\u003d\u0027fake_local_port\u0027,"},{"line_number":149,"context_line":"                   macs\u003d[\u00270a:0b:0c:0d:0e:0f\u0027],"},{"line_number":150,"context_line":"                   lswitch\u003d\u0027fake_switch1\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a3905b3_fe42e8ac","line":147,"range":{"start_line":147,"start_character":29,"end_line":147,"end_character":41},"updated":"2017-01-23 19:27:29.000000000","message":"Same here, don\u0027t use mutable objects as default values","commit_id":"71de55a1cf8e78dc948f177efe30296cb6a1e6fb"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"01aee0ea4cbdbc331b04d9a3399a08973137b60e","unresolved":false,"context_lines":[{"line_number":146,"context_line":""},{"line_number":147,"context_line":"fake_external_switch1 \u003d make_fake_logic_switch("},{"line_number":148,"context_line":"        subnets\u003dexternal_switch1_subnets,"},{"line_number":149,"context_line":"        unique_key\u003dNone,"},{"line_number":150,"context_line":"        name\u003d\u0027public\u0027,"},{"line_number":151,"context_line":"        router_external\u003dTrue,"},{"line_number":152,"context_line":"        segmentation_id\u003d69,"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a461143_dd3c85ca","line":149,"range":{"start_line":149,"start_character":19,"end_line":149,"end_character":23},"updated":"2017-01-29 15:59:08.000000000","message":"Shouldn\u0027t this still be 2?","commit_id":"e2ca9e454a1085f51941860f27e57133b7ddcc6a"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"01aee0ea4cbdbc331b04d9a3399a08973137b60e","unresolved":false,"context_lines":[{"line_number":157,"context_line":""},{"line_number":158,"context_line":"def make_fake_port("},{"line_number":159,"context_line":"                   name\u003d\u0027fake_local_port\u0027,"},{"line_number":160,"context_line":"                   macs\u003d[\u00270a:0b:0c:0d:0e:0f\u0027],"},{"line_number":161,"context_line":"                   lswitch\u003d\u0027fake_switch1\u0027,"},{"line_number":162,"context_line":"                   enabled\u003dTrue,"},{"line_number":163,"context_line":"                   topic\u003d\u0027fake_tenant1\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a461143_1d336df7","line":160,"range":{"start_line":160,"start_character":0,"end_line":160,"end_character":46},"updated":"2017-01-29 15:59:08.000000000","message":"Don\u0027t use mutable objects as default values. You can turn this into a tuple: macs\u003d(\u002700:...:00\u0027,)","commit_id":"e2ca9e454a1085f51941860f27e57133b7ddcc6a"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"01aee0ea4cbdbc331b04d9a3399a08973137b60e","unresolved":false,"context_lines":[{"line_number":161,"context_line":"                   lswitch\u003d\u0027fake_switch1\u0027,"},{"line_number":162,"context_line":"                   enabled\u003dTrue,"},{"line_number":163,"context_line":"                   topic\u003d\u0027fake_tenant1\u0027,"},{"line_number":164,"context_line":"                   ips\u003d[\u002710.0.0.11\u0027],"},{"line_number":165,"context_line":"                   device_owner\u003d\u0027compute:None\u0027,"},{"line_number":166,"context_line":"                   chassis\u003d\u0027fake_host\u0027,"},{"line_number":167,"context_line":"                   version\u003d2,"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a461143_3d3029e8","line":164,"range":{"start_line":164,"start_character":0,"end_line":164,"end_character":37},"updated":"2017-01-29 15:59:08.000000000","message":"Same here","commit_id":"e2ca9e454a1085f51941860f27e57133b7ddcc6a"},{"author":{"_account_id":23766,"name":"Dima Kuznetsov","email":"dima.kuznetsov@toganetworks.com","username":"dimak"},"change_message_id":"6ff75e3397943db380c2dac55eb58675b2accaac","unresolved":false,"context_lines":[{"line_number":202,"context_line":"            \u0027device_id\u0027: device_id,"},{"line_number":203,"context_line":"            \u0027extra_dhcp_opts\u0027: extra_dhcp_opts}"},{"line_number":204,"context_line":"    fake_port.external_dict \u003d {"},{"line_number":205,"context_line":"            \u0027is_local\u0027: is_local,"},{"line_number":206,"context_line":"            \u0027segmentation_id\u0027: segmentation_id,"},{"line_number":207,"context_line":"            \u0027ofport\u0027: ofport,"},{"line_number":208,"context_line":"            \u0027network_type\u0027: network_type,"},{"line_number":209,"context_line":"            \u0027local_network_id\u0027: local_network_id}"},{"line_number":210,"context_line":"    return fake_port"},{"line_number":211,"context_line":""},{"line_number":212,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3a461143_42a9947a","line":209,"range":{"start_line":205,"start_character":0,"end_line":209,"end_character":49},"updated":"2017-01-29 15:11:35.000000000","message":"Use 4-char wide indent","commit_id":"e2ca9e454a1085f51941860f27e57133b7ddcc6a"},{"author":{"_account_id":23766,"name":"Dima Kuznetsov","email":"dima.kuznetsov@toganetworks.com","username":"dimak"},"change_message_id":"6ff75e3397943db380c2dac55eb58675b2accaac","unresolved":false,"context_lines":[{"line_number":216,"context_line":""},{"line_number":217,"context_line":""},{"line_number":218,"context_line":"fake_local_port1_dhcp_opts \u003d ["},{"line_number":219,"context_line":"        {"},{"line_number":220,"context_line":"            \u0027opt_value\u0027: \"10.0.0.1\","},{"line_number":221,"context_line":"            \u0027opt_name\u0027: \"3\","},{"line_number":222,"context_line":"            \u0027ip_version\u0027: 4},"},{"line_number":223,"context_line":"        {"},{"line_number":224,"context_line":"            \u0027opt_value\u0027: \"0.0.0.0/0,10.0.0.1\","},{"line_number":225,"context_line":"            \u0027opt_name\u0027: \"121\","},{"line_number":226,"context_line":"            \u0027ip_version\u0027: 4}]"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"fake_local_port1 \u003d make_fake_local_port("}],"source_content_type":"text/x-python","patch_set":5,"id":"3a461143_62b850c9","line":226,"range":{"start_line":219,"start_character":0,"end_line":226,"end_character":29},"updated":"2017-01-29 15:11:35.000000000","message":"Use 4-char wide indent","commit_id":"e2ca9e454a1085f51941860f27e57133b7ddcc6a"},{"author":{"_account_id":23766,"name":"Dima Kuznetsov","email":"dima.kuznetsov@toganetworks.com","username":"dimak"},"change_message_id":"6ff75e3397943db380c2dac55eb58675b2accaac","unresolved":false,"context_lines":[{"line_number":227,"context_line":""},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"fake_local_port1 \u003d make_fake_local_port("},{"line_number":230,"context_line":"        macs\u003d[\u0027fa:16:3e:8c:2e:b3\u0027],"},{"line_number":231,"context_line":"        ips\u003d[\u002710.0.0.6\u0027],"},{"line_number":232,"context_line":"        network_type\u003d\u0027vxlan\u0027,"},{"line_number":233,"context_line":"        subnets\u003d[\u0027fake_subnet1\u0027],"},{"line_number":234,"context_line":"        id\u003d\u0027fake_port1\u0027,"},{"line_number":235,"context_line":"        extra_dhcp_opts\u003dfake_local_port1_dhcp_opts)"},{"line_number":236,"context_line":""},{"line_number":237,"context_line":""},{"line_number":238,"context_line":"fake_ovs_port1 \u003d mock.Mock(name\u003d\u0027fake_ovs_port1\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a461143_82bd3cb9","line":235,"range":{"start_line":230,"start_character":0,"end_line":235,"end_character":51},"updated":"2017-01-29 15:11:35.000000000","message":"Use 4-char wide indent","commit_id":"e2ca9e454a1085f51941860f27e57133b7ddcc6a"}]}
