)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"5fb4138bee5ffd589b40080aa461f89e70ddbfb5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"2e05d560_91fadddc","updated":"2023-07-10 07:32:11.000000000","message":"Thanks Toheeb, few comments inline.","commit_id":"254d45157d1e6c92a16f7c1bdc3bf8f4afc34ac2"},{"author":{"_account_id":30615,"name":"Tushar Trambak Gite","email":"tushargite96@gmail.com","username":"tushargite96"},"change_message_id":"863c60d929b2dbdc85a0d321cf4230cfc91e2b99","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1495ea99_44d34b2c","updated":"2023-07-05 04:17:25.000000000","message":"lgtm","commit_id":"254d45157d1e6c92a16f7c1bdc3bf8f4afc34ac2"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"da6ea2db7283625fdef1ca383c08c02092e0a478","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"f8e25349_3bb73107","updated":"2023-07-17 10:55:17.000000000","message":"I think we only need the overrides when we don\u0027t use the use_versions decorator, I haven\u0027t tried that locally though.","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"7e416c29e5e9d3d0077bb8125cba912346c61b5e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"722d97fd_94bfe87d","updated":"2023-07-27 05:54:31.000000000","message":"I\u0027m fine with the current approach but would be good to address the issue in a followup patch.","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"000925e99329f56736a87c5fabb2a5c67b6e239b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"f4b59b08_13ece73a","updated":"2023-07-27 08:28:53.000000000","message":"LGTM!","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"51aba5cea5f7e007e201bdd108c4944e7d4f4358","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"dfb0ca07_0c8c78d0","updated":"2023-07-13 14:46:43.000000000","message":"comments addressed and the CI passed","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"}],"api-ref/source/v3/samples/backups-list-detailed-response.json":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"5fb4138bee5ffd589b40080aa461f89e70ddbfb5","unresolved":true,"context_lines":[{"line_number":62,"context_line":"        }"},{"line_number":63,"context_line":"    ],"},{"line_number":64,"context_line":"    \"count\": 10"},{"line_number":65,"context_line":"}"}],"source_content_type":"application/json","patch_set":3,"id":"8dc5ec37_48dd160e","line":65,"updated":"2023-07-10 07:32:11.000000000","message":"unrelated change","commit_id":"254d45157d1e6c92a16f7c1bdc3bf8f4afc34ac2"},{"author":{"_account_id":35836,"name":"Toheeb Oyekola","display_name":"Toheeb","email":"toheeb.olawale.to23@gmail.com","username":"Toheeb"},"change_message_id":"01024a30866ee4eaca8b3eec2fd4bf54554fd647","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        }"},{"line_number":63,"context_line":"    ],"},{"line_number":64,"context_line":"    \"count\": 10"},{"line_number":65,"context_line":"}"}],"source_content_type":"application/json","patch_set":3,"id":"0c63a197_e7fbfe4f","line":65,"in_reply_to":"8dc5ec37_48dd160e","updated":"2023-07-24 11:08:23.000000000","message":"updated","commit_id":"254d45157d1e6c92a16f7c1bdc3bf8f4afc34ac2"}],"cinder/tests/functional/api_sample_tests/test_backups.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"5fb4138bee5ffd589b40080aa461f89e70ddbfb5","unresolved":true,"context_lines":[{"line_number":44,"context_line":"                              {}, self.response, 202)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"    def test_backup_list(self):"},{"line_number":47,"context_line":"        current_mv \u003d self.osapi_version.split(\u0027.\u0027)[-1]"},{"line_number":48,"context_line":"        min_mv_support_count \u003d mv.SUPPORT_COUNT_INFO.split(\u0027.\u0027)[-1]"},{"line_number":49,"context_line":"        if (int(current_mv) \u003e\u003d int(min_mv_support_count)):"},{"line_number":50,"context_line":"            response \u003d self._do_get(\u0027backups?with_count\u003dTrue\u0027)"},{"line_number":51,"context_line":"        else:"},{"line_number":52,"context_line":"            response \u003d self._do_get(\u0027backups\u0027)"},{"line_number":53,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"},{"line_number":54,"context_line":"                              {}, response, 200)"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"63293c36_41585641","line":52,"range":{"start_line":47,"start_character":0,"end_line":52,"end_character":46},"updated":"2023-07-10 07:32:11.000000000","message":"I would not like this logic to be in a test\nbetter would be to separate this out into two tests\n\n1. test_backup_list\n2. test_backup_list_with_count\n\nwe can use override_mv in test_backup_list_with_count to avoid this custom logic","commit_id":"254d45157d1e6c92a16f7c1bdc3bf8f4afc34ac2"},{"author":{"_account_id":35836,"name":"Toheeb Oyekola","display_name":"Toheeb","email":"toheeb.olawale.to23@gmail.com","username":"Toheeb"},"change_message_id":"01024a30866ee4eaca8b3eec2fd4bf54554fd647","unresolved":false,"context_lines":[{"line_number":44,"context_line":"                              {}, self.response, 202)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"    def test_backup_list(self):"},{"line_number":47,"context_line":"        current_mv \u003d self.osapi_version.split(\u0027.\u0027)[-1]"},{"line_number":48,"context_line":"        min_mv_support_count \u003d mv.SUPPORT_COUNT_INFO.split(\u0027.\u0027)[-1]"},{"line_number":49,"context_line":"        if (int(current_mv) \u003e\u003d int(min_mv_support_count)):"},{"line_number":50,"context_line":"            response \u003d self._do_get(\u0027backups?with_count\u003dTrue\u0027)"},{"line_number":51,"context_line":"        else:"},{"line_number":52,"context_line":"            response \u003d self._do_get(\u0027backups\u0027)"},{"line_number":53,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"},{"line_number":54,"context_line":"                              {}, response, 200)"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"add48907_853024b5","line":52,"range":{"start_line":47,"start_character":0,"end_line":52,"end_character":46},"in_reply_to":"63293c36_41585641","updated":"2023-07-24 11:08:23.000000000","message":"Ack","commit_id":"254d45157d1e6c92a16f7c1bdc3bf8f4afc34ac2"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"5fb4138bee5ffd589b40080aa461f89e70ddbfb5","unresolved":true,"context_lines":[{"line_number":68,"context_line":"                              {}, response, 200)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def test_backup_list_detail(self):"},{"line_number":71,"context_line":"        current_mv \u003d self.osapi_version.split(\u0027.\u0027)[-1]"},{"line_number":72,"context_line":"        min_mv_support_count \u003d mv.SUPPORT_COUNT_INFO.split(\u0027.\u0027)[-1]"},{"line_number":73,"context_line":"        if (int(current_mv) \u003e\u003d int(min_mv_support_count)):"},{"line_number":74,"context_line":"            response \u003d self._do_get(\u0027backups/detail?with_count\u003dTrue\u0027)"},{"line_number":75,"context_line":"        else:"},{"line_number":76,"context_line":"            response \u003d self._do_get(\u0027backups/detail\u0027)"},{"line_number":77,"context_line":"        self._verify_response(\u0027backups-list-detailed-response\u0027,"},{"line_number":78,"context_line":"                              {}, response, 200)"}],"source_content_type":"text/x-python","patch_set":3,"id":"65e71a61_1f63ee00","line":76,"range":{"start_line":71,"start_character":8,"end_line":76,"end_character":53},"updated":"2023-07-10 07:32:11.000000000","message":"same, would be better to split it into two tests","commit_id":"254d45157d1e6c92a16f7c1bdc3bf8f4afc34ac2"},{"author":{"_account_id":35836,"name":"Toheeb Oyekola","display_name":"Toheeb","email":"toheeb.olawale.to23@gmail.com","username":"Toheeb"},"change_message_id":"01024a30866ee4eaca8b3eec2fd4bf54554fd647","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                              {}, response, 200)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def test_backup_list_detail(self):"},{"line_number":71,"context_line":"        current_mv \u003d self.osapi_version.split(\u0027.\u0027)[-1]"},{"line_number":72,"context_line":"        min_mv_support_count \u003d mv.SUPPORT_COUNT_INFO.split(\u0027.\u0027)[-1]"},{"line_number":73,"context_line":"        if (int(current_mv) \u003e\u003d int(min_mv_support_count)):"},{"line_number":74,"context_line":"            response \u003d self._do_get(\u0027backups/detail?with_count\u003dTrue\u0027)"},{"line_number":75,"context_line":"        else:"},{"line_number":76,"context_line":"            response \u003d self._do_get(\u0027backups/detail\u0027)"},{"line_number":77,"context_line":"        self._verify_response(\u0027backups-list-detailed-response\u0027,"},{"line_number":78,"context_line":"                              {}, response, 200)"}],"source_content_type":"text/x-python","patch_set":3,"id":"e586a941_746afdd0","line":76,"range":{"start_line":71,"start_character":8,"end_line":76,"end_character":53},"in_reply_to":"65e71a61_1f63ee00","updated":"2023-07-24 11:08:23.000000000","message":"Ack","commit_id":"254d45157d1e6c92a16f7c1bdc3bf8f4afc34ac2"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"da6ea2db7283625fdef1ca383c08c02092e0a478","unresolved":true,"context_lines":[{"line_number":43,"context_line":"        self._verify_response(\u0027backup-create-response\u0027,"},{"line_number":44,"context_line":"                              {}, self.response, 202)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"    @test_base.VolumesSampleBase.override_mv(mv.BASE_VERSION)  # 3.0"},{"line_number":47,"context_line":"    def test_backup_list(self):"},{"line_number":48,"context_line":"        response \u003d self._do_get(\u0027backups\u0027)"},{"line_number":49,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"b2079e23_381e6740","line":46,"range":{"start_line":46,"start_character":4,"end_line":46,"end_character":68},"updated":"2023-07-17 10:55:17.000000000","message":"this should run similar to test_backup_create right? do we need this override?","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"},{"author":{"_account_id":35836,"name":"Toheeb Oyekola","display_name":"Toheeb","email":"toheeb.olawale.to23@gmail.com","username":"Toheeb"},"change_message_id":"01024a30866ee4eaca8b3eec2fd4bf54554fd647","unresolved":true,"context_lines":[{"line_number":43,"context_line":"        self._verify_response(\u0027backup-create-response\u0027,"},{"line_number":44,"context_line":"                              {}, self.response, 202)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"    @test_base.VolumesSampleBase.override_mv(mv.BASE_VERSION)  # 3.0"},{"line_number":47,"context_line":"    def test_backup_list(self):"},{"line_number":48,"context_line":"        response \u003d self._do_get(\u0027backups\u0027)"},{"line_number":49,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"b780fe78_9d3ba381","line":46,"range":{"start_line":46,"start_character":4,"end_line":46,"end_character":68},"in_reply_to":"b2079e23_381e6740","updated":"2023-07-24 11:08:23.000000000","message":"when testing if I remove \"override_mv\", the response for micro-versions \u003c 3.45 will fail because of templated that have \"count\", I am overriding it just to make sure all test from here does have to check and when I remove count from templates \u003e\u003d 3.45, it defeats the whole purpose of the micro-versioning in the first place.","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"7e416c29e5e9d3d0077bb8125cba912346c61b5e","unresolved":true,"context_lines":[{"line_number":43,"context_line":"        self._verify_response(\u0027backup-create-response\u0027,"},{"line_number":44,"context_line":"                              {}, self.response, 202)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"    @test_base.VolumesSampleBase.override_mv(mv.BASE_VERSION)  # 3.0"},{"line_number":47,"context_line":"    def test_backup_list(self):"},{"line_number":48,"context_line":"        response \u003d self._do_get(\u0027backups\u0027)"},{"line_number":49,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"d75e9554_5be6746d","line":46,"range":{"start_line":46,"start_character":4,"end_line":46,"end_character":68},"in_reply_to":"b780fe78_9d3ba381","updated":"2023-07-27 05:54:31.000000000","message":"Got it, the problem with this approach is the test will be run 6 times (with each microversion) but every time it will have MV set as 3.0 which is redundant.\n\nFor now, i think we can go ahead with this and in a followup we can divide this into 4 different classes\n\n1. base class with setup method\n2. class running tests requiring MV\u0027s \u003c 3.45\n3. class running tests requiring MV\u0027s \u003e\u003d 3.45\n4. class that can run with all MVs","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"da6ea2db7283625fdef1ca383c08c02092e0a478","unresolved":true,"context_lines":[{"line_number":49,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"},{"line_number":50,"context_line":"                              {}, response, 200)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    @test_base.VolumesSampleBase.override_mv(mv.SUPPORT_COUNT_INFO)  # 3.45"},{"line_number":53,"context_line":"    def test_backup_list_with_count(self):"},{"line_number":54,"context_line":"        response \u003d self._do_get(\u0027backups?with_count\u003dTrue\u0027)"},{"line_number":55,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"1d7f2256_1e6bd109","line":52,"range":{"start_line":52,"start_character":4,"end_line":52,"end_character":75},"updated":"2023-07-17 10:55:17.000000000","message":"do we really need specific overrides? I think the use_versions decorator will run this test with all possible microversions so this might not be necessary.","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"},{"author":{"_account_id":35836,"name":"Toheeb Oyekola","display_name":"Toheeb","email":"toheeb.olawale.to23@gmail.com","username":"Toheeb"},"change_message_id":"01024a30866ee4eaca8b3eec2fd4bf54554fd647","unresolved":true,"context_lines":[{"line_number":49,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"},{"line_number":50,"context_line":"                              {}, response, 200)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    @test_base.VolumesSampleBase.override_mv(mv.SUPPORT_COUNT_INFO)  # 3.45"},{"line_number":53,"context_line":"    def test_backup_list_with_count(self):"},{"line_number":54,"context_line":"        response \u003d self._do_get(\u0027backups?with_count\u003dTrue\u0027)"},{"line_number":55,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"84394c3e_07ba7b28","line":52,"range":{"start_line":52,"start_character":4,"end_line":52,"end_character":75},"in_reply_to":"1d7f2256_1e6bd109","updated":"2023-07-24 11:08:23.000000000","message":"The reason for this is that without override_mv, use_versions runs the test even for lower microversions that the feature is not available in thereby throws an error.\n\ne.g \n\ntest_backup_list_with_count\n\nwith_count param is not available for micro-versions lower that 3.45 but running it without override will also run it for \u003e\u003d 3.0.","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"d7b257c321b85e4fe59bb65a69e04973b9e7d690","unresolved":true,"context_lines":[{"line_number":49,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"},{"line_number":50,"context_line":"                              {}, response, 200)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    @test_base.VolumesSampleBase.override_mv(mv.SUPPORT_COUNT_INFO)  # 3.45"},{"line_number":53,"context_line":"    def test_backup_list_with_count(self):"},{"line_number":54,"context_line":"        response \u003d self._do_get(\u0027backups?with_count\u003dTrue\u0027)"},{"line_number":55,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"eefb4c90_3764b7b9","line":52,"range":{"start_line":52,"start_character":4,"end_line":52,"end_character":75},"in_reply_to":"1d7f2256_1e6bd109","updated":"2023-07-24 11:07:57.000000000","message":"test","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"7e416c29e5e9d3d0077bb8125cba912346c61b5e","unresolved":true,"context_lines":[{"line_number":49,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"},{"line_number":50,"context_line":"                              {}, response, 200)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    @test_base.VolumesSampleBase.override_mv(mv.SUPPORT_COUNT_INFO)  # 3.45"},{"line_number":53,"context_line":"    def test_backup_list_with_count(self):"},{"line_number":54,"context_line":"        response \u003d self._do_get(\u0027backups?with_count\u003dTrue\u0027)"},{"line_number":55,"context_line":"        self._verify_response(\u0027backups-list-response\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"d451b356_5871e90a","line":52,"range":{"start_line":52,"start_character":4,"end_line":52,"end_character":75},"in_reply_to":"84394c3e_07ba7b28","updated":"2023-07-27 05:54:31.000000000","message":"same as above, would be good to address this in a followup","commit_id":"6172d2a9a0ad6cb35e2218ee6c2f57588ac97981"}]}
