)]}'
{"neutron/tests/functional/db/test_network.py":[{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"94487d851828a778cb4ce042b2b2cad1f2985946","unresolved":false,"context_lines":[{"line_number":87,"context_line":"                \u0027fixed_ips\u0027: constants.ATTR_NOT_SPECIFIED}"},{"line_number":88,"context_line":"        return self.plugin.create_port(self.cxt, {\u0027port\u0027: port})"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def _check_rbac(self, network_id, is_none\u003dTrue, external\u003dFalse):"},{"line_number":91,"context_line":"        action \u003d \u0027access_as_external\u0027 if external else \u0027access_as_shared\u0027"},{"line_number":92,"context_line":"        rbac \u003d network_obj.NetworkRBAC.get_object("},{"line_number":93,"context_line":"            self.cxt, object_id\u003dnetwork_id, action\u003daction, target_tenant\u003d\u0027*\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_54d63655","line":90,"updated":"2018-10-12 20:30:36.000000000","message":"I agree with Slawek\u0027s commentary on the other patchset; it would be much easier to read if neither is_none nor external had defaults.  Then the tests become very expressive, telling the reader precisely what they mean.","commit_id":"a7e5bda4549c31dad70bc64f3e27778cc6cae498"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"fc743e8343f4e4dec9b3193bf85532b2cc66a9a9","unresolved":false,"context_lines":[{"line_number":87,"context_line":"                \u0027fixed_ips\u0027: constants.ATTR_NOT_SPECIFIED}"},{"line_number":88,"context_line":"        return self.plugin.create_port(self.cxt, {\u0027port\u0027: port})"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def _check_rbac(self, network_id, is_none\u003dTrue, external\u003dFalse):"},{"line_number":91,"context_line":"        action \u003d \u0027access_as_external\u0027 if external else \u0027access_as_shared\u0027"},{"line_number":92,"context_line":"        rbac \u003d network_obj.NetworkRBAC.get_object("},{"line_number":93,"context_line":"            self.cxt, object_id\u003dnetwork_id, action\u003daction, target_tenant\u003d\u0027*\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_9a9dd46d","line":90,"in_reply_to":"3f79a3b5_54d63655","updated":"2018-10-13 08:45:08.000000000","message":"I\u0027ll change this to be more explicit.","commit_id":"a7e5bda4549c31dad70bc64f3e27778cc6cae498"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"94487d851828a778cb4ce042b2b2cad1f2985946","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        return self.plugin.create_port(self.cxt, {\u0027port\u0027: port})"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def _check_rbac(self, network_id, is_none\u003dTrue, external\u003dFalse):"},{"line_number":91,"context_line":"        action \u003d \u0027access_as_external\u0027 if external else \u0027access_as_shared\u0027"},{"line_number":92,"context_line":"        rbac \u003d network_obj.NetworkRBAC.get_object("},{"line_number":93,"context_line":"            self.cxt, object_id\u003dnetwork_id, action\u003daction, target_tenant\u003d\u0027*\u0027)"},{"line_number":94,"context_line":"        if is_none:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_f4de6269","line":91,"updated":"2018-10-12 20:30:36.000000000","message":"I find this hard to read, since the branching statement is in the middle of the line.  I don\u0027t think the added space to turn this into a standard if/else on 4 lines would harm things.","commit_id":"a7e5bda4549c31dad70bc64f3e27778cc6cae498"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"fc743e8343f4e4dec9b3193bf85532b2cc66a9a9","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        return self.plugin.create_port(self.cxt, {\u0027port\u0027: port})"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def _check_rbac(self, network_id, is_none\u003dTrue, external\u003dFalse):"},{"line_number":91,"context_line":"        action \u003d \u0027access_as_external\u0027 if external else \u0027access_as_shared\u0027"},{"line_number":92,"context_line":"        rbac \u003d network_obj.NetworkRBAC.get_object("},{"line_number":93,"context_line":"            self.cxt, object_id\u003dnetwork_id, action\u003daction, target_tenant\u003d\u0027*\u0027)"},{"line_number":94,"context_line":"        if is_none:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_3a8e0032","line":91,"in_reply_to":"3f79a3b5_f4de6269","updated":"2018-10-13 08:45:08.000000000","message":"Hmmm I like this Python one-line statement. But I shake of readability I\u0027ll change it.","commit_id":"a7e5bda4549c31dad70bc64f3e27778cc6cae498"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"94487d851828a778cb4ce042b2b2cad1f2985946","unresolved":false,"context_lines":[{"line_number":133,"context_line":"        network_data \u003d {extnet_apidef.EXTERNAL: True}"},{"line_number":134,"context_line":"        self._update_network(self.network_id, network_data)"},{"line_number":135,"context_line":"        self._check_rbac(self.network_id, is_none\u003dFalse)"},{"line_number":136,"context_line":"        self._check_rbac(self.network_id, is_none\u003dFalse, external\u003dTrue)"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def test_update_network_shared_to_internal(self):"},{"line_number":139,"context_line":"        self._create_network(self.tenant_1, self.network_id, True,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_14dc3e6f","line":136,"updated":"2018-10-12 20:30:36.000000000","message":"These two lines are an instance of where the default makes it look really weird.  In reality L135 is testing external \u003d False, but it looks like you\u0027re testing the same thing twice.  My first reaction was \"why is he calling it twice?  Wouldn\u0027t just the second one do?\"  But of course not, because of the default.","commit_id":"a7e5bda4549c31dad70bc64f3e27778cc6cae498"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"fc743e8343f4e4dec9b3193bf85532b2cc66a9a9","unresolved":false,"context_lines":[{"line_number":133,"context_line":"        network_data \u003d {extnet_apidef.EXTERNAL: True}"},{"line_number":134,"context_line":"        self._update_network(self.network_id, network_data)"},{"line_number":135,"context_line":"        self._check_rbac(self.network_id, is_none\u003dFalse)"},{"line_number":136,"context_line":"        self._check_rbac(self.network_id, is_none\u003dFalse, external\u003dTrue)"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def test_update_network_shared_to_internal(self):"},{"line_number":139,"context_line":"        self._create_network(self.tenant_1, self.network_id, True,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_1a91c453","line":136,"in_reply_to":"3f79a3b5_14dc3e6f","updated":"2018-10-13 08:45:08.000000000","message":"I\u0027ll make this explicit.","commit_id":"a7e5bda4549c31dad70bc64f3e27778cc6cae498"}]}
