)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"06de0bd8b125a9a59ebcb4f2bb3bab436c57c563","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"b0b86a14_a3d8af21","updated":"2022-04-05 15:38:37.000000000","message":"recheck","commit_id":"85132116cf6feb259656e8f349e070cf6635da95"},{"author":{"_account_id":6737,"name":"Edward Hope-Morley","email":"edward.hope-morley@canonical.com","username":"hopem"},"change_message_id":"c0e5aa2821436e319722aed672fdd66955bc034a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"86d97ef0_ccd0e38e","updated":"2022-04-06 12:37:06.000000000","message":"I\u0027ve done some local testing and in fact this will not pass unit tests due to the code removed in stable/yoga by https://github.com/openstack/horizon/commit/6ac31e0ba8df520133d20d21e35085d9b882c04e. All but one failure are in InstanceLaunchInstanceTests which was removed by the above commit since it related deprecated code. So we have two choices; fix the tests or backport that patch. I believe that fixing the tests might be best/easiest and they will be needed for further backports anyway.","commit_id":"5387ae5b68f5921249eb086360e0d0b75f7ad38d"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"255437bad70fba35320d10d24f2b5690bd17aeb6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"9b846e30_23e81c97","in_reply_to":"86d97ef0_ccd0e38e","updated":"2022-04-06 14:02:56.000000000","message":"In addition, I would like to include my follow-up patch [1] to add test coverage on this backported commit. Actually this change was not covered by any UT. UT changes in the backported commit is just to pass the existing UTs. I believe it is more important to have a UT coverage on the change as we need adjustments in UT during the backport. If needed, I can help.\n\n[1] https://review.opendev.org/c/openstack/horizon/+/830936/","commit_id":"5387ae5b68f5921249eb086360e0d0b75f7ad38d"},{"author":{"_account_id":6737,"name":"Edward Hope-Morley","email":"edward.hope-morley@canonical.com","username":"hopem"},"change_message_id":"756004ae684f513731bc23bff502045203a99d85","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"8df5b603_0fe539af","updated":"2022-04-06 20:58:39.000000000","message":"Akihiro, understood. I have fixed the unit tests here without needing to backport commit 6ac31e0 but we can also backport your test fixes once they are landed.","commit_id":"6d6c44966e20f2f012b8d594f7a7fd0d0ea6ec53"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"f1ad17e1ed91d967393a2eba2d497ff1ea722292","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"f64a5cd7_4a1b2ca8","updated":"2022-05-25 17:16:50.000000000","message":"My comments are valid as they are new in this backport.","commit_id":"6d6c44966e20f2f012b8d594f7a7fd0d0ea6ec53"},{"author":{"_account_id":19298,"name":"Nicolas Bock","email":"nicolas.bock@canonical.com","username":"nicolasbock"},"change_message_id":"64766a4317079430f828f49bc50ea936ee0c2923","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"6665d95c_cccf092e","updated":"2022-06-02 13:40:45.000000000","message":"Thanks Akihiro!\n\nI am still working out how to exactly change the tests the way you describe.","commit_id":"6d6c44966e20f2f012b8d594f7a7fd0d0ea6ec53"},{"author":{"_account_id":19298,"name":"Nicolas Bock","email":"nicolas.bock@canonical.com","username":"nicolasbock"},"change_message_id":"01163fd029399c85e8a512f2d370bd58ea277bdf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"875457fc_0fe1cb59","in_reply_to":"0a24cccf_c73aacd6","updated":"2022-06-06 19:10:07.000000000","message":"Yes that would be very helpful. Thanks!","commit_id":"6d6c44966e20f2f012b8d594f7a7fd0d0ea6ec53"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"e7db7d133eabd57726c0426ca9fb4539a4e384b3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"0a24cccf_c73aacd6","in_reply_to":"6665d95c_cccf092e","updated":"2022-06-03 07:19:38.000000000","message":"Thanks. I can update them if you are okay.","commit_id":"6d6c44966e20f2f012b8d594f7a7fd0d0ea6ec53"},{"author":{"_account_id":29313,"name":"Vishal Manchanda","email":"manchandavishal143@gmail.com","username":"vishalmanchanda"},"change_message_id":"964cb1856af388a74bab6d481dffb1a5e63cbd16","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"8c5b65b7_2acd92d6","updated":"2022-11-02 18:59:31.000000000","message":"LGTM.","commit_id":"1561fcce55371c6b2d93a31b83ca533dea82f746"}],"openstack_dashboard/dashboards/project/instances/tests.py":[{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"93bf0b512c895a1cefd5ee16ec4879290203ea7a","unresolved":true,"context_lines":[{"line_number":2351,"context_line":"        self.mock_port_list_with_trunk_types.assert_has_calls("},{"line_number":2352,"context_line":"            [mock.call(helpers.IsHttpRequest(),"},{"line_number":2353,"context_line":"                       network_id\u003dnet.id, tenant_id\u003dself.tenant.id)"},{"line_number":2354,"context_line":"             for net in self.networks.list()])"},{"line_number":2355,"context_line":"        self.mock_server_group_list.assert_called_once_with("},{"line_number":2356,"context_line":"            helpers.IsHttpRequest())"},{"line_number":2357,"context_line":"        self.mock_tenant_quota_usages.assert_called_once_with("}],"source_content_type":"text/x-python","patch_set":3,"id":"e84510a3_75750e03","side":"PARENT","line":2354,"updated":"2022-04-08 07:17:38.000000000","message":"port_list_with_trunk_types() is mocked in this test, so it must be asserted.","commit_id":"034b79a1db54053bc2f6e0268f36076b1aca3d96"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"93bf0b512c895a1cefd5ee16ec4879290203ea7a","unresolved":true,"context_lines":[{"line_number":2434,"context_line":"        self.mock_port_list_with_trunk_types.assert_has_calls("},{"line_number":2435,"context_line":"            [mock.call(helpers.IsHttpRequest(),"},{"line_number":2436,"context_line":"                       network_id\u003dnet.id, tenant_id\u003dself.tenant.id)"},{"line_number":2437,"context_line":"             for net in self.networks.list()])"},{"line_number":2438,"context_line":"        self.mock_server_group_list.assert_called_once_with("},{"line_number":2439,"context_line":"            helpers.IsHttpRequest())"},{"line_number":2440,"context_line":"        self.mock_tenant_quota_usages.assert_called_once_with("}],"source_content_type":"text/x-python","patch_set":3,"id":"52a6bbc0_cbf64708","side":"PARENT","line":2437,"updated":"2022-04-08 07:17:38.000000000","message":"ditto","commit_id":"034b79a1db54053bc2f6e0268f36076b1aca3d96"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"93bf0b512c895a1cefd5ee16ec4879290203ea7a","unresolved":true,"context_lines":[{"line_number":131,"context_line":"                      shared\u003dFalse),"},{"line_number":132,"context_line":"            mock.call(helpers.IsHttpRequest(), shared\u003dTrue),"},{"line_number":133,"context_line":"        ])"},{"line_number":134,"context_line":"        self.assertEqual(1, self.mock_port_list_with_trunk_types.call_count)"},{"line_number":135,"context_line":"        self.mock_port_list_with_trunk_types("},{"line_number":136,"context_line":"            [mock.call(helpers.IsHttpRequest(),"},{"line_number":137,"context_line":"                       network_id\u003dnet.id,"}],"source_content_type":"text/x-python","patch_set":3,"id":"caf4502f_fc19da5b","line":134,"updated":"2022-04-08 07:17:38.000000000","message":"L.135-139 should use assert_called_once_with() now.\nIf so, L.134 will be no longer needed.","commit_id":"6d6c44966e20f2f012b8d594f7a7fd0d0ea6ec53"},{"author":{"_account_id":19298,"name":"Nicolas Bock","email":"nicolas.bock@canonical.com","username":"nicolasbock"},"change_message_id":"5049d3c43ced9b5ea863b98ed5853e15c86f952e","unresolved":true,"context_lines":[{"line_number":131,"context_line":"                      shared\u003dFalse),"},{"line_number":132,"context_line":"            mock.call(helpers.IsHttpRequest(), shared\u003dTrue),"},{"line_number":133,"context_line":"        ])"},{"line_number":134,"context_line":"        self.assertEqual(1, self.mock_port_list_with_trunk_types.call_count)"},{"line_number":135,"context_line":"        self.mock_port_list_with_trunk_types("},{"line_number":136,"context_line":"            [mock.call(helpers.IsHttpRequest(),"},{"line_number":137,"context_line":"                       network_id\u003dnet.id,"}],"source_content_type":"text/x-python","patch_set":3,"id":"4b4b909a_abfcbe4e","line":134,"in_reply_to":"caf4502f_fc19da5b","updated":"2022-07-22 13:38:16.000000000","message":"I think I have addressed your comment. Could you please verify that I understood your suggestion correctly? Thanks!","commit_id":"6d6c44966e20f2f012b8d594f7a7fd0d0ea6ec53"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"93bf0b512c895a1cefd5ee16ec4879290203ea7a","unresolved":true,"context_lines":[{"line_number":136,"context_line":"            [mock.call(helpers.IsHttpRequest(),"},{"line_number":137,"context_line":"                       network_id\u003dnet.id,"},{"line_number":138,"context_line":"                       tenant_id\u003dself.tenant.id)"},{"line_number":139,"context_line":"             for net in self.networks.list()])"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"    def _mock_nova_lists(self):"},{"line_number":142,"context_line":"        self.mock_flavor_list.return_value \u003d self.flavors.list()"}],"source_content_type":"text/x-python","patch_set":3,"id":"3445af04_f6247f98","line":139,"updated":"2022-04-08 07:17:38.000000000","message":"As mentioned above, it can be rewritten to:\n\n  self.mock_port_list_with_trunk_types.assert_called_once_with(\n      helpers.IsHttpRequest(), ...)","commit_id":"6d6c44966e20f2f012b8d594f7a7fd0d0ea6ec53"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"93bf0b512c895a1cefd5ee16ec4879290203ea7a","unresolved":true,"context_lines":[{"line_number":2196,"context_line":"            mock.call(helpers.IsHttpRequest(), shared\u003dTrue),"},{"line_number":2197,"context_line":"        ])"},{"line_number":2198,"context_line":"        self.assertEqual(4, self.mock_network_list.call_count)"},{"line_number":2199,"context_line":"        self.assertEqual(1, self.mock_port_list_with_trunk_types.call_count)"},{"line_number":2200,"context_line":"        self.mock_server_group_list.assert_called_once_with("},{"line_number":2201,"context_line":"            helpers.IsHttpRequest())"},{"line_number":2202,"context_line":"        self.mock_tenant_quota_usages.assert_called_once_with("}],"source_content_type":"text/x-python","patch_set":3,"id":"1155a2d0_13a04135","line":2199,"updated":"2022-04-08 07:17:38.000000000","message":"ditto\n\nI don\u0027t think it is a good idea to drop the argument check.","commit_id":"6d6c44966e20f2f012b8d594f7a7fd0d0ea6ec53"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"93bf0b512c895a1cefd5ee16ec4879290203ea7a","unresolved":true,"context_lines":[{"line_number":3592,"context_line":"                helpers.IsHttpRequest(),"},{"line_number":3593,"context_line":"                shared\u003dTrue),"},{"line_number":3594,"context_line":"        ])"},{"line_number":3595,"context_line":"        self.assertEqual(1, self.mock_port_list_with_trunk_types.call_count)"},{"line_number":3596,"context_line":"        self.mock_volume_list.assert_has_calls(["},{"line_number":3597,"context_line":"            mock.call(helpers.IsHttpRequest(),"},{"line_number":3598,"context_line":"                      search_opts\u003dVOLUME_SEARCH_OPTS),"}],"source_content_type":"text/x-python","patch_set":3,"id":"0abc21e9_ee9dfe33","line":3595,"updated":"2022-04-08 07:17:38.000000000","message":"Please test the called args using assert_called_once_with().","commit_id":"6d6c44966e20f2f012b8d594f7a7fd0d0ea6ec53"}]}
