)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"cb27c8a5aed1fbb70f5af112d677a316b07928a2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c8838db2_a4e94a44","updated":"2023-02-15 14:28:22.000000000","message":"Thanks for adding this. Just a question re: the API below.","commit_id":"a27d294e2d9f9a30799d9bbdb2cd89f39ecaf1e3"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"e747e5c6750e706e0eaf58bdc86b78e1c867d67d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"cf6c877f_0843abaa","updated":"2023-02-15 10:52:37.000000000","message":"You\u0027ll need functional tests here","commit_id":"a27d294e2d9f9a30799d9bbdb2cd89f39ecaf1e3"},{"author":{"_account_id":34451,"name":"Fernando Royo","email":"froyo@redhat.com","username":"froyo"},"change_message_id":"d8abc900edecbc15c6f88751b2c89d054d69828f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"407e50bd_ba124536","updated":"2023-02-16 11:41:53.000000000","message":"LGTM","commit_id":"1b3b7ba32427be099858ad0cb66de052308649a4"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"e8bb1c76136d1401d2a786053db8c092cc80a020","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"857a9fd8_249957e1","updated":"2023-03-09 11:20:29.000000000","message":"Seems this is not working","commit_id":"1b3b7ba32427be099858ad0cb66de052308649a4"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"a43e0b03db0f6a500abe08969fec8919658fb96c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"0aa927ad_7ce9a247","updated":"2023-03-09 11:23:09.000000000","message":"ahh, sorry, it is... was a typo on my end","commit_id":"1b3b7ba32427be099858ad0cb66de052308649a4"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"472bdb7258aa6844d89932d11518eb40a53e85ce","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"36b10793_97110421","updated":"2023-03-16 15:21:13.000000000","message":"Rebased on top of https://review.opendev.org/c/openstack/ovsdbapp/+/877661","commit_id":"d8d6df556b7120985189dc49d2cd867a310a303f"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"751d904459f13c8dc0756782c01c33d6edc38626","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"80877e2c_4f44e72b","updated":"2023-03-17 13:45:33.000000000","message":"Ok, maybe I misread the failre at https://74691508b25c03517c30-c97c23ab6f4359f804a71e4cf9ffc463.ssl.cf5.rackcdn.com/873853/4/check/openstack-tox-functional/bc4013e/testr_results.html ? Because now removing the changes from ls.uuid -\u003e ls works...\n\n```\ndiff --git a/ovsdbapp/tests/functional/schema/ovn_northbound/test_impl_idl.py b/ovsdbapp/tests/functional/schema/ovn_northbound/test_impl_idl.py\nindex 2a1872a..6f2e5d8 100644\n--- a/ovsdbapp/tests/functional/schema/ovn_northbound/test_impl_idl.py\n+++ b/ovsdbapp/tests/functional/schema/ovn_northbound/test_impl_idl.py\n@@ -110,13 +110,13 @@ class TestLogicalSwitchOps(OvnNorthboundTest):\n     def test_ls_get_localnet_ports(self):\n         ls \u003d self._ls_add()\n         self._lsp_add(ls, None, type\u003dconst.LOCALNET)\n-        localnet_ports \u003d self.api.ls_get_localnet_ports(ls).execute(\n+        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute(\n             check_error\u003dTrue)\n         self.assertEqual(ls.ports, localnet_ports)\n \n     def test_ls_get_localnet_ports_no_ports(self):\n         ls \u003d self._ls_add()\n-        localnet_ports \u003d self.api.ls_get_localnet_ports(ls).execute(\n+        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute(\n             check_error\u003dTrue)\n         self.assertEqual([], localnet_ports)\n```\ngets everything to pass for me locally.","commit_id":"f92b164f6aa32c615849a6279c591b3e6a908164"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"3b6fac434ca00db0b075fe7c251c1fd6e4fd888f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"0ffb9e3e_aee2c049","in_reply_to":"80877e2c_4f44e72b","updated":"2023-03-17 14:23:55.000000000","message":"Umm, maybe lsp_add takes the whole ls instead of the uuid as parameter and the ls_get_localnet_ports needs just the uuid, let me change that back then","commit_id":"f92b164f6aa32c615849a6279c591b3e6a908164"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"92453833b0456ccb40a51965c90e30ad71764209","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"a9799111_91c38d4a","updated":"2023-03-31 06:14:46.000000000","message":"recheck","commit_id":"a6cdcabee8e2696524a9bdc38b7ad87d9566a9aa"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"5abf9a0b6d07cdc83f0ef42f451f3f977c9317de","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"497b47b5_26a27d4b","updated":"2023-04-03 05:30:48.000000000","message":"recheck openstack-tox-functional","commit_id":"a6cdcabee8e2696524a9bdc38b7ad87d9566a9aa"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"f6251ffc92988b51b72e9db95315444b468a8eec","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"430d8ecc_5ae10170","updated":"2023-03-28 12:19:43.000000000","message":"recheck openstack-tox-functional unrelated","commit_id":"a6cdcabee8e2696524a9bdc38b7ad87d9566a9aa"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"3f7ebbba387f9ae2cfa00dff5ecce2a11f9f80d4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"df8996fa_f9442f58","updated":"2023-03-28 17:23:48.000000000","message":"recheck openstack-tox-functional unrelated","commit_id":"a6cdcabee8e2696524a9bdc38b7ad87d9566a9aa"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"8b34c38adac76796ad042ce24127163e8f72fe49","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"fcd18965_6dc5ee77","updated":"2023-03-30 06:24:47.000000000","message":"recheck openstack-tox-functional unrelated","commit_id":"a6cdcabee8e2696524a9bdc38b7ad87d9566a9aa"}],"ovsdbapp/schema/ovn_northbound/api.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"e747e5c6750e706e0eaf58bdc86b78e1c867d67d","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"        :param switch:    The name or uuid of the switch"},{"line_number":44,"context_line":"        :type switch:     string or uuid.UUID"},{"line_number":45,"context_line":"        :param if_exists: If True, don\u0027t fail if the switch doesn\u0027t exist"},{"line_number":46,"context_line":"        :type if_exists:  boolean"},{"line_number":47,"context_line":"        :returns:         :class:`Command` with no result"},{"line_number":48,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"a92cc59f_57c55432","line":45,"range":{"start_line":45,"start_character":9,"end_line":45,"end_character":14},"updated":"2023-02-15 10:52:37.000000000","message":"nit: unrelated","commit_id":"a27d294e2d9f9a30799d9bbdb2cd89f39ecaf1e3"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"2300ebe33d61cc5b497f167b29d99ef5ea320af9","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"        :param switch:    The name or uuid of the switch"},{"line_number":44,"context_line":"        :type switch:     string or uuid.UUID"},{"line_number":45,"context_line":"        :param if_exists: If True, don\u0027t fail if the switch doesn\u0027t exist"},{"line_number":46,"context_line":"        :type if_exists:  boolean"},{"line_number":47,"context_line":"        :returns:         :class:`Command` with no result"},{"line_number":48,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"2f6f975a_576e7862","line":45,"range":{"start_line":45,"start_character":9,"end_line":45,"end_character":14},"in_reply_to":"a92cc59f_57c55432","updated":"2023-02-16 09:36:41.000000000","message":"I know, but as it is a typo correction I did not want to create a different patch set just for that. But if you think if better I\u0027ll do, no problem","commit_id":"a27d294e2d9f9a30799d9bbdb2cd89f39ecaf1e3"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"cb27c8a5aed1fbb70f5af112d677a316b07928a2","unresolved":true,"context_lines":[{"line_number":97,"context_line":"        \"\"\""},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"    @abc.abstractmethod"},{"line_number":100,"context_line":"    def ls_get_localnet_port(self, switch, if_exists\u003dFalse):"},{"line_number":101,"context_line":"        \"\"\"Get localnet port on logical switch \u0027switch\u0027"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"        :param if_exists: If True, don\u0027t fail if the switch doesn\u0027t exist"}],"source_content_type":"text/x-python","patch_set":1,"id":"c4b51f6a_0340dd46","line":100,"updated":"2023-02-15 14:28:22.000000000","message":"Since a logical switch can have multiple localnet ports, it seems like we should either make this has_localnet_port() if we are just returning the first one, or make this get_localnet_ports() and return them all. (or both, since exiting early using iterators is a nice benefit if all you really need to know is that there is one)","commit_id":"a27d294e2d9f9a30799d9bbdb2cd89f39ecaf1e3"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"2300ebe33d61cc5b497f167b29d99ef5ea320af9","unresolved":false,"context_lines":[{"line_number":97,"context_line":"        \"\"\""},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"    @abc.abstractmethod"},{"line_number":100,"context_line":"    def ls_get_localnet_port(self, switch, if_exists\u003dFalse):"},{"line_number":101,"context_line":"        \"\"\"Get localnet port on logical switch \u0027switch\u0027"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"        :param if_exists: If True, don\u0027t fail if the switch doesn\u0027t exist"}],"source_content_type":"text/x-python","patch_set":1,"id":"8a97ac0e_e758d1b1","line":100,"in_reply_to":"c4b51f6a_0340dd46","updated":"2023-02-16 09:36:41.000000000","message":"Done","commit_id":"a27d294e2d9f9a30799d9bbdb2cd89f39ecaf1e3"}],"ovsdbapp/schema/ovn_northbound/commands.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"e747e5c6750e706e0eaf58bdc86b78e1c867d67d","unresolved":true,"context_lines":[{"line_number":92,"context_line":"    def run_idl(self, txn):"},{"line_number":93,"context_line":"        try:"},{"line_number":94,"context_line":"            lswitch \u003d self.api.lookup(\u0027Logical_Switch\u0027, self.switch)"},{"line_number":95,"context_line":"            ports \u003d [p for p in lswitch.ports if self.localnet_port(p)]"},{"line_number":96,"context_line":"            if ports:"},{"line_number":97,"context_line":"                self.result \u003d rowview.RowView(ports[0])"},{"line_number":98,"context_line":"        except idlutils.RowNotFound as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"c666628e_2d1ade04","line":95,"range":{"start_line":95,"start_character":20,"end_line":95,"end_character":71},"updated":"2023-02-15 10:52:37.000000000","message":"If we need only the first one, we can create an iterator here and use \"next\"\n\nports \u003d iter(p for p in lswitch.ports if self.localnet_port(p))\ntry:\n  self.result \u003d rowview.RowView(next(ports))\nexcept StopIteration:\n  pass","commit_id":"a27d294e2d9f9a30799d9bbdb2cd89f39ecaf1e3"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"2300ebe33d61cc5b497f167b29d99ef5ea320af9","unresolved":false,"context_lines":[{"line_number":92,"context_line":"    def run_idl(self, txn):"},{"line_number":93,"context_line":"        try:"},{"line_number":94,"context_line":"            lswitch \u003d self.api.lookup(\u0027Logical_Switch\u0027, self.switch)"},{"line_number":95,"context_line":"            ports \u003d [p for p in lswitch.ports if self.localnet_port(p)]"},{"line_number":96,"context_line":"            if ports:"},{"line_number":97,"context_line":"                self.result \u003d rowview.RowView(ports[0])"},{"line_number":98,"context_line":"        except idlutils.RowNotFound as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"0d2c2ef1_6d681ae4","line":95,"range":{"start_line":95,"start_character":20,"end_line":95,"end_character":71},"in_reply_to":"c666628e_2d1ade04","updated":"2023-02-16 09:36:41.000000000","message":"based on Terry\u0027s comment, I\u0027m returning all instead","commit_id":"a27d294e2d9f9a30799d9bbdb2cd89f39ecaf1e3"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"12745bbbed873a20cb21d1398f5afd56807de47b","unresolved":true,"context_lines":[{"line_number":96,"context_line":"                           if self.localnet_port(p)]"},{"line_number":97,"context_line":"        except idlutils.RowNotFound as e:"},{"line_number":98,"context_line":"            if self.if_exists:"},{"line_number":99,"context_line":"                return []"},{"line_number":100,"context_line":"            msg \u003d \"Logical Switch %s does not exist\" % self.switch"},{"line_number":101,"context_line":"            raise RuntimeError(msg) from e"},{"line_number":102,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"573dd66a_67ea77c1","line":99,"updated":"2023-03-16 16:01:35.000000000","message":"self.result \u003d []","commit_id":"cde9057e597dcd779326ac9882182f0565466995"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"10b8994c5a2150dbe1a3299da2558539aa78ba87","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                           if self.localnet_port(p)]"},{"line_number":97,"context_line":"        except idlutils.RowNotFound as e:"},{"line_number":98,"context_line":"            if self.if_exists:"},{"line_number":99,"context_line":"                return []"},{"line_number":100,"context_line":"            msg \u003d \"Logical Switch %s does not exist\" % self.switch"},{"line_number":101,"context_line":"            raise RuntimeError(msg) from e"},{"line_number":102,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"6b24e3f0_1db8bff8","line":99,"in_reply_to":"573dd66a_67ea77c1","updated":"2023-03-16 18:14:04.000000000","message":"Done","commit_id":"cde9057e597dcd779326ac9882182f0565466995"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"9b3777c60f5bc35b2555343e857aab04dab9b416","unresolved":true,"context_lines":[{"line_number":96,"context_line":"                           if self.localnet_port(p)]"},{"line_number":97,"context_line":"        except idlutils.RowNotFound as e:"},{"line_number":98,"context_line":"            if self.if_exists:"},{"line_number":99,"context_line":"                self.result \u003d []"},{"line_number":100,"context_line":"            msg \u003d \"Logical Switch %s does not exist\" % self.switch"},{"line_number":101,"context_line":"            raise RuntimeError(msg) from e"},{"line_number":102,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"45351a72_f7965464","line":99,"updated":"2023-03-16 23:17:38.000000000","message":"still needs a return after this line (my previous comment was not particularly well written!)","commit_id":"08d2425ddb074c0955ce468e3aa8b7028e211bf7"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"d76ae90c31a07ad556068ae5ed6888065b138498","unresolved":true,"context_lines":[{"line_number":96,"context_line":"                           if self.localnet_port(p)]"},{"line_number":97,"context_line":"        except idlutils.RowNotFound as e:"},{"line_number":98,"context_line":"            if self.if_exists:"},{"line_number":99,"context_line":"                self.result \u003d []"},{"line_number":100,"context_line":"            msg \u003d \"Logical Switch %s does not exist\" % self.switch"},{"line_number":101,"context_line":"            raise RuntimeError(msg) from e"},{"line_number":102,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"b03313df_b973f37d","line":99,"in_reply_to":"45351a72_f7965464","updated":"2023-03-17 06:39:45.000000000","message":"ups... of course is needed, I did the modification in a hurry, and that is what happens when you don\u0027t pay enough attention... sorry, fixed now","commit_id":"08d2425ddb074c0955ce468e3aa8b7028e211bf7"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"c182c6197d4cc752ae5e33a1fbdc74b7ef6e08cd","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                           if self.localnet_port(p)]"},{"line_number":97,"context_line":"        except idlutils.RowNotFound as e:"},{"line_number":98,"context_line":"            if self.if_exists:"},{"line_number":99,"context_line":"                self.result \u003d []"},{"line_number":100,"context_line":"            msg \u003d \"Logical Switch %s does not exist\" % self.switch"},{"line_number":101,"context_line":"            raise RuntimeError(msg) from e"},{"line_number":102,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"2e5bc000_8adc1f4d","line":99,"in_reply_to":"b03313df_b973f37d","updated":"2023-03-17 06:39:56.000000000","message":"Done","commit_id":"08d2425ddb074c0955ce468e3aa8b7028e211bf7"}],"ovsdbapp/tests/functional/schema/ovn_northbound/test_impl_idl.py":[{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"636d7af7c0868529af947d06f3c74f954bd50e65","unresolved":true,"context_lines":[{"line_number":106,"context_line":"        switch_set \u003d set(self.api.ls_list().execute(check_error\u003dTrue))"},{"line_number":107,"context_line":"        self.assertTrue(switches.issubset(switch_set))"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"    def test_ls_get_localnet_ports(self):"},{"line_number":110,"context_line":"        ls \u003d self._ls_add()"},{"line_number":111,"context_line":"        self._lsp_add(ls.uuid, type\u003dconst.LOCALNET)"},{"line_number":112,"context_line":"        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute("},{"line_number":113,"context_line":"            check_error\u003dTrue)"},{"line_number":114,"context_line":"        self.assertEqual([ls.ports], localnet_ports)"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"    def test_ls_get_localnet_ports_no_ports(self):"},{"line_number":117,"context_line":"        ls \u003d self._ls_add()"},{"line_number":118,"context_line":"        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute("},{"line_number":119,"context_line":"            check_error\u003dTrue)"},{"line_number":120,"context_line":"        self.assertEqual([], localnet_ports)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    def test_ls_get_localnet_ports_no_exist(self):"},{"line_number":123,"context_line":"        name \u003d utils.get_rand_device_name()"}],"source_content_type":"text/x-python","patch_set":2,"id":"a513ce9f_2f866a90","line":120,"range":{"start_line":109,"start_character":0,"end_line":120,"end_character":44},"updated":"2023-03-16 14:09:36.000000000","message":"These _lsp_add() calls should be failing due to not passing the required \u0027port\u0027 parameter, but apparently functional tests are currently running unit tests instead?!","commit_id":"1b3b7ba32427be099858ad0cb66de052308649a4"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"4501dccd6a766a23fb9a195e535c0be2d2557259","unresolved":false,"context_lines":[{"line_number":106,"context_line":"        switch_set \u003d set(self.api.ls_list().execute(check_error\u003dTrue))"},{"line_number":107,"context_line":"        self.assertTrue(switches.issubset(switch_set))"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"    def test_ls_get_localnet_ports(self):"},{"line_number":110,"context_line":"        ls \u003d self._ls_add()"},{"line_number":111,"context_line":"        self._lsp_add(ls.uuid, type\u003dconst.LOCALNET)"},{"line_number":112,"context_line":"        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute("},{"line_number":113,"context_line":"            check_error\u003dTrue)"},{"line_number":114,"context_line":"        self.assertEqual([ls.ports], localnet_ports)"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"    def test_ls_get_localnet_ports_no_ports(self):"},{"line_number":117,"context_line":"        ls \u003d self._ls_add()"},{"line_number":118,"context_line":"        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute("},{"line_number":119,"context_line":"            check_error\u003dTrue)"},{"line_number":120,"context_line":"        self.assertEqual([], localnet_ports)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    def test_ls_get_localnet_ports_no_exist(self):"},{"line_number":123,"context_line":"        name \u003d utils.get_rand_device_name()"}],"source_content_type":"text/x-python","patch_set":2,"id":"aa44532d_e087f918","line":120,"range":{"start_line":109,"start_character":0,"end_line":120,"end_character":44},"in_reply_to":"a513ce9f_2f866a90","updated":"2023-03-16 15:49:03.000000000","message":"Done","commit_id":"1b3b7ba32427be099858ad0cb66de052308649a4"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"9f355f0ddbaa77eea91ad8851bb4558fa4efc476","unresolved":true,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    def test_ls_get_localnet_ports(self):"},{"line_number":111,"context_line":"        ls \u003d self._ls_add()"},{"line_number":112,"context_line":"        self._lsp_add(ls.uuid, None, type\u003dconst.LOCALNET)"},{"line_number":113,"context_line":"        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute("},{"line_number":114,"context_line":"            check_error\u003dTrue)"},{"line_number":115,"context_line":"        self.assertEqual([ls.ports], localnet_ports)"}],"source_content_type":"text/x-python","patch_set":4,"id":"85ae46e5_28e4e46e","line":112,"range":{"start_line":112,"start_character":22,"end_line":112,"end_character":29},"updated":"2023-03-16 16:04:02.000000000","message":"apparently a UUID is returned here, so just ls","commit_id":"cde9057e597dcd779326ac9882182f0565466995"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"10b8994c5a2150dbe1a3299da2558539aa78ba87","unresolved":false,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    def test_ls_get_localnet_ports(self):"},{"line_number":111,"context_line":"        ls \u003d self._ls_add()"},{"line_number":112,"context_line":"        self._lsp_add(ls.uuid, None, type\u003dconst.LOCALNET)"},{"line_number":113,"context_line":"        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute("},{"line_number":114,"context_line":"            check_error\u003dTrue)"},{"line_number":115,"context_line":"        self.assertEqual([ls.ports], localnet_ports)"}],"source_content_type":"text/x-python","patch_set":4,"id":"5640a683_16a23ce5","line":112,"range":{"start_line":112,"start_character":22,"end_line":112,"end_character":29},"in_reply_to":"85ae46e5_28e4e46e","updated":"2023-03-16 18:14:04.000000000","message":"Done","commit_id":"cde9057e597dcd779326ac9882182f0565466995"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"d76ae90c31a07ad556068ae5ed6888065b138498","unresolved":false,"context_lines":[{"line_number":110,"context_line":"    def test_ls_get_localnet_ports(self):"},{"line_number":111,"context_line":"        ls \u003d self._ls_add()"},{"line_number":112,"context_line":"        self._lsp_add(ls, None, type\u003dconst.LOCALNET)"},{"line_number":113,"context_line":"        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute("},{"line_number":114,"context_line":"            check_error\u003dTrue)"},{"line_number":115,"context_line":"        self.assertEqual([ls.ports], localnet_ports)"},{"line_number":116,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"67720791_a07404f9","line":113,"range":{"start_line":113,"start_character":56,"end_line":113,"end_character":63},"updated":"2023-03-17 06:39:45.000000000","message":"and I suppose this is also a uuid already, changing those too","commit_id":"08d2425ddb074c0955ce468e3aa8b7028e211bf7"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"9b3777c60f5bc35b2555343e857aab04dab9b416","unresolved":true,"context_lines":[{"line_number":112,"context_line":"        self._lsp_add(ls, None, type\u003dconst.LOCALNET)"},{"line_number":113,"context_line":"        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute("},{"line_number":114,"context_line":"            check_error\u003dTrue)"},{"line_number":115,"context_line":"        self.assertEqual([ls.ports], localnet_ports)"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"    def test_ls_get_localnet_ports_no_ports(self):"},{"line_number":118,"context_line":"        ls \u003d self._ls_add()"}],"source_content_type":"text/x-python","patch_set":5,"id":"e7b84098_d10eca12","line":115,"range":{"start_line":115,"start_character":25,"end_line":115,"end_character":35},"updated":"2023-03-16 23:17:38.000000000","message":"ls.ports is already an array, so just ls.ports here","commit_id":"08d2425ddb074c0955ce468e3aa8b7028e211bf7"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"d76ae90c31a07ad556068ae5ed6888065b138498","unresolved":false,"context_lines":[{"line_number":112,"context_line":"        self._lsp_add(ls, None, type\u003dconst.LOCALNET)"},{"line_number":113,"context_line":"        localnet_ports \u003d self.api.ls_get_localnet_ports(ls.uuid).execute("},{"line_number":114,"context_line":"            check_error\u003dTrue)"},{"line_number":115,"context_line":"        self.assertEqual([ls.ports], localnet_ports)"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"    def test_ls_get_localnet_ports_no_ports(self):"},{"line_number":118,"context_line":"        ls \u003d self._ls_add()"}],"source_content_type":"text/x-python","patch_set":5,"id":"ae8b0e6a_da5a89ea","line":115,"range":{"start_line":115,"start_character":25,"end_line":115,"end_character":35},"in_reply_to":"e7b84098_d10eca12","updated":"2023-03-17 06:39:45.000000000","message":"Done","commit_id":"08d2425ddb074c0955ce468e3aa8b7028e211bf7"}]}
