)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add update share type functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-on: https://review.opendev.org/#/c/669651/"},{"line_number":10,"context_line":"Part-of blueprint update-share-type-name-or-description"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Id1073a964b6d034375b74fa89e3ebb39e2c56220"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"7faddb67_6d325412","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":18},"updated":"2019-08-06 21:52:39.000000000","message":"Partially-Implements:","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"d2f575a5588efd6bc87fc8daab851eacd6aebc5e","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2019-08-16 09:07:40 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add update share type functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-on: https://review.opendev.org/#/c/669651/"},{"line_number":10,"context_line":"Part-of blueprint update-share-type-name-or-description"},{"line_number":11,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"7faddb67_18a5d29f","line":8,"updated":"2019-08-27 11:11:30.000000000","message":"Could you please add a commit message to this patch?","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"7ed6def67d01b9581cff18821000971d323348f0","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2019-08-16 09:07:40 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add update share type functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-on: https://review.opendev.org/#/c/669651/"},{"line_number":10,"context_line":"Part-of blueprint update-share-type-name-or-description"},{"line_number":11,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"7faddb67_1cbe1400","line":8,"in_reply_to":"7faddb67_18a5d29f","updated":"2019-08-28 02:46:59.000000000","message":"this patch just add some test about update share type.it is clear in the title.i think it is OK.","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"d2f575a5588efd6bc87fc8daab851eacd6aebc5e","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add update share type functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-on: https://review.opendev.org/#/c/669651/"},{"line_number":10,"context_line":"Part-of blueprint update-share-type-name-or-description"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Id1073a964b6d034375b74fa89e3ebb39e2c56220"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"7faddb67_38f76e8f","line":9,"range":{"start_line":9,"start_character":12,"end_line":9,"end_character":50},"updated":"2019-08-27 11:11:30.000000000","message":"NetApp is the only vendor running the functional tests for upstream patches. It\u0027s important for us to have this tests running in our environment, but we are still using Zuul v2 and it cannot interpret the depends on containing the patch link, it only works with the patch change id. Could you please change this depends on pointing to this [1] change id?\n[1] I4c7bdd601d48b40c01639b5089d4bff259a7b3af","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"e80a6862e7da212eb0bd071fafa7c42c039679bd","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add update share type functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-on: https://review.opendev.org/#/c/669651/"},{"line_number":10,"context_line":"Part-of blueprint update-share-type-name-or-description"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Id1073a964b6d034375b74fa89e3ebb39e2c56220"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"7faddb67_9cb8c4c7","line":9,"range":{"start_line":9,"start_character":12,"end_line":9,"end_character":50},"in_reply_to":"7faddb67_1cd5b447","updated":"2019-08-28 03:17:53.000000000","message":"i mean Change-Id","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"7ed6def67d01b9581cff18821000971d323348f0","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add update share type functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-on: https://review.opendev.org/#/c/669651/"},{"line_number":10,"context_line":"Part-of blueprint update-share-type-name-or-description"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Id1073a964b6d034375b74fa89e3ebb39e2c56220"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"7faddb67_1cd5b447","line":9,"range":{"start_line":9,"start_character":12,"end_line":9,"end_character":50},"in_reply_to":"7faddb67_38f76e8f","updated":"2019-08-28 02:46:59.000000000","message":"the Depends-on url is same as commit id.i think this is OK.","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a8e639aa279a4f1a0f2c550b39f6c3c790570313","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add update share type functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-on: https://review.opendev.org/#/c/669651/"},{"line_number":10,"context_line":"Part-of blueprint update-share-type-name-or-description"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Id1073a964b6d034375b74fa89e3ebb39e2c56220"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"7faddb67_b24a2b80","line":9,"range":{"start_line":9,"start_character":12,"end_line":9,"end_character":50},"in_reply_to":"7faddb67_9cb8c4c7","updated":"2019-09-03 19:25:29.000000000","message":"I think you misunderstood what Carlos is trying to convey... \nUsing both URL and Change-ID will work with Zuul/Upstream CI when using the \"Depends-On\" syntax. \n\nHowever, third party CI systems (like NetApp CI, which Carlos maintains) may not understand how to parse the review URL - it is a relatively new feature in Zuul; and third party CIs may not be running that version. So, he\u0027s recommending that you change the Depends-On to:\n\n  Depends-On: I4c7bdd601d48b40c01639b5089d4bff259a7b3af","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"61aab3d9c3229da0ebf60dcd7502cf970de46968","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add update share type functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-on: https://review.opendev.org/#/c/669651/"},{"line_number":10,"context_line":"Part-of blueprint update-share-type-name-or-description"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Id1073a964b6d034375b74fa89e3ebb39e2c56220"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"5faad753_ee84f3b3","line":9,"range":{"start_line":9,"start_character":12,"end_line":9,"end_character":50},"in_reply_to":"7faddb67_b24a2b80","updated":"2019-09-06 05:40:58.000000000","message":"ok, I see what you mean.thanks.","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"}],"manila_tempest_tests/services/share/json/shares_client.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"7faddb67_cdffc8ff","updated":"2019-08-06 21:52:39.000000000","message":"This is the API V1 Client, the API version it refers to (version 1) has been deprecated... Please revert changes to this.","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"54bafb7f12fdcfd0cefd5299cd9b3cb54f61b040","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"7faddb67_3c356c45","in_reply_to":"7faddb67_cdffc8ff","updated":"2019-08-07 03:45:20.000000000","message":"Done","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"}],"manila_tempest_tests/services/share/v2/json/shares_client.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[{"line_number":925,"context_line":"        return self._parse_resp(body)"},{"line_number":926,"context_line":""},{"line_number":927,"context_line":"    def update_share_type(self, share_type_id, name\u003dNone,"},{"line_number":928,"context_line":"                          is_public\u003dTrue, description\u003dNone,"},{"line_number":929,"context_line":"                          version\u003dLATEST_MICROVERSION):"},{"line_number":930,"context_line":"        post_body \u003d {"},{"line_number":931,"context_line":"            \"share_type_access:is_public\": is_public"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_7000eb01","line":928,"range":{"start_line":928,"start_character":36,"end_line":928,"end_character":40},"updated":"2019-08-06 21:52:39.000000000","message":"None","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"54bafb7f12fdcfd0cefd5299cd9b3cb54f61b040","unresolved":false,"context_lines":[{"line_number":925,"context_line":"        return self._parse_resp(body)"},{"line_number":926,"context_line":""},{"line_number":927,"context_line":"    def update_share_type(self, share_type_id, name\u003dNone,"},{"line_number":928,"context_line":"                          is_public\u003dTrue, description\u003dNone,"},{"line_number":929,"context_line":"                          version\u003dLATEST_MICROVERSION):"},{"line_number":930,"context_line":"        post_body \u003d {"},{"line_number":931,"context_line":"            \"share_type_access:is_public\": is_public"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_7c7d24e5","line":928,"range":{"start_line":928,"start_character":36,"end_line":928,"end_character":40},"in_reply_to":"7faddb67_7000eb01","updated":"2019-08-07 03:45:20.000000000","message":"Done","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[{"line_number":928,"context_line":"                          is_public\u003dTrue, description\u003dNone,"},{"line_number":929,"context_line":"                          version\u003dLATEST_MICROVERSION):"},{"line_number":930,"context_line":"        post_body \u003d {"},{"line_number":931,"context_line":"            \"share_type_access:is_public\": is_public"},{"line_number":932,"context_line":"        }"},{"line_number":933,"context_line":"        if name:"},{"line_number":934,"context_line":"            post_body.update({\"name\": name})"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_9003270d","line":931,"range":{"start_line":931,"start_character":43,"end_line":931,"end_character":52},"updated":"2019-08-06 21:52:39.000000000","message":"Add only if not None","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"54bafb7f12fdcfd0cefd5299cd9b3cb54f61b040","unresolved":false,"context_lines":[{"line_number":928,"context_line":"                          is_public\u003dTrue, description\u003dNone,"},{"line_number":929,"context_line":"                          version\u003dLATEST_MICROVERSION):"},{"line_number":930,"context_line":"        post_body \u003d {"},{"line_number":931,"context_line":"            \"share_type_access:is_public\": is_public"},{"line_number":932,"context_line":"        }"},{"line_number":933,"context_line":"        if name:"},{"line_number":934,"context_line":"            post_body.update({\"name\": name})"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_bc6e3c29","line":931,"range":{"start_line":931,"start_character":43,"end_line":931,"end_character":52},"in_reply_to":"7faddb67_9003270d","updated":"2019-08-07 03:45:20.000000000","message":"Done","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"}],"manila_tempest_tests/tests/api/admin/test_share_types.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[{"line_number":99,"context_line":"        self.assertDictMatch(get[\"volume_type\"], get[\"share_type\"])"},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @ddt.data(\u00272.0\u0027, \u00272.6\u0027, \u00272.7\u0027, \u00272.40\u0027, \u00272.41\u0027, \u00272.50\u0027)"},{"line_number":103,"context_line":"    def test_share_type_create_update(self, version):"},{"line_number":104,"context_line":"        self.skip_if_microversion_not_supported(version)"},{"line_number":105,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_f06a9bb0","line":102,"range":{"start_line":102,"start_character":0,"end_line":102,"end_character":58},"updated":"2019-08-06 21:52:39.000000000","message":"Test makes sense only for 2.50 and beyond:\n\n  @ddt.data(*set((\"2.50\", api_version._MAX_API_VERSION)))","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"54bafb7f12fdcfd0cefd5299cd9b3cb54f61b040","unresolved":false,"context_lines":[{"line_number":99,"context_line":"        self.assertDictMatch(get[\"volume_type\"], get[\"share_type\"])"},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @ddt.data(\u00272.0\u0027, \u00272.6\u0027, \u00272.7\u0027, \u00272.40\u0027, \u00272.41\u0027, \u00272.50\u0027)"},{"line_number":103,"context_line":"    def test_share_type_create_update(self, version):"},{"line_number":104,"context_line":"        self.skip_if_microversion_not_supported(version)"},{"line_number":105,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_1cfd106d","line":102,"range":{"start_line":102,"start_character":0,"end_line":102,"end_character":58},"in_reply_to":"7faddb67_f06a9bb0","updated":"2019-08-07 03:45:20.000000000","message":"Done","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @ddt.data(\u00272.0\u0027, \u00272.6\u0027, \u00272.7\u0027, \u00272.40\u0027, \u00272.41\u0027, \u00272.50\u0027)"},{"line_number":103,"context_line":"    def test_share_type_create_update(self, version):"},{"line_number":104,"context_line":"        self.skip_if_microversion_not_supported(version)"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"        name \u003d data_utils.rand_name(\"tempest-manila\")"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_709c6bbf","line":103,"range":{"start_line":103,"start_character":0,"end_line":103,"end_character":53},"updated":"2019-08-06 21:52:39.000000000","message":"You can use ddt on this to test the following\n\n- Updating only one of these three in each test case: name, description, is_public\n- Updating all three fields: name, description, is_public","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"54bafb7f12fdcfd0cefd5299cd9b3cb54f61b040","unresolved":false,"context_lines":[{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @ddt.data(\u00272.0\u0027, \u00272.6\u0027, \u00272.7\u0027, \u00272.40\u0027, \u00272.41\u0027, \u00272.50\u0027)"},{"line_number":103,"context_line":"    def test_share_type_create_update(self, version):"},{"line_number":104,"context_line":"        self.skip_if_microversion_not_supported(version)"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"        name \u003d data_utils.rand_name(\"tempest-manila\")"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_dcfa1873","line":103,"range":{"start_line":103,"start_character":0,"end_line":103,"end_character":53},"in_reply_to":"7faddb67_709c6bbf","updated":"2019-08-07 03:45:20.000000000","message":"Done","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[{"line_number":105,"context_line":""},{"line_number":106,"context_line":"        name \u003d data_utils.rand_name(\"tempest-manila\")"},{"line_number":107,"context_line":"        description \u003d None"},{"line_number":108,"context_line":"        if utils.is_microversion_ge(version, \"2.41\"):"},{"line_number":109,"context_line":"            description \u003d \"Description for share type\""},{"line_number":110,"context_line":"        extra_specs \u003d self.add_extra_specs_to_dict({\"key\": \"value\", })"},{"line_number":111,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_f0affbdf","line":108,"range":{"start_line":108,"start_character":8,"end_line":108,"end_character":53},"updated":"2019-08-06 21:52:39.000000000","message":"Check not necessary, test shouldn\u0027t run \u003c2.50","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"54bafb7f12fdcfd0cefd5299cd9b3cb54f61b040","unresolved":false,"context_lines":[{"line_number":105,"context_line":""},{"line_number":106,"context_line":"        name \u003d data_utils.rand_name(\"tempest-manila\")"},{"line_number":107,"context_line":"        description \u003d None"},{"line_number":108,"context_line":"        if utils.is_microversion_ge(version, \"2.41\"):"},{"line_number":109,"context_line":"            description \u003d \"Description for share type\""},{"line_number":110,"context_line":"        extra_specs \u003d self.add_extra_specs_to_dict({\"key\": \"value\", })"},{"line_number":111,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_fcf59483","line":108,"range":{"start_line":108,"start_character":8,"end_line":108,"end_character":53},"in_reply_to":"7faddb67_f0affbdf","updated":"2019-08-07 03:45:20.000000000","message":"Done","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[{"line_number":120,"context_line":"        st_id \u003d st_create[\"share_type\"][\"id\"]"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"        # Update share type"},{"line_number":123,"context_line":"        if utils.is_microversion_ge(version, \"2.50\"):"},{"line_number":124,"context_line":"            name \u003d name + \"_updated\""},{"line_number":125,"context_line":"            if utils.is_microversion_ge(version, \"2.41\"):"},{"line_number":126,"context_line":"                description \u003d description + \"_updated\""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_b0b50334","line":123,"range":{"start_line":123,"start_character":0,"end_line":123,"end_character":53},"updated":"2019-08-06 21:52:39.000000000","message":"same","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"54bafb7f12fdcfd0cefd5299cd9b3cb54f61b040","unresolved":false,"context_lines":[{"line_number":120,"context_line":"        st_id \u003d st_create[\"share_type\"][\"id\"]"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"        # Update share type"},{"line_number":123,"context_line":"        if utils.is_microversion_ge(version, \"2.50\"):"},{"line_number":124,"context_line":"            name \u003d name + \"_updated\""},{"line_number":125,"context_line":"            if utils.is_microversion_ge(version, \"2.41\"):"},{"line_number":126,"context_line":"                description \u003d description + \"_updated\""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_9cf02093","line":123,"range":{"start_line":123,"start_character":0,"end_line":123,"end_character":53},"in_reply_to":"7faddb67_b0b50334","updated":"2019-08-07 03:45:20.000000000","message":"Done","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[{"line_number":122,"context_line":"        # Update share type"},{"line_number":123,"context_line":"        if utils.is_microversion_ge(version, \"2.50\"):"},{"line_number":124,"context_line":"            name \u003d name + \"_updated\""},{"line_number":125,"context_line":"            if utils.is_microversion_ge(version, \"2.41\"):"},{"line_number":126,"context_line":"                description \u003d description + \"_updated\""},{"line_number":127,"context_line":"            else:"},{"line_number":128,"context_line":"                description \u003d None"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_70854b59","line":125,"range":{"start_line":125,"start_character":0,"end_line":125,"end_character":57},"updated":"2019-08-06 21:52:39.000000000","message":"same","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"54bafb7f12fdcfd0cefd5299cd9b3cb54f61b040","unresolved":false,"context_lines":[{"line_number":122,"context_line":"        # Update share type"},{"line_number":123,"context_line":"        if utils.is_microversion_ge(version, \"2.50\"):"},{"line_number":124,"context_line":"            name \u003d name + \"_updated\""},{"line_number":125,"context_line":"            if utils.is_microversion_ge(version, \"2.41\"):"},{"line_number":126,"context_line":"                description \u003d description + \"_updated\""},{"line_number":127,"context_line":"            else:"},{"line_number":128,"context_line":"                description \u003d None"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_bceb9ca1","line":125,"range":{"start_line":125,"start_character":0,"end_line":125,"end_character":57},"in_reply_to":"7faddb67_70854b59","updated":"2019-08-07 03:45:20.000000000","message":"Done","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a8e639aa279a4f1a0f2c550b39f6c3c790570313","unresolved":false,"context_lines":[{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @base.skip_if_microversion_lt(\"2.50\")"},{"line_number":103,"context_line":"    @ddt.data("},{"line_number":104,"context_line":"        (data_utils.rand_name(\"type_updated\"), \u0027description_updated\u0027, True),"},{"line_number":105,"context_line":"        (data_utils.rand_name(\"type_updated\"), None, None),"},{"line_number":106,"context_line":"        (None, \u0027description_updated\u0027, None),"},{"line_number":107,"context_line":"        (None, None, True),"},{"line_number":108,"context_line":"        (None, None, False),"},{"line_number":109,"context_line":"    )"},{"line_number":110,"context_line":"    @ddt.unpack"},{"line_number":111,"context_line":"    def test_share_type_create_update(self, st_name,"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_4590cf4e","line":108,"range":{"start_line":104,"start_character":8,"end_line":108,"end_character":28},"updated":"2019-09-03 19:25:29.000000000","message":"These are good, however, you aren\u0027t testing \n- removing / \"unsetting\" name/description\n- microversions \u003e 2.50 - you can test this with ddt using set(), \n\nexample: https://github.com/openstack/manila-tempest-plugin/blob/f6bc6fa7bc0e46857aba2b141f31b516a7d30a41/manila_tempest_tests/tests/api/test_rules.py#L461","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"61aab3d9c3229da0ebf60dcd7502cf970de46968","unresolved":false,"context_lines":[{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @base.skip_if_microversion_lt(\"2.50\")"},{"line_number":103,"context_line":"    @ddt.data("},{"line_number":104,"context_line":"        (data_utils.rand_name(\"type_updated\"), \u0027description_updated\u0027, True),"},{"line_number":105,"context_line":"        (data_utils.rand_name(\"type_updated\"), None, None),"},{"line_number":106,"context_line":"        (None, \u0027description_updated\u0027, None),"},{"line_number":107,"context_line":"        (None, None, True),"},{"line_number":108,"context_line":"        (None, None, False),"},{"line_number":109,"context_line":"    )"},{"line_number":110,"context_line":"    @ddt.unpack"},{"line_number":111,"context_line":"    def test_share_type_create_update(self, st_name,"}],"source_content_type":"text/x-python","patch_set":7,"id":"5faad753_592ab3e7","line":108,"range":{"start_line":104,"start_character":8,"end_line":108,"end_character":28},"in_reply_to":"7faddb67_4590cf4e","updated":"2019-09-06 05:40:58.000000000","message":"Done","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b6cc39199fc88e1259c2a763c3f1406aebb9d2d3","unresolved":false,"context_lines":[{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @base.skip_if_microversion_lt(\"2.50\")"},{"line_number":103,"context_line":"    @ddt.data("},{"line_number":104,"context_line":"        (data_utils.rand_name(\"type_updated\"), \u0027description_updated\u0027, True),"},{"line_number":105,"context_line":"        (data_utils.rand_name(\"type_updated\"), None, None),"},{"line_number":106,"context_line":"        (None, \u0027description_updated\u0027, None),"},{"line_number":107,"context_line":"        (None, None, True),"},{"line_number":108,"context_line":"        (None, None, False),"},{"line_number":109,"context_line":"    )"},{"line_number":110,"context_line":"    @ddt.unpack"},{"line_number":111,"context_line":"    def test_share_type_create_update(self, st_name,"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_cc3935f1","line":108,"range":{"start_line":104,"start_character":8,"end_line":108,"end_character":28},"in_reply_to":"7faddb67_4590cf4e","updated":"2019-09-05 17:51:29.000000000","message":"We could have an API-only negative test for trying to unset the share type\u0027s name... To test this code path: https://review.opendev.org/#/c/669651/18/manila/api/v2/share_types.py@302","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"77c22e1d0d181096c9ef413fb1bb2ae5c5004c72","unresolved":false,"context_lines":[{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @base.skip_if_microversion_lt(\"2.50\")"},{"line_number":103,"context_line":"    @ddt.data("},{"line_number":104,"context_line":"        (data_utils.rand_name(\"type_updated\"), \u0027description_updated\u0027, True),"},{"line_number":105,"context_line":"        (data_utils.rand_name(\"type_updated\"), None, None),"},{"line_number":106,"context_line":"        (None, \u0027description_updated\u0027, None),"},{"line_number":107,"context_line":"        (None, None, True),"},{"line_number":108,"context_line":"        (None, None, False),"},{"line_number":109,"context_line":"    )"},{"line_number":110,"context_line":"    @ddt.unpack"},{"line_number":111,"context_line":"    def test_share_type_create_update(self, st_name,"}],"source_content_type":"text/x-python","patch_set":7,"id":"5faad753_11708f72","line":108,"range":{"start_line":104,"start_character":8,"end_line":108,"end_character":28},"in_reply_to":"7faddb67_4590cf4e","updated":"2019-09-06 09:17:49.000000000","message":"i found i can\u0027t use itertools.product here, This results in a 409 error, because share","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"61aab3d9c3229da0ebf60dcd7502cf970de46968","unresolved":false,"context_lines":[{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @base.skip_if_microversion_lt(\"2.50\")"},{"line_number":103,"context_line":"    @ddt.data("},{"line_number":104,"context_line":"        (data_utils.rand_name(\"type_updated\"), \u0027description_updated\u0027, True),"},{"line_number":105,"context_line":"        (data_utils.rand_name(\"type_updated\"), None, None),"},{"line_number":106,"context_line":"        (None, \u0027description_updated\u0027, None),"},{"line_number":107,"context_line":"        (None, None, True),"},{"line_number":108,"context_line":"        (None, None, False),"},{"line_number":109,"context_line":"    )"},{"line_number":110,"context_line":"    @ddt.unpack"},{"line_number":111,"context_line":"    def test_share_type_create_update(self, st_name,"}],"source_content_type":"text/x-python","patch_set":7,"id":"5faad753_792f6ff6","line":108,"range":{"start_line":104,"start_character":8,"end_line":108,"end_character":28},"in_reply_to":"7faddb67_cc3935f1","updated":"2019-09-06 05:40:58.000000000","message":"Done","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a8e639aa279a4f1a0f2c550b39f6c3c790570313","unresolved":false,"context_lines":[{"line_number":126,"context_line":"        st_id \u003d st_create[\"share_type\"][\"id\"]"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"        # Update share type"},{"line_number":129,"context_line":"        name \u003d st_name"},{"line_number":130,"context_line":"        description \u003d st_description"},{"line_number":131,"context_line":"        is_public \u003d st_is_public"},{"line_number":132,"context_line":"        get \u003d self.shares_v2_client.update_share_type("},{"line_number":133,"context_line":"            st_id, name\u003dname, is_public\u003dis_public,"},{"line_number":134,"context_line":"            description\u003ddescription, version\u003dversion)"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_6554ebc6","line":131,"range":{"start_line":129,"start_character":8,"end_line":131,"end_character":32},"updated":"2019-09-03 19:25:29.000000000","message":"can\u0027t these variables be used as is, why create new variables?","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"d2f575a5588efd6bc87fc8daab851eacd6aebc5e","unresolved":false,"context_lines":[{"line_number":129,"context_line":"        name \u003d st_name"},{"line_number":130,"context_line":"        description \u003d st_description"},{"line_number":131,"context_line":"        is_public \u003d st_is_public"},{"line_number":132,"context_line":"        get \u003d self.shares_v2_client.update_share_type("},{"line_number":133,"context_line":"            st_id, name\u003dname, is_public\u003dis_public,"},{"line_number":134,"context_line":"            description\u003ddescription, version\u003dversion)"},{"line_number":135,"context_line":"        if name is not None:"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_57f0fefd","line":132,"range":{"start_line":132,"start_character":8,"end_line":132,"end_character":11},"updated":"2019-08-27 11:11:30.000000000","message":"what about updated_share_type?","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"7ed6def67d01b9581cff18821000971d323348f0","unresolved":false,"context_lines":[{"line_number":129,"context_line":"        name \u003d st_name"},{"line_number":130,"context_line":"        description \u003d st_description"},{"line_number":131,"context_line":"        is_public \u003d st_is_public"},{"line_number":132,"context_line":"        get \u003d self.shares_v2_client.update_share_type("},{"line_number":133,"context_line":"            st_id, name\u003dname, is_public\u003dis_public,"},{"line_number":134,"context_line":"            description\u003ddescription, version\u003dversion)"},{"line_number":135,"context_line":"        if name is not None:"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_5c5a4cf2","line":132,"range":{"start_line":132,"start_character":8,"end_line":132,"end_character":11},"in_reply_to":"7faddb67_57f0fefd","updated":"2019-08-28 02:46:59.000000000","message":"This is just a local variable,just like line 91,i think it not necessary to change.","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a8e639aa279a4f1a0f2c550b39f6c3c790570313","unresolved":false,"context_lines":[{"line_number":129,"context_line":"        name \u003d st_name"},{"line_number":130,"context_line":"        description \u003d st_description"},{"line_number":131,"context_line":"        is_public \u003d st_is_public"},{"line_number":132,"context_line":"        get \u003d self.shares_v2_client.update_share_type("},{"line_number":133,"context_line":"            st_id, name\u003dname, is_public\u003dis_public,"},{"line_number":134,"context_line":"            description\u003ddescription, version\u003dversion)"},{"line_number":135,"context_line":"        if name is not None:"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_8559e7fd","line":132,"range":{"start_line":132,"start_character":8,"end_line":132,"end_character":11},"in_reply_to":"7faddb67_5c5a4cf2","updated":"2019-09-03 19:25:29.000000000","message":"changing the variable name to \"updated_share_type\" enhances code readability...","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"61aab3d9c3229da0ebf60dcd7502cf970de46968","unresolved":false,"context_lines":[{"line_number":129,"context_line":"        name \u003d st_name"},{"line_number":130,"context_line":"        description \u003d st_description"},{"line_number":131,"context_line":"        is_public \u003d st_is_public"},{"line_number":132,"context_line":"        get \u003d self.shares_v2_client.update_share_type("},{"line_number":133,"context_line":"            st_id, name\u003dname, is_public\u003dis_public,"},{"line_number":134,"context_line":"            description\u003ddescription, version\u003dversion)"},{"line_number":135,"context_line":"        if name is not None:"}],"source_content_type":"text/x-python","patch_set":7,"id":"5faad753_39d577ba","line":132,"range":{"start_line":132,"start_character":8,"end_line":132,"end_character":11},"in_reply_to":"7faddb67_8559e7fd","updated":"2019-09-06 05:40:58.000000000","message":"To avoid single lines being too long, i changing the variable to \"updated_st\"","commit_id":"6c12a7f2d7a2b576fbe70b648338126d576d2839"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"77c22e1d0d181096c9ef413fb1bb2ae5c5004c72","unresolved":false,"context_lines":[{"line_number":100,"context_line":"        self.assertDictMatch(get[\"volume_type\"], get[\"share_type\"])"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":103,"context_line":"    @ddt.data(*itertools.product("},{"line_number":104,"context_line":"        set([\u00272.50\u0027, LATEST_MICROVERSION]),"},{"line_number":105,"context_line":"        (data_utils.rand_name(\"type_updated\"), None, \u0027\"\"\u0027),"},{"line_number":106,"context_line":"        (\u0027description_updated\u0027, None, \u0027\"\"\u0027),"}],"source_content_type":"text/x-python","patch_set":8,"id":"5faad753_310eebe5","line":103,"updated":"2019-09-06 09:17:49.000000000","message":"i found i can\u0027t use itertools.product here, This results in a 409 error, because share type name is same.","commit_id":"0d1d1a7720f8670d450cc7c6e6eb1300ad160f28"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0eda176010a303e1eb6fcf18dccafb3cdab4bbe0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"5faad753_63c6ba6a","updated":"2019-09-08 18:46:01.000000000","message":"Take a look at this file: https://github.com/openstack/manila-tempest-plugin/blob/master/manila_tempest_tests/tests/api/admin/test_share_types_negative.py\n\nI think you can add two negative test cases there:\n\n  1) Try to update the name to \"\" and fail with BadRequest\n  2) Try to update the name to an existing share type\u0027s name and fail with Conflict\n\nYou can also add negative test cases for trying to update the share_type_access:is_public value to some non-boolean (BadRequest) and the description to greater than 255 characters (BadRequest). The last two test cases will be nice to have - this is a unique tempest plugin that negative-tests the API extensively - this has helped us ensure bugs don\u0027t creep in..","commit_id":"02f1df7b8d1b574e9077c4ca7d747b1ff87acb39"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"ca56609a7de53bfa319664b1ee680e48880af520","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"5faad753_76bbbe71","in_reply_to":"5faad753_63c6ba6a","updated":"2019-09-10 07:44:18.000000000","message":"Done","commit_id":"02f1df7b8d1b574e9077c4ca7d747b1ff87acb39"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0eda176010a303e1eb6fcf18dccafb3cdab4bbe0","unresolved":false,"context_lines":[{"line_number":99,"context_line":"        self.assertDictMatch(get[\"volume_type\"], get[\"share_type\"])"},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @ddt.data("},{"line_number":103,"context_line":"        (\u00272.50\u0027, data_utils.rand_name(\"type_updated\"),"},{"line_number":104,"context_line":"         \u0027description_updated\u0027, True),"},{"line_number":105,"context_line":"        (\u00272.50\u0027, data_utils.rand_name(\"type_updated\"), None, None),"},{"line_number":106,"context_line":"        (\u00272.50\u0027, None, \u0027description_updated\u0027, None),"},{"line_number":107,"context_line":"        (\u00272.50\u0027, None, None, True),"},{"line_number":108,"context_line":"        (\u00272.50\u0027, None, None, False),"},{"line_number":109,"context_line":"        (LATEST_MICROVERSION, data_utils.rand_name(\"type_updated\"),"},{"line_number":110,"context_line":"         \u0027description_updated\u0027, True),"},{"line_number":111,"context_line":"        (LATEST_MICROVERSION, data_utils.rand_name(\"type_updated\"),"},{"line_number":112,"context_line":"         None, None),"},{"line_number":113,"context_line":"        (LATEST_MICROVERSION, None, \u0027description_updated\u0027, None),"},{"line_number":114,"context_line":"        (LATEST_MICROVERSION, None, None, True),"},{"line_number":115,"context_line":"        (LATEST_MICROVERSION, None, None, False),"},{"line_number":116,"context_line":"    )"},{"line_number":117,"context_line":"    @ddt.unpack"},{"line_number":118,"context_line":"    def test_share_type_create_update(self, version, st_name,"},{"line_number":119,"context_line":"                                      st_description, st_is_public):"}],"source_content_type":"text/x-python","patch_set":9,"id":"5faad753_a3e35205","line":116,"range":{"start_line":102,"start_character":4,"end_line":116,"end_character":5},"updated":"2019-09-08 18:46:01.000000000","message":"What problem did you face with using itertools? This works for me:\n\n  *itertools.product(set([\u00272.50\u0027, LATEST_MICROVERSION]),\n           {(data_utils.rand_name(\u0027type_updated\u0027), \u0027description_updated\u0027, True), \n            (data_utils.rand_name(\u0027type_updated\u0027), None, None),\n            (None, \u0027description_updated\u0027, None), \n            (None, None, True), \n            (None, None, False), \n            (None, \u0027\u0027, None)})\n\n\nWhen ddt unpacks this you\u0027ll get a tuple of (version, parameters) you can then unpack the parameters on your own inside the method:\n\n   \n  st_name, st_description, st_is_public \u003d parameters","commit_id":"02f1df7b8d1b574e9077c4ca7d747b1ff87acb39"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"ca56609a7de53bfa319664b1ee680e48880af520","unresolved":false,"context_lines":[{"line_number":99,"context_line":"        self.assertDictMatch(get[\"volume_type\"], get[\"share_type\"])"},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":102,"context_line":"    @ddt.data("},{"line_number":103,"context_line":"        (\u00272.50\u0027, data_utils.rand_name(\"type_updated\"),"},{"line_number":104,"context_line":"         \u0027description_updated\u0027, True),"},{"line_number":105,"context_line":"        (\u00272.50\u0027, data_utils.rand_name(\"type_updated\"), None, None),"},{"line_number":106,"context_line":"        (\u00272.50\u0027, None, \u0027description_updated\u0027, None),"},{"line_number":107,"context_line":"        (\u00272.50\u0027, None, None, True),"},{"line_number":108,"context_line":"        (\u00272.50\u0027, None, None, False),"},{"line_number":109,"context_line":"        (LATEST_MICROVERSION, data_utils.rand_name(\"type_updated\"),"},{"line_number":110,"context_line":"         \u0027description_updated\u0027, True),"},{"line_number":111,"context_line":"        (LATEST_MICROVERSION, data_utils.rand_name(\"type_updated\"),"},{"line_number":112,"context_line":"         None, None),"},{"line_number":113,"context_line":"        (LATEST_MICROVERSION, None, \u0027description_updated\u0027, None),"},{"line_number":114,"context_line":"        (LATEST_MICROVERSION, None, None, True),"},{"line_number":115,"context_line":"        (LATEST_MICROVERSION, None, None, False),"},{"line_number":116,"context_line":"    )"},{"line_number":117,"context_line":"    @ddt.unpack"},{"line_number":118,"context_line":"    def test_share_type_create_update(self, version, st_name,"},{"line_number":119,"context_line":"                                      st_description, st_is_public):"}],"source_content_type":"text/x-python","patch_set":9,"id":"5faad753_dc62e816","line":116,"range":{"start_line":102,"start_character":4,"end_line":116,"end_character":5},"in_reply_to":"5faad753_a3e35205","updated":"2019-09-10 07:44:18.000000000","message":"if use itertools.product, it will update share_type\u0027s name to a share_type_name(data_utils.rand_name(\u0027type_updated\u0027)) more than one time, this will lead to 409 error. so in order to make sure share_type_name is unique. i can\u0027t use it.","commit_id":"02f1df7b8d1b574e9077c4ca7d747b1ff87acb39"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0eda176010a303e1eb6fcf18dccafb3cdab4bbe0","unresolved":false,"context_lines":[{"line_number":147,"context_line":""},{"line_number":148,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":149,"context_line":"    @ddt.data(*set((\u00272.50\u0027, LATEST_MICROVERSION)))"},{"line_number":150,"context_line":"    def test_share_type_unset_name_description("},{"line_number":151,"context_line":"            self, version, st_name\u003d\"\", st_description\u003d\"\", st_is_public\u003dTrue):"},{"line_number":152,"context_line":"        name \u003d data_utils.rand_name(\"tempest-manila\")"},{"line_number":153,"context_line":"        description \u003d \"Description for share type\""}],"source_content_type":"text/x-python","patch_set":9,"id":"5faad753_c3276e64","line":150,"range":{"start_line":150,"start_character":0,"end_line":150,"end_character":47},"updated":"2019-09-08 18:46:01.000000000","message":"After removing st_name\u003d\"\" from this test case, I feel this test case can be folded into the previous test case by adding two more lines of DDT:\n\n  (\u00272.50\u0027, None, \u0027\u0027, None),\n  (LATEST_MICROVERSION, None, \u0027\u0027, None)","commit_id":"02f1df7b8d1b574e9077c4ca7d747b1ff87acb39"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"ca56609a7de53bfa319664b1ee680e48880af520","unresolved":false,"context_lines":[{"line_number":147,"context_line":""},{"line_number":148,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":149,"context_line":"    @ddt.data(*set((\u00272.50\u0027, LATEST_MICROVERSION)))"},{"line_number":150,"context_line":"    def test_share_type_unset_name_description("},{"line_number":151,"context_line":"            self, version, st_name\u003d\"\", st_description\u003d\"\", st_is_public\u003dTrue):"},{"line_number":152,"context_line":"        name \u003d data_utils.rand_name(\"tempest-manila\")"},{"line_number":153,"context_line":"        description \u003d \"Description for share type\""}],"source_content_type":"text/x-python","patch_set":9,"id":"5faad753_25cc2f34","line":150,"range":{"start_line":150,"start_character":0,"end_line":150,"end_character":47},"in_reply_to":"5faad753_c3276e64","updated":"2019-09-10 07:44:18.000000000","message":"Done","commit_id":"02f1df7b8d1b574e9077c4ca7d747b1ff87acb39"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0eda176010a303e1eb6fcf18dccafb3cdab4bbe0","unresolved":false,"context_lines":[{"line_number":148,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":149,"context_line":"    @ddt.data(*set((\u00272.50\u0027, LATEST_MICROVERSION)))"},{"line_number":150,"context_line":"    def test_share_type_unset_name_description("},{"line_number":151,"context_line":"            self, version, st_name\u003d\"\", st_description\u003d\"\", st_is_public\u003dTrue):"},{"line_number":152,"context_line":"        name \u003d data_utils.rand_name(\"tempest-manila\")"},{"line_number":153,"context_line":"        description \u003d \"Description for share type\""},{"line_number":154,"context_line":"        extra_specs \u003d self.add_extra_specs_to_dict({\"key\": \"value\", })"}],"source_content_type":"text/x-python","patch_set":9,"id":"5faad753_c30e8ee4","line":151,"range":{"start_line":151,"start_character":27,"end_line":151,"end_character":37},"updated":"2019-09-08 18:46:01.000000000","message":"This isn\u0027t a valid value for name as pointed out in the other two patches...\n\nshare type description can be empty, but name cannot...","commit_id":"02f1df7b8d1b574e9077c4ca7d747b1ff87acb39"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"ca56609a7de53bfa319664b1ee680e48880af520","unresolved":false,"context_lines":[{"line_number":148,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":149,"context_line":"    @ddt.data(*set((\u00272.50\u0027, LATEST_MICROVERSION)))"},{"line_number":150,"context_line":"    def test_share_type_unset_name_description("},{"line_number":151,"context_line":"            self, version, st_name\u003d\"\", st_description\u003d\"\", st_is_public\u003dTrue):"},{"line_number":152,"context_line":"        name \u003d data_utils.rand_name(\"tempest-manila\")"},{"line_number":153,"context_line":"        description \u003d \"Description for share type\""},{"line_number":154,"context_line":"        extra_specs \u003d self.add_extra_specs_to_dict({\"key\": \"value\", })"}],"source_content_type":"text/x-python","patch_set":9,"id":"5faad753_c5d0bbcc","line":151,"range":{"start_line":151,"start_character":27,"end_line":151,"end_character":37},"in_reply_to":"5faad753_c30e8ee4","updated":"2019-09-10 07:44:18.000000000","message":"Done","commit_id":"02f1df7b8d1b574e9077c4ca7d747b1ff87acb39"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b5e23ca9f7d9485fba4010a100adc0e0cbebc6d3","unresolved":false,"context_lines":[{"line_number":182,"context_line":"            st_id, name\u003dst_name, is_public\u003dst_is_public,"},{"line_number":183,"context_line":"            description\u003dst_description, version\u003dversion)"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        self._verify_description(st_description,"},{"line_number":186,"context_line":"                                 updated_st[\u0027share_type\u0027], version)"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"}],"source_content_type":"text/x-python","patch_set":11,"id":"5faad753_448355cd","line":185,"range":{"start_line":185,"start_character":33,"end_line":185,"end_character":47},"updated":"2019-09-10 21:40:14.000000000","message":"None","commit_id":"4fa2b5e25a9e83b93c1508fddecc434e52d1e19d"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"91ff3d8d44be837f78d78235142b5da77f5db788","unresolved":false,"context_lines":[{"line_number":182,"context_line":"            st_id, name\u003dst_name, is_public\u003dst_is_public,"},{"line_number":183,"context_line":"            description\u003dst_description, version\u003dversion)"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        self._verify_description(st_description,"},{"line_number":186,"context_line":"                                 updated_st[\u0027share_type\u0027], version)"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"}],"source_content_type":"text/x-python","patch_set":11,"id":"5faad753_b8f34a9e","line":185,"range":{"start_line":185,"start_character":33,"end_line":185,"end_character":47},"in_reply_to":"5faad753_448355cd","updated":"2019-09-15 07:39:49.000000000","message":"Done","commit_id":"4fa2b5e25a9e83b93c1508fddecc434e52d1e19d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b5e23ca9f7d9485fba4010a100adc0e0cbebc6d3","unresolved":false,"context_lines":[{"line_number":185,"context_line":"        self._verify_description(st_description,"},{"line_number":186,"context_line":"                                 updated_st[\u0027share_type\u0027], version)"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":189,"context_line":"    @ddt.data("},{"line_number":190,"context_line":"        (\u00272.50\u0027, \u0027\u0027, None, None),"},{"line_number":191,"context_line":"        (LATEST_MICROVERSION, \u0027\u0027, None, None),"}],"source_content_type":"text/x-python","patch_set":11,"id":"5faad753_0428fddf","line":188,"range":{"start_line":188,"start_character":18,"end_line":188,"end_character":30},"updated":"2019-09-10 21:40:14.000000000","message":"This is a negative test, so it has to be:\n\nTAG_NEGATIVE\n\nAlso: This test case belongs in manila_tempest_tests/tests/api/admin/test_share_types_negative.py - please move it there.","commit_id":"4fa2b5e25a9e83b93c1508fddecc434e52d1e19d"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"91ff3d8d44be837f78d78235142b5da77f5db788","unresolved":false,"context_lines":[{"line_number":185,"context_line":"        self._verify_description(st_description,"},{"line_number":186,"context_line":"                                 updated_st[\u0027share_type\u0027], version)"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":189,"context_line":"    @ddt.data("},{"line_number":190,"context_line":"        (\u00272.50\u0027, \u0027\u0027, None, None),"},{"line_number":191,"context_line":"        (LATEST_MICROVERSION, \u0027\u0027, None, None),"}],"source_content_type":"text/x-python","patch_set":11,"id":"5faad753_3883dace","line":188,"range":{"start_line":188,"start_character":18,"end_line":188,"end_character":30},"in_reply_to":"5faad753_0428fddf","updated":"2019-09-15 07:39:49.000000000","message":"Done","commit_id":"4fa2b5e25a9e83b93c1508fddecc434e52d1e19d"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b5e23ca9f7d9485fba4010a100adc0e0cbebc6d3","unresolved":false,"context_lines":[{"line_number":217,"context_line":"                          st_id, st_name, st_is_public, st_description,"},{"line_number":218,"context_line":"                          version)"},{"line_number":219,"context_line":""},{"line_number":220,"context_line":"    @tc.attr(base.TAG_POSITIVE, base.TAG_API)"},{"line_number":221,"context_line":"    @ddt.data(\u00272.50\u0027, LATEST_MICROVERSION)"},{"line_number":222,"context_line":"    def test_share_type_update_conflict(self, version):"},{"line_number":223,"context_line":"        name_1 \u003d data_utils.rand_name(\"tempest-manila\")"}],"source_content_type":"text/x-python","patch_set":11,"id":"5faad753_6411b1ac","line":220,"range":{"start_line":220,"start_character":18,"end_line":220,"end_character":30},"updated":"2019-09-10 21:40:14.000000000","message":"This is a negative test, so it has to be:\n\nTAG_NEGATIVE\n\nAlso: This test case belongs in manila_tempest_tests/tests/api/admin/test_share_types_negative.py - please move it there.","commit_id":"4fa2b5e25a9e83b93c1508fddecc434e52d1e19d"}],"manila_tempest_tests/tests/api/base.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[{"line_number":872,"context_line":""},{"line_number":873,"context_line":"    @classmethod"},{"line_number":874,"context_line":"    def update_share_type(cls, share_type_id, name\u003dNone,"},{"line_number":875,"context_line":"                          is_public\u003dTrue, description\u003dNone,"},{"line_number":876,"context_line":"                          client\u003dNone, cleanup_in_class\u003dTrue):"},{"line_number":877,"context_line":"        if client is None:"},{"line_number":878,"context_line":"            client \u003d cls.shares_v2_client"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_301fd35b","line":875,"range":{"start_line":875,"start_character":36,"end_line":875,"end_character":40},"updated":"2019-08-06 21:52:39.000000000","message":"None","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"54bafb7f12fdcfd0cefd5299cd9b3cb54f61b040","unresolved":false,"context_lines":[{"line_number":872,"context_line":""},{"line_number":873,"context_line":"    @classmethod"},{"line_number":874,"context_line":"    def update_share_type(cls, share_type_id, name\u003dNone,"},{"line_number":875,"context_line":"                          is_public\u003dTrue, description\u003dNone,"},{"line_number":876,"context_line":"                          client\u003dNone, cleanup_in_class\u003dTrue):"},{"line_number":877,"context_line":"        if client is None:"},{"line_number":878,"context_line":"            client \u003d cls.shares_v2_client"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_fc235403","line":875,"range":{"start_line":875,"start_character":36,"end_line":875,"end_character":40},"in_reply_to":"7faddb67_301fd35b","updated":"2019-08-07 03:45:20.000000000","message":"Done","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4a7caa40cedcc3c873d96004e076c079d2a94d68","unresolved":false,"context_lines":[{"line_number":883,"context_line":"            \"id\": share_type[\"share_type\"][\"id\"],"},{"line_number":884,"context_line":"            \"client\": client,"},{"line_number":885,"context_line":"        }"},{"line_number":886,"context_line":"        if cleanup_in_class:"},{"line_number":887,"context_line":"            cls.class_resources.insert(0, resource)"},{"line_number":888,"context_line":"        else:"},{"line_number":889,"context_line":"            cls.method_resources.insert(0, resource)"},{"line_number":890,"context_line":"        return share_type"},{"line_number":891,"context_line":""},{"line_number":892,"context_line":"    @staticmethod"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_704eab6f","line":889,"range":{"start_line":886,"start_character":0,"end_line":889,"end_character":52},"updated":"2019-08-06 21:52:39.000000000","message":"Cleanup must be handled by \"create\" methods; updating a share type will not change that.. so remove","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"54bafb7f12fdcfd0cefd5299cd9b3cb54f61b040","unresolved":false,"context_lines":[{"line_number":883,"context_line":"            \"id\": share_type[\"share_type\"][\"id\"],"},{"line_number":884,"context_line":"            \"client\": client,"},{"line_number":885,"context_line":"        }"},{"line_number":886,"context_line":"        if cleanup_in_class:"},{"line_number":887,"context_line":"            cls.class_resources.insert(0, resource)"},{"line_number":888,"context_line":"        else:"},{"line_number":889,"context_line":"            cls.method_resources.insert(0, resource)"},{"line_number":890,"context_line":"        return share_type"},{"line_number":891,"context_line":""},{"line_number":892,"context_line":"    @staticmethod"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_bc195cd1","line":889,"range":{"start_line":886,"start_character":0,"end_line":889,"end_character":52},"in_reply_to":"7faddb67_704eab6f","updated":"2019-08-07 03:45:20.000000000","message":"Done","commit_id":"7a3809f9961d7761edf55dbf4e0554066de14b89"}],"manila_tempest_tests/tests/api/test_share_types_negative.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"98d7df6868a808d45177e724126e108349915b0e","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    return random_str"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"class ShareTypesNegativeTest(base.BaseSharesMixedTest):"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    @classmethod"},{"line_number":42,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":12,"id":"5faad753_29329c11","line":39,"range":{"start_line":39,"start_character":0,"end_line":39,"end_character":55},"updated":"2019-09-11 16:14:03.000000000","message":"@ddt.ddt\n\nThis decorator is required for the class to support data imputation with ddt.","commit_id":"1317079df0e636ebb146a4462d85d08308e797f2"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"91ff3d8d44be837f78d78235142b5da77f5db788","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    return random_str"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"class ShareTypesNegativeTest(base.BaseSharesMixedTest):"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    @classmethod"},{"line_number":42,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":12,"id":"5faad753_a1109ca9","line":39,"range":{"start_line":39,"start_character":0,"end_line":39,"end_character":55},"in_reply_to":"5faad753_29329c11","updated":"2019-09-15 07:39:49.000000000","message":"Done","commit_id":"1317079df0e636ebb146a4462d85d08308e797f2"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"278eb6089dde7e90daf03943d165ba29b86b7bf5","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        extra_specs \u003d self.add_extra_specs_to_dict({\"key\": \"value\", })"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"        # Create share type"},{"line_number":91,"context_line":"        st_create \u003d self.create_share_type("},{"line_number":92,"context_line":"            name, extra_specs\u003dextra_specs, version\u003dversion,"},{"line_number":93,"context_line":"            description\u003ddescription)"},{"line_number":94,"context_line":"        self.assertEqual(name, st_create[\u0027share_type\u0027][\u0027name\u0027])"}],"source_content_type":"text/x-python","patch_set":13,"id":"5faad753_897262ac","line":91,"updated":"2019-09-16 00:39:53.000000000","message":"i found if i create share in test_share_types_negative.py,i will face 403 forbidden, like in line 49","commit_id":"8789143ec2c8f7c61db53901e13891c3e575111e"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"cdfcc0b023973036a415825b7c0bb607fbbf16d5","unresolved":false,"context_lines":[{"line_number":87,"context_line":"        st_id \u003d self.st[\u0027id\u0027]"},{"line_number":88,"context_line":"        # Update share type"},{"line_number":89,"context_line":"        self.assertRaises(lib_exc.BadRequest,"},{"line_number":90,"context_line":"                          self.shares_v2_client.update_share_type,"},{"line_number":91,"context_line":"                          st_id, st_name, st_is_public, st_description,"},{"line_number":92,"context_line":"                          version)"},{"line_number":93,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"3fa7e38b_3388321e","line":90,"range":{"start_line":90,"start_character":31,"end_line":90,"end_character":47},"updated":"2019-09-16 20:50:14.000000000","message":"admin_shares_v2_client\n\nThe default profile for this test case is to use \"user\" scoped credentials - share types can be created and updated only by admins by default.","commit_id":"b69e89e88fa26d0890e24009b119439cd1c4f861"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"83d9db451f1359349a7d4168b605ffb205d22aef","unresolved":false,"context_lines":[{"line_number":87,"context_line":"        st_id \u003d self.st[\u0027id\u0027]"},{"line_number":88,"context_line":"        # Update share type"},{"line_number":89,"context_line":"        self.assertRaises(lib_exc.BadRequest,"},{"line_number":90,"context_line":"                          self.shares_v2_client.update_share_type,"},{"line_number":91,"context_line":"                          st_id, st_name, st_is_public, st_description,"},{"line_number":92,"context_line":"                          version)"},{"line_number":93,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"3fa7e38b_419dd557","line":90,"range":{"start_line":90,"start_character":31,"end_line":90,"end_character":47},"in_reply_to":"3fa7e38b_3388321e","updated":"2019-09-17 01:09:02.000000000","message":"yes,we should use admin.","commit_id":"b69e89e88fa26d0890e24009b119439cd1c4f861"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"cdfcc0b023973036a415825b7c0bb607fbbf16d5","unresolved":false,"context_lines":[{"line_number":98,"context_line":"        st_id_2 \u003d self.st2[\u0027id\u0027]"},{"line_number":99,"context_line":"        # Update share type"},{"line_number":100,"context_line":"        self.assertRaises(lib_exc.Conflict,"},{"line_number":101,"context_line":"                          self.shares_v2_client.update_share_type,"},{"line_number":102,"context_line":"                          st_id_2, name_1, None, None, version)"}],"source_content_type":"text/x-python","patch_set":14,"id":"3fa7e38b_d37c3e22","line":101,"range":{"start_line":101,"start_character":31,"end_line":101,"end_character":47},"updated":"2019-09-16 20:50:14.000000000","message":"admin_shares_v2_client","commit_id":"b69e89e88fa26d0890e24009b119439cd1c4f861"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"83d9db451f1359349a7d4168b605ffb205d22aef","unresolved":false,"context_lines":[{"line_number":98,"context_line":"        st_id_2 \u003d self.st2[\u0027id\u0027]"},{"line_number":99,"context_line":"        # Update share type"},{"line_number":100,"context_line":"        self.assertRaises(lib_exc.Conflict,"},{"line_number":101,"context_line":"                          self.shares_v2_client.update_share_type,"},{"line_number":102,"context_line":"                          st_id_2, name_1, None, None, version)"}],"source_content_type":"text/x-python","patch_set":14,"id":"3fa7e38b_e1a16197","line":101,"range":{"start_line":101,"start_character":31,"end_line":101,"end_character":47},"in_reply_to":"3fa7e38b_d37c3e22","updated":"2019-09-17 01:09:02.000000000","message":"Done","commit_id":"b69e89e88fa26d0890e24009b119439cd1c4f861"}]}
