)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":36760,"name":"Jimin Shin","display_name":"Jimin Shin","email":"jimin3.shin@samsung.com","username":"Jimin"},"change_message_id":"6b87b6c365ce670df76df1b7968e38bfbf7dccf5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"3970ada7_a4054a2a","updated":"2026-07-28 12:39:58.000000000","message":"recheck: openstack-tox-py315, neutron-functional","commit_id":"3c9f93cf70b829300f1a01b15ac692765f373000"},{"author":{"_account_id":36760,"name":"Jimin Shin","display_name":"Jimin Shin","email":"jimin3.shin@samsung.com","username":"Jimin"},"change_message_id":"9f7cf0b21e88355f4c63f23ac4a0a0a8ba5a3e20","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"7d6f77e9_98301a1a","updated":"2026-07-29 05:46:55.000000000","message":"recheck: openstack-tox-py315, neutron-functional","commit_id":"3c9f93cf70b829300f1a01b15ac692765f373000"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"c74a34dd297151bc436783f3143c47371fc7a4a2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"78026ecd_b28c2525","updated":"2026-07-29 08:39:55.000000000","message":"thanks","commit_id":"3c9f93cf70b829300f1a01b15ac692765f373000"}],"neutron_lib/tests/unit/api/test_converters.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"9eb08db4224db34034acdefa1a9f9815b5d10fff","unresolved":true,"context_lines":[{"line_number":388,"context_line":"                     (\u0027fa-16-3e-b6-78-1f\u0027, \u0027fa:16:3e:b6:78:1f\u0027),"},{"line_number":389,"context_line":"                     (\u00270:1:2:3:4:5\u0027, \u002700:01:02:03:04:05\u0027),"},{"line_number":390,"context_line":"                     )"},{"line_number":391,"context_line":"        for input, expected in input_exp:"},{"line_number":392,"context_line":"            self.assertEqual("},{"line_number":393,"context_line":"                expected, converters.convert_to_mac_if_none(input))"},{"line_number":394,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"564c8a39_4d3aa979","line":391,"range":{"start_line":391,"start_character":12,"end_line":391,"end_character":17},"updated":"2026-07-23 13:36:11.000000000","message":"This shadows the built-in function `input`. Please, use another variable name.\n\nAlso `convert_to_mac_if_none` accepts `None`. Add it to the `input_exp` tuples.","commit_id":"cb6aa83f3d07c3dda51acd52f4409bb61ebd5267"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d11466974de2a563ba388c756693453012132cf4","unresolved":false,"context_lines":[{"line_number":388,"context_line":"                     (\u0027fa-16-3e-b6-78-1f\u0027, \u0027fa:16:3e:b6:78:1f\u0027),"},{"line_number":389,"context_line":"                     (\u00270:1:2:3:4:5\u0027, \u002700:01:02:03:04:05\u0027),"},{"line_number":390,"context_line":"                     )"},{"line_number":391,"context_line":"        for input, expected in input_exp:"},{"line_number":392,"context_line":"            self.assertEqual("},{"line_number":393,"context_line":"                expected, converters.convert_to_mac_if_none(input))"},{"line_number":394,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"85c2e9f1_d1dc051b","line":391,"updated":"2026-07-23 15:05:49.000000000","message":"pep8: W0622: Redefining built-in \u0027input\u0027 (redefined-builtin)","commit_id":"cb6aa83f3d07c3dda51acd52f4409bb61ebd5267"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"c6743bc93c9fcd6e8a3419434c40e8de519c8bc3","unresolved":false,"context_lines":[{"line_number":388,"context_line":"                     (\u0027fa-16-3e-b6-78-1f\u0027, \u0027fa:16:3e:b6:78:1f\u0027),"},{"line_number":389,"context_line":"                     (\u00270:1:2:3:4:5\u0027, \u002700:01:02:03:04:05\u0027),"},{"line_number":390,"context_line":"                     )"},{"line_number":391,"context_line":"        for input, expected in input_exp:"},{"line_number":392,"context_line":"            self.assertEqual("},{"line_number":393,"context_line":"                expected, converters.convert_to_mac_if_none(input))"},{"line_number":394,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1142d4eb_92a003ef","line":391,"range":{"start_line":391,"start_character":12,"end_line":391,"end_character":17},"in_reply_to":"3bd695b2_cd118e9e","updated":"2026-07-28 09:07:03.000000000","message":"Done","commit_id":"cb6aa83f3d07c3dda51acd52f4409bb61ebd5267"},{"author":{"_account_id":36760,"name":"Jimin Shin","display_name":"Jimin Shin","email":"jimin3.shin@samsung.com","username":"Jimin"},"change_message_id":"87d417079a076c74a5bf33e43129bae1c20cfc33","unresolved":true,"context_lines":[{"line_number":388,"context_line":"                     (\u0027fa-16-3e-b6-78-1f\u0027, \u0027fa:16:3e:b6:78:1f\u0027),"},{"line_number":389,"context_line":"                     (\u00270:1:2:3:4:5\u0027, \u002700:01:02:03:04:05\u0027),"},{"line_number":390,"context_line":"                     )"},{"line_number":391,"context_line":"        for input, expected in input_exp:"},{"line_number":392,"context_line":"            self.assertEqual("},{"line_number":393,"context_line":"                expected, converters.convert_to_mac_if_none(input))"},{"line_number":394,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3bd695b2_cd118e9e","line":391,"range":{"start_line":391,"start_character":12,"end_line":391,"end_character":17},"in_reply_to":"564c8a39_4d3aa979","updated":"2026-07-28 08:41:01.000000000","message":"Thanks for the review.\n\nRenamed the loop variable so it no longer shadows the built-in input (the tuple is now mac_exp with for mac, expected in mac_exp).\n\nOn adding None to the tuples: this test is specifically about a provided MAC address being sanitized to the canonical format, and the None path is already covered by test_convert_none_to_mac_address just below it. None also doesn\u0027t fit the (input, expected) shape here — the return value is a random MAC derived from cfg.CONF.base_mac, so it needs CONF mocked and can only be asserted on its prefix rather than compared to a fixed expected value. Adding it would mean mixing the two behaviours into one test.\n\nHappy to fold it in if you\u0027d still prefer a single test — just let me know.","commit_id":"cb6aa83f3d07c3dda51acd52f4409bb61ebd5267"}]}
