)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"36128712_6a156473","updated":"2023-02-28 21:27:12.000000000","message":"Thank you very much for updating this change Chris. Could you please address more comments inline?","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f82b3b754f6975f1c50cbfd6f8080731d9f20747","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"b16d9e7a_7fbaaf13","updated":"2023-03-01 04:38:43.000000000","message":"Hi Chris, \n\nplease check my comments on PS 18.. ","commit_id":"04d474fd7efae92e005d6084b8685ca5fa5781f9"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"fd4967350a502504764fcfa4025fafb0cf00b0d1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":23,"id":"8bda517d_8cf9b232","updated":"2023-04-04 18:41:15.000000000","message":"Thanks for the update; i\u0027ve some more comments inline","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"89a23957e4c1d474f4d214dcfdb4a87a7e19ec09","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":29,"id":"a9c36274_3342b003","updated":"2023-04-19 09:33:03.000000000","message":"This looks really good. I have a few comments, mostly related to the extra specs stuff, but they should be easy to address. Let me know if you\u0027ve any comments, otherwise nice work","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"6330ff496ad54a8f9052e4f119ca80df309c6c63","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"b8ed1f2e_4e91d3f3","updated":"2023-04-21 16:37:31.000000000","message":"@gouthamr Looks like you\u0027re up","commit_id":"0cc63065656c5cbb0f83f72a9e48b03eda2ba4e4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"c3480da6101b608c542d0112e4925930dab58cc3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":33,"id":"d67c2af5_5ca40e2a","updated":"2023-04-24 23:10:50.000000000","message":"Looks good mostly; just a request for some more functional testing. I\u0027d be happy to +2 once you address that. Thanks Chris!","commit_id":"e33d142c692b8952f8cc48f3d226dd8e2ebd5d33"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"08ceb6421d23c4090e1856bed02cd1b2f950e145","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":38,"id":"bcdb52ff_b0b05078","updated":"2023-04-27 22:14:51.000000000","message":"A minor comment regarding the docstring annotation; rest looks good to go. Feel free to make a change now, or submit a follow up with the minor fix if you wish. Thanks!","commit_id":"517e0180fda4f9fb246e99dd986abb9face1afc7"},{"author":{"_account_id":35763,"name":"Samuel Loegering","email":"samuel.loegering@ndsu.edu","username":"samloegy"},"change_message_id":"55f437952f38e1995339deded60f1b8e4445b28a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":39,"id":"604f38d3_3d98b89b","updated":"2023-05-02 17:22:13.000000000","message":"I checked the extra specs method and didn\u0027t find any red flags. Must have been an issue on my end earlier.","commit_id":"468bdcf2d1910dbd33f771aa956a0a538d3a8b33"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"98ce6b10fd9f3da70188941356ca920c7d08aacf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":39,"id":"ef6c5e3d_fb7a7980","updated":"2023-04-28 15:57:01.000000000","message":"Thanks, LGTM","commit_id":"468bdcf2d1910dbd33f771aa956a0a538d3a8b33"}],"doc/source/user/guides/shared_file_system.rst":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":true,"context_lines":[{"line_number":82,"context_line":"Create Share Type"},{"line_number":83,"context_line":"-----------------"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"Create a share from given attributes"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":".. literalinclude:: ../examples/shared_file_system/share_types.py"},{"line_number":88,"context_line":"   :pyobject: create_share_type"}],"source_content_type":"text/x-rst","patch_set":18,"id":"0d72faf4_0d26d425","line":85,"range":{"start_line":85,"start_character":9,"end_line":85,"end_character":14},"updated":"2023-02-28 21:27:12.000000000","message":"share type","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":35744},"change_message_id":"b9514efdf9ff8e9f2dbed318008ca834fddb1411","unresolved":false,"context_lines":[{"line_number":82,"context_line":"Create Share Type"},{"line_number":83,"context_line":"-----------------"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"Create a share from given attributes"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":".. literalinclude:: ../examples/shared_file_system/share_types.py"},{"line_number":88,"context_line":"   :pyobject: create_share_type"}],"source_content_type":"text/x-rst","patch_set":18,"id":"8ed8641c_bf43ea34","line":85,"range":{"start_line":85,"start_character":9,"end_line":85,"end_character":14},"in_reply_to":"0d72faf4_0d26d425","updated":"2023-03-07 19:08:47.000000000","message":"Done","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"}],"examples/shared_file_system/share_types.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":true,"context_lines":[{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"def create_share_type(conn, dhss, **attrs):"},{"line_number":60,"context_line":"    print(\"Creating a share from given attributes:\")"},{"line_number":61,"context_line":"    share_type \u003d conn.share.create_share_type(dhss, **attrs)"},{"line_number":62,"context_line":"    print(share_type)"}],"source_content_type":"text/x-python","patch_set":18,"id":"4228671e_ca6ce677","line":60,"range":{"start_line":60,"start_character":22,"end_line":60,"end_character":27},"updated":"2023-02-28 21:27:12.000000000","message":"share type","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":35744},"change_message_id":"948b36cb7d59b343b5b939fc6560d454d679660d","unresolved":false,"context_lines":[{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"def create_share_type(conn, dhss, **attrs):"},{"line_number":60,"context_line":"    print(\"Creating a share from given attributes:\")"},{"line_number":61,"context_line":"    share_type \u003d conn.share.create_share_type(dhss, **attrs)"},{"line_number":62,"context_line":"    print(share_type)"}],"source_content_type":"text/x-python","patch_set":18,"id":"93bb2cd6_56142021","line":60,"range":{"start_line":60,"start_character":22,"end_line":60,"end_character":27},"in_reply_to":"4228671e_ca6ce677","updated":"2023-03-07 19:08:57.000000000","message":"Done","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"}],"openstack/shared_file_system/v2/_proxy.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":10,"context_line":"# License for the specific language governing permissions and limitations"},{"line_number":11,"context_line":"# under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"from openstack import proxy"},{"line_number":15,"context_line":"from openstack.shared_file_system.v2 import availability_zone"},{"line_number":16,"context_line":"from openstack.shared_file_system.v2 import share_type as _share_type"}],"source_content_type":"text/x-python","patch_set":3,"id":"af5697fd_9f532a4f","line":13,"updated":"2021-05-12 14:22:44.000000000","message":"whoops","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":10,"context_line":"# License for the specific language governing permissions and limitations"},{"line_number":11,"context_line":"# under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"from openstack import proxy"},{"line_number":15,"context_line":"from openstack.shared_file_system.v2 import availability_zone"},{"line_number":16,"context_line":"from openstack.shared_file_system.v2 import share_type as _share_type"}],"source_content_type":"text/x-python","patch_set":3,"id":"192c616a_f209db3e","line":13,"in_reply_to":"af5697fd_9f532a4f","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":31,"context_line":"        r\"\"\"List shared file system share types"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        :returns: A generator of share type resources"},{"line_number":34,"context_line":"        :rtype: :class:`~openstack.shared_file_system.v2."},{"line_number":35,"context_line":"                                    \\share_type.ShareType`"},{"line_number":36,"context_line":"        \"\"\""},{"line_number":37,"context_line":"        return self._list(_share_type.ShareType)"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"4221ea31_f2e71223","line":35,"range":{"start_line":34,"start_character":0,"end_line":35,"end_character":58},"updated":"2021-05-12 14:22:44.000000000","message":"This should fit on one line","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        r\"\"\"List shared file system share types"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        :returns: A generator of share type resources"},{"line_number":34,"context_line":"        :rtype: :class:`~openstack.shared_file_system.v2."},{"line_number":35,"context_line":"                                    \\share_type.ShareType`"},{"line_number":36,"context_line":"        \"\"\""},{"line_number":37,"context_line":"        return self._list(_share_type.ShareType)"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"a72d5c3c_be9473cd","line":35,"range":{"start_line":34,"start_character":0,"end_line":35,"end_character":58},"in_reply_to":"4221ea31_f2e71223","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":true,"context_lines":[{"line_number":404,"context_line":"    def delete_share_type_extra_specs(self, share_type_id, keys):"},{"line_number":405,"context_line":"        \"\"\"Delete the extra_specs for a share type"},{"line_number":406,"context_line":""},{"line_number":407,"context_line":"        Note: This method will do a HTTP DELETE request for every key in keys."},{"line_number":408,"context_line":"        :param share_type_id: The ID of the share type."},{"line_number":409,"context_line":"        :param keys: The keys to delete"},{"line_number":410,"context_line":"        :returns: ``None``"}],"source_content_type":"text/x-python","patch_set":18,"id":"ec8f9062_937b908f","line":407,"range":{"start_line":407,"start_character":60,"end_line":407,"end_character":65},"updated":"2023-02-28 21:27:12.000000000","message":"nit: each","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":35744},"change_message_id":"b9514efdf9ff8e9f2dbed318008ca834fddb1411","unresolved":false,"context_lines":[{"line_number":404,"context_line":"    def delete_share_type_extra_specs(self, share_type_id, keys):"},{"line_number":405,"context_line":"        \"\"\"Delete the extra_specs for a share type"},{"line_number":406,"context_line":""},{"line_number":407,"context_line":"        Note: This method will do a HTTP DELETE request for every key in keys."},{"line_number":408,"context_line":"        :param share_type_id: The ID of the share type."},{"line_number":409,"context_line":"        :param keys: The keys to delete"},{"line_number":410,"context_line":"        :returns: ``None``"}],"source_content_type":"text/x-python","patch_set":18,"id":"12b00e52_82035c58","line":407,"range":{"start_line":407,"start_character":60,"end_line":407,"end_character":65},"in_reply_to":"ec8f9062_937b908f","updated":"2023-03-07 19:08:47.000000000","message":"Done","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":true,"context_lines":[{"line_number":416,"context_line":"        \"\"\"Creates a share from attributes"},{"line_number":417,"context_line":""},{"line_number":418,"context_line":"        :returns: Details of the new share type"},{"line_number":419,"context_line":"        :param dhss: Boolean value of driver handles share service flag"},{"line_number":420,"context_line":"        :param dict attrs: Attributes which will be used to create"},{"line_number":421,"context_line":"            a :class:`~openstack.shared_file_system.v2."},{"line_number":422,"context_line":"            share_type.ShareType`,comprised of the properties"}],"source_content_type":"text/x-python","patch_set":18,"id":"eb7d4537_82a9c815","line":419,"range":{"start_line":419,"start_character":59,"end_line":419,"end_character":66},"updated":"2023-02-28 21:27:12.000000000","message":"servers","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":35744},"change_message_id":"b9514efdf9ff8e9f2dbed318008ca834fddb1411","unresolved":false,"context_lines":[{"line_number":416,"context_line":"        \"\"\"Creates a share from attributes"},{"line_number":417,"context_line":""},{"line_number":418,"context_line":"        :returns: Details of the new share type"},{"line_number":419,"context_line":"        :param dhss: Boolean value of driver handles share service flag"},{"line_number":420,"context_line":"        :param dict attrs: Attributes which will be used to create"},{"line_number":421,"context_line":"            a :class:`~openstack.shared_file_system.v2."},{"line_number":422,"context_line":"            share_type.ShareType`,comprised of the properties"}],"source_content_type":"text/x-python","patch_set":18,"id":"cb54df0b_67f1a288","line":419,"range":{"start_line":419,"start_character":59,"end_line":419,"end_character":66},"in_reply_to":"eb7d4537_82a9c815","updated":"2023-03-07 19:08:47.000000000","message":"Done","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":true,"context_lines":[{"line_number":425,"context_line":"            share_type.ShareType`"},{"line_number":426,"context_line":"        \"\"\""},{"line_number":427,"context_line":"        return self._create("},{"line_number":428,"context_line":"            _share_type.ShareType, driver_handles_share_servers\u003ddhss, **attrs)"}],"source_content_type":"text/x-python","patch_set":18,"id":"f6a5ae6a_e6c70117","line":428,"range":{"start_line":428,"start_character":35,"end_line":428,"end_character":68},"updated":"2023-02-28 21:27:12.000000000","message":"This is meant to be within \"extra_specs\", and we\u0027ll need to sanitize extra_specs, just like you\u0027re doing in the query on line 353 of this file, as well as \n\nhttps://docs.openstack.org/api-ref/shared-file-system/?expanded\u003dlist-share-types-detail,create-share-type-detail#id487\n\n\nSince you\u0027re making \"dhss\" a mandatory parameter, try this:\n\n\n   extra_specs \u003d attrs.pop(\u0027extra_specs\u0027, {})\n   extra_specs.pop(\u0027driver_handles_share_servers\u0027, None)\n   extra_specs.update({\n       \u0027driver_handles_share_servers\u0027: dhss,\n   })\n   attrs[\u0027extra_specs\u0027] \u003d extra_specs\n   return self._create(_share_type.ShareType, **attrs)","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":35744},"change_message_id":"b9514efdf9ff8e9f2dbed318008ca834fddb1411","unresolved":false,"context_lines":[{"line_number":425,"context_line":"            share_type.ShareType`"},{"line_number":426,"context_line":"        \"\"\""},{"line_number":427,"context_line":"        return self._create("},{"line_number":428,"context_line":"            _share_type.ShareType, driver_handles_share_servers\u003ddhss, **attrs)"}],"source_content_type":"text/x-python","patch_set":18,"id":"39eddf2b_361a71ef","line":428,"range":{"start_line":428,"start_character":35,"end_line":428,"end_character":68},"in_reply_to":"f6a5ae6a_e6c70117","updated":"2023-03-07 19:08:47.000000000","message":"Done","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"fd4967350a502504764fcfa4025fafb0cf00b0d1","unresolved":true,"context_lines":[{"line_number":575,"context_line":"        res \u003d self._get_resource(_share_type.ShareType, share_type_id)"},{"line_number":576,"context_line":"        return res.delete_extra_specs(self, keys)"},{"line_number":577,"context_line":""},{"line_number":578,"context_line":"    def create_share_type(self, dhss, **attrs):"},{"line_number":579,"context_line":"        \"\"\"Creates a share from attributes"},{"line_number":580,"context_line":""},{"line_number":581,"context_line":"        :returns: Details of the new share type"}],"source_content_type":"text/x-python","patch_set":23,"id":"84c58518_1067ddae","line":578,"range":{"start_line":578,"start_character":31,"end_line":578,"end_character":32},"updated":"2023-04-04 18:41:15.000000000","message":"Take a look at the share types documentation\n\nhere: https://docs.openstack.org/manila/latest/admin/shared-file-systems-share-types.html\nand \nhere: https://docs.openstack.org/manila/latest/admin/capabilities_and_extra_specs.html#capabilities-and-extra-specs\n\nto understand how share types work and the semantics of the request/response","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"fd4967350a502504764fcfa4025fafb0cf00b0d1","unresolved":true,"context_lines":[{"line_number":575,"context_line":"        res \u003d self._get_resource(_share_type.ShareType, share_type_id)"},{"line_number":576,"context_line":"        return res.delete_extra_specs(self, keys)"},{"line_number":577,"context_line":""},{"line_number":578,"context_line":"    def create_share_type(self, dhss, **attrs):"},{"line_number":579,"context_line":"        \"\"\"Creates a share from attributes"},{"line_number":580,"context_line":""},{"line_number":581,"context_line":"        :returns: Details of the new share type"}],"source_content_type":"text/x-python","patch_set":23,"id":"9165eb37_dcd1686e","line":578,"range":{"start_line":578,"start_character":31,"end_line":578,"end_character":32},"updated":"2023-04-04 18:41:15.000000000","message":"name should be a mandatory arg as well, and not a kwarg","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"89a23957e4c1d474f4d214dcfdb4a87a7e19ec09","unresolved":false,"context_lines":[{"line_number":575,"context_line":"        res \u003d self._get_resource(_share_type.ShareType, share_type_id)"},{"line_number":576,"context_line":"        return res.delete_extra_specs(self, keys)"},{"line_number":577,"context_line":""},{"line_number":578,"context_line":"    def create_share_type(self, dhss, **attrs):"},{"line_number":579,"context_line":"        \"\"\"Creates a share from attributes"},{"line_number":580,"context_line":""},{"line_number":581,"context_line":"        :returns: Details of the new share type"}],"source_content_type":"text/x-python","patch_set":23,"id":"d4d9bd2f_26dba58e","line":578,"range":{"start_line":578,"start_character":31,"end_line":578,"end_character":32},"in_reply_to":"84c58518_1067ddae","updated":"2023-04-19 09:33:03.000000000","message":"Ack","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":35744},"change_message_id":"c65e93854e8c3b1d8840e275e67b4b86aaf11d87","unresolved":false,"context_lines":[{"line_number":575,"context_line":"        res \u003d self._get_resource(_share_type.ShareType, share_type_id)"},{"line_number":576,"context_line":"        return res.delete_extra_specs(self, keys)"},{"line_number":577,"context_line":""},{"line_number":578,"context_line":"    def create_share_type(self, dhss, **attrs):"},{"line_number":579,"context_line":"        \"\"\"Creates a share from attributes"},{"line_number":580,"context_line":""},{"line_number":581,"context_line":"        :returns: Details of the new share type"}],"source_content_type":"text/x-python","patch_set":23,"id":"ea7c2eab_66291682","line":578,"range":{"start_line":578,"start_character":31,"end_line":578,"end_character":32},"in_reply_to":"9165eb37_dcd1686e","updated":"2023-04-18 15:38:36.000000000","message":"Done","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"fd4967350a502504764fcfa4025fafb0cf00b0d1","unresolved":true,"context_lines":[{"line_number":580,"context_line":""},{"line_number":581,"context_line":"        :returns: Details of the new share type"},{"line_number":582,"context_line":"        :param dhss: Boolean value of driver handles share servers flag"},{"line_number":583,"context_line":"        :param dict attrs: Attributes which will be used to create"},{"line_number":584,"context_line":"            a :class:`~openstack.shared_file_system.v2."},{"line_number":585,"context_line":"            share_type.ShareType`,comprised of the properties"},{"line_number":586,"context_line":"            on the Share types class."},{"line_number":587,"context_line":"        :rtype: :class:`~openstack.shared_file_system.v2."},{"line_number":588,"context_line":"            share_type.ShareType`"},{"line_number":589,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":23,"id":"100f7e4b_62f42775","line":586,"range":{"start_line":583,"start_character":27,"end_line":586,"end_character":37},"updated":"2023-04-04 18:41:15.000000000","message":"add that \"description\" and \"extra_specs\" are allowed in as attrs","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":35744},"change_message_id":"c65e93854e8c3b1d8840e275e67b4b86aaf11d87","unresolved":false,"context_lines":[{"line_number":580,"context_line":""},{"line_number":581,"context_line":"        :returns: Details of the new share type"},{"line_number":582,"context_line":"        :param dhss: Boolean value of driver handles share servers flag"},{"line_number":583,"context_line":"        :param dict attrs: Attributes which will be used to create"},{"line_number":584,"context_line":"            a :class:`~openstack.shared_file_system.v2."},{"line_number":585,"context_line":"            share_type.ShareType`,comprised of the properties"},{"line_number":586,"context_line":"            on the Share types class."},{"line_number":587,"context_line":"        :rtype: :class:`~openstack.shared_file_system.v2."},{"line_number":588,"context_line":"            share_type.ShareType`"},{"line_number":589,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":23,"id":"c7bf4a63_1f3431c7","line":586,"range":{"start_line":583,"start_character":27,"end_line":586,"end_character":37},"in_reply_to":"100f7e4b_62f42775","updated":"2023-04-18 15:38:36.000000000","message":"Done","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"fd4967350a502504764fcfa4025fafb0cf00b0d1","unresolved":true,"context_lines":[{"line_number":592,"context_line":"        extra_specs.update({"},{"line_number":593,"context_line":"            \u0027driver_handles_share_servers\u0027: dhss,"},{"line_number":594,"context_line":"        })"},{"line_number":595,"context_line":"        attrs[\u0027extra_specs\u0027] \u003d extra_specs"},{"line_number":596,"context_line":"        return self._create(_share_type.ShareType, **attrs)"}],"source_content_type":"text/x-python","patch_set":23,"id":"4bb9d7ac_13bd1eee","line":595,"updated":"2023-04-04 18:41:15.000000000","message":"attrs[\u0027name\u0027] \u003d name","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":35744},"change_message_id":"c65e93854e8c3b1d8840e275e67b4b86aaf11d87","unresolved":false,"context_lines":[{"line_number":592,"context_line":"        extra_specs.update({"},{"line_number":593,"context_line":"            \u0027driver_handles_share_servers\u0027: dhss,"},{"line_number":594,"context_line":"        })"},{"line_number":595,"context_line":"        attrs[\u0027extra_specs\u0027] \u003d extra_specs"},{"line_number":596,"context_line":"        return self._create(_share_type.ShareType, **attrs)"}],"source_content_type":"text/x-python","patch_set":23,"id":"b9b8487a_0db4d8c0","line":595,"in_reply_to":"4bb9d7ac_13bd1eee","updated":"2023-04-18 15:38:36.000000000","message":"Done","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"c3480da6101b608c542d0112e4925930dab58cc3","unresolved":true,"context_lines":[{"line_number":702,"context_line":"        result \u003d _share_type.ShareType.existing("},{"line_number":703,"context_line":"            id\u003dres.id, extra_specs\u003dextra_specs)"},{"line_number":704,"context_line":"        return result"},{"line_number":705,"context_line":""},{"line_number":706,"context_line":"    def delete_share_type_extra_specs(self, share_type_id, keys):"},{"line_number":707,"context_line":"        \"\"\"Delete the extra_specs for a share type"},{"line_number":708,"context_line":""},{"line_number":709,"context_line":"        Note: This method will do a HTTP DELETE request for each key in keys."},{"line_number":710,"context_line":"        :param share_type_id: The ID of the share type."},{"line_number":711,"context_line":"        :param keys: The keys to delete"},{"line_number":712,"context_line":"        :returns: ``None``"},{"line_number":713,"context_line":"        \"\"\""},{"line_number":714,"context_line":"        res \u003d self._get_resource(_share_type.ShareType, share_type_id)"},{"line_number":715,"context_line":"        return res.delete_extra_specs(self, keys)"},{"line_number":716,"context_line":""},{"line_number":717,"context_line":"    def create_share_type(self, name, dhss, **attrs):"},{"line_number":718,"context_line":"        \"\"\"Creates a share from attributes"}],"source_content_type":"text/x-python","patch_set":33,"id":"01326b80_ea367e7d","line":715,"range":{"start_line":705,"start_character":0,"end_line":715,"end_character":49},"updated":"2023-04-24 23:10:50.000000000","message":"this is missing a functional test.","commit_id":"e33d142c692b8952f8cc48f3d226dd8e2ebd5d33"},{"author":{"_account_id":35744},"change_message_id":"05ce66d1a308108b47a47e23f5c80b68abb78a4b","unresolved":false,"context_lines":[{"line_number":702,"context_line":"        result \u003d _share_type.ShareType.existing("},{"line_number":703,"context_line":"            id\u003dres.id, extra_specs\u003dextra_specs)"},{"line_number":704,"context_line":"        return result"},{"line_number":705,"context_line":""},{"line_number":706,"context_line":"    def delete_share_type_extra_specs(self, share_type_id, keys):"},{"line_number":707,"context_line":"        \"\"\"Delete the extra_specs for a share type"},{"line_number":708,"context_line":""},{"line_number":709,"context_line":"        Note: This method will do a HTTP DELETE request for each key in keys."},{"line_number":710,"context_line":"        :param share_type_id: The ID of the share type."},{"line_number":711,"context_line":"        :param keys: The keys to delete"},{"line_number":712,"context_line":"        :returns: ``None``"},{"line_number":713,"context_line":"        \"\"\""},{"line_number":714,"context_line":"        res \u003d self._get_resource(_share_type.ShareType, share_type_id)"},{"line_number":715,"context_line":"        return res.delete_extra_specs(self, keys)"},{"line_number":716,"context_line":""},{"line_number":717,"context_line":"    def create_share_type(self, name, dhss, **attrs):"},{"line_number":718,"context_line":"        \"\"\"Creates a share from attributes"}],"source_content_type":"text/x-python","patch_set":33,"id":"e178fe53_e70f11a3","line":715,"range":{"start_line":705,"start_character":0,"end_line":715,"end_character":49},"in_reply_to":"01326b80_ea367e7d","updated":"2023-04-28 02:29:41.000000000","message":"Done","commit_id":"e33d142c692b8952f8cc48f3d226dd8e2ebd5d33"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"08ceb6421d23c4090e1856bed02cd1b2f950e145","unresolved":true,"context_lines":[{"line_number":763,"context_line":""},{"line_number":764,"context_line":"        Note: This method will do a HTTP DELETE request for each key in keys."},{"line_number":765,"context_line":"        :param share_type_id: The ID of the share type."},{"line_number":766,"context_line":"        :param args keys: The keys to delete"},{"line_number":767,"context_line":"        :returns: ``None``"},{"line_number":768,"context_line":"        \"\"\""},{"line_number":769,"context_line":"        res \u003d self._get_resource(_share_type.ShareType, share_type_id)"}],"source_content_type":"text/x-python","patch_set":38,"id":"b9ebd83c_0dd093c6","line":766,"range":{"start_line":766,"start_character":15,"end_line":766,"end_character":19},"updated":"2023-04-27 22:14:51.000000000","message":"I think you mean list[str]","commit_id":"517e0180fda4f9fb246e99dd986abb9face1afc7"},{"author":{"_account_id":35744},"change_message_id":"05ce66d1a308108b47a47e23f5c80b68abb78a4b","unresolved":false,"context_lines":[{"line_number":763,"context_line":""},{"line_number":764,"context_line":"        Note: This method will do a HTTP DELETE request for each key in keys."},{"line_number":765,"context_line":"        :param share_type_id: The ID of the share type."},{"line_number":766,"context_line":"        :param args keys: The keys to delete"},{"line_number":767,"context_line":"        :returns: ``None``"},{"line_number":768,"context_line":"        \"\"\""},{"line_number":769,"context_line":"        res \u003d self._get_resource(_share_type.ShareType, share_type_id)"}],"source_content_type":"text/x-python","patch_set":38,"id":"03ebb362_d3f5cb38","line":766,"range":{"start_line":766,"start_character":15,"end_line":766,"end_character":19},"in_reply_to":"b9ebd83c_0dd093c6","updated":"2023-04-28 02:29:41.000000000","message":"Done","commit_id":"517e0180fda4f9fb246e99dd986abb9face1afc7"}],"openstack/shared_file_system/v2/share_type.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"89a23957e4c1d474f4d214dcfdb4a87a7e19ec09","unresolved":true,"context_lines":[{"line_number":34,"context_line":"    #: Description of the share type"},{"line_number":35,"context_line":"    description \u003d resource.Body(\"description\", type\u003dstr)"},{"line_number":36,"context_line":"    #: List of extra specs for share types"},{"line_number":37,"context_line":"    extra_specs \u003d resource.Body(\"extra_specs\", type\u003dobject)"},{"line_number":38,"context_line":"    #: Indicates if share type is default"},{"line_number":39,"context_line":"    is_default \u003d resource.Body(\"is_default\", type\u003dbool)"},{"line_number":40,"context_line":"    #: Indicates if share type is public"}],"source_content_type":"text/x-python","patch_set":29,"id":"4b0a74da_9b7bb568","line":37,"updated":"2023-04-19 09:33:03.000000000","message":"Is this an object or a dict? I assumed it was a dict?\n\n    extra_specs \u003d resource.Body(\"extra_specs\", type\u003ddict, default\u003d{})","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":35744},"change_message_id":"96444d4c382c06ff54ffb9119be50f2cacae038c","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    #: Description of the share type"},{"line_number":35,"context_line":"    description \u003d resource.Body(\"description\", type\u003dstr)"},{"line_number":36,"context_line":"    #: List of extra specs for share types"},{"line_number":37,"context_line":"    extra_specs \u003d resource.Body(\"extra_specs\", type\u003dobject)"},{"line_number":38,"context_line":"    #: Indicates if share type is default"},{"line_number":39,"context_line":"    is_default \u003d resource.Body(\"is_default\", type\u003dbool)"},{"line_number":40,"context_line":"    #: Indicates if share type is public"}],"source_content_type":"text/x-python","patch_set":29,"id":"bcfc42ec_2fe2c298","line":37,"in_reply_to":"4b0a74da_9b7bb568","updated":"2023-04-19 15:50:31.000000000","message":"Done","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"89a23957e4c1d474f4d214dcfdb4a87a7e19ec09","unresolved":true,"context_lines":[{"line_number":43,"context_line":"    required_extra_specs \u003d resource.Body(\"required_extra_specs\", type\u003dobject)"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    def _extra_specs(self, method, key\u003dNone, delete\u003dFalse,"},{"line_number":46,"context_line":"                     extra_specs\u003dNone):"},{"line_number":47,"context_line":"        extra_specs \u003d extra_specs or {}"},{"line_number":48,"context_line":"        for k, v in extra_specs.items():"},{"line_number":49,"context_line":"            if not isinstance(v, str):"}],"source_content_type":"text/x-python","patch_set":29,"id":"b4eb72f6_5319d059","line":46,"updated":"2023-04-19 09:33:03.000000000","message":"nit: can fit on one line","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":35744},"change_message_id":"96444d4c382c06ff54ffb9119be50f2cacae038c","unresolved":false,"context_lines":[{"line_number":43,"context_line":"    required_extra_specs \u003d resource.Body(\"required_extra_specs\", type\u003dobject)"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    def _extra_specs(self, method, key\u003dNone, delete\u003dFalse,"},{"line_number":46,"context_line":"                     extra_specs\u003dNone):"},{"line_number":47,"context_line":"        extra_specs \u003d extra_specs or {}"},{"line_number":48,"context_line":"        for k, v in extra_specs.items():"},{"line_number":49,"context_line":"            if not isinstance(v, str):"}],"source_content_type":"text/x-python","patch_set":29,"id":"844388b3_0417f164","line":46,"in_reply_to":"b4eb72f6_5319d059","updated":"2023-04-19 15:50:31.000000000","message":"Done","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"89a23957e4c1d474f4d214dcfdb4a87a7e19ec09","unresolved":false,"context_lines":[{"line_number":66,"context_line":"        # DELETE doesn\u0027t return a JSON body while everything else does."},{"line_number":67,"context_line":"        return response.json() if not delete else None"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    def set_extra_specs(self, session, **extra_specs):"},{"line_number":70,"context_line":"        \"\"\"Update extra_specs"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        This call will replace only the extra_specs with the same keys"}],"source_content_type":"text/x-python","patch_set":29,"id":"3526fdc8_e65a27ac","line":69,"updated":"2023-04-19 09:33:03.000000000","message":"I was going to suggest calling this \u0027update_extra_specs_properties\u0027 to align with the nova flavors implementation, but I see now that this is based on the glance (image) implementation. Fair enough.","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"89a23957e4c1d474f4d214dcfdb4a87a7e19ec09","unresolved":true,"context_lines":[{"line_number":73,"context_line":"        given here.  Other keys will not be modified."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        :param session: The session to use for this request."},{"line_number":76,"context_line":"        :param kwargs extra_specs: key/value extra_specs pairs to be update on"},{"line_number":77,"context_line":"        \"\"\""},{"line_number":78,"context_line":"        if not extra_specs:"},{"line_number":79,"context_line":"            return dict()"}],"source_content_type":"text/x-python","patch_set":29,"id":"62052760_ef7804dc","line":76,"updated":"2023-04-19 09:33:03.000000000","message":"Need the return type.","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":35744},"change_message_id":"96444d4c382c06ff54ffb9119be50f2cacae038c","unresolved":false,"context_lines":[{"line_number":73,"context_line":"        given here.  Other keys will not be modified."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        :param session: The session to use for this request."},{"line_number":76,"context_line":"        :param kwargs extra_specs: key/value extra_specs pairs to be update on"},{"line_number":77,"context_line":"        \"\"\""},{"line_number":78,"context_line":"        if not extra_specs:"},{"line_number":79,"context_line":"            return dict()"}],"source_content_type":"text/x-python","patch_set":29,"id":"10e8db78_ea6ef9ea","line":76,"in_reply_to":"62052760_ef7804dc","updated":"2023-04-19 15:50:31.000000000","message":"Done","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"c3480da6101b608c542d0112e4925930dab58cc3","unresolved":true,"context_lines":[{"line_number":72,"context_line":"        given here.  Other keys will not be modified."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        :param session: The session to use for this request."},{"line_number":75,"context_line":"        :param kwargs extra_specs: key/value extra_specs pairs to be update on"},{"line_number":76,"context_line":"        :rtype: ``Dict``"},{"line_number":77,"context_line":"        \"\"\""},{"line_number":78,"context_line":"        if not extra_specs:"}],"source_content_type":"text/x-python","patch_set":33,"id":"e3394da4_7e42ee3e","line":75,"range":{"start_line":75,"start_character":63,"end_line":75,"end_character":78},"updated":"2023-04-24 23:10:50.000000000","message":"set or update","commit_id":"e33d142c692b8952f8cc48f3d226dd8e2ebd5d33"},{"author":{"_account_id":35744},"change_message_id":"05ce66d1a308108b47a47e23f5c80b68abb78a4b","unresolved":false,"context_lines":[{"line_number":72,"context_line":"        given here.  Other keys will not be modified."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        :param session: The session to use for this request."},{"line_number":75,"context_line":"        :param kwargs extra_specs: key/value extra_specs pairs to be update on"},{"line_number":76,"context_line":"        :rtype: ``Dict``"},{"line_number":77,"context_line":"        \"\"\""},{"line_number":78,"context_line":"        if not extra_specs:"}],"source_content_type":"text/x-python","patch_set":33,"id":"8c2a01ee_9346f4d0","line":75,"range":{"start_line":75,"start_character":63,"end_line":75,"end_character":78},"in_reply_to":"e3394da4_7e42ee3e","updated":"2023-04-28 02:29:41.000000000","message":"Done","commit_id":"e33d142c692b8952f8cc48f3d226dd8e2ebd5d33"}],"openstack/tests/functional/shared_file_system/base.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":23,"context_line":"                             min_microversion\u003dself.min_microversion)"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def create_share_type(self, **kwargs):"},{"line_number":26,"context_line":"        type \u003d self.conn.share.create_share_type(**kwargs)"},{"line_number":27,"context_line":"        self.addCleanup(self.conn.share.delete_share_type,"},{"line_number":28,"context_line":"                        type.id, ignore_missing\u003dTrue)"},{"line_number":29,"context_line":"        self.assertIsNotNone(type.id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"441178b6_de0434b8","line":26,"range":{"start_line":26,"start_character":8,"end_line":26,"end_character":12},"updated":"2021-05-12 14:22:44.000000000","message":"let\u0027s not call this type since that mirrors a keyword. How about \u0027share_type\u0027 or \u0027sot\u0027?","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":23,"context_line":"                             min_microversion\u003dself.min_microversion)"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def create_share_type(self, **kwargs):"},{"line_number":26,"context_line":"        type \u003d self.conn.share.create_share_type(**kwargs)"},{"line_number":27,"context_line":"        self.addCleanup(self.conn.share.delete_share_type,"},{"line_number":28,"context_line":"                        type.id, ignore_missing\u003dTrue)"},{"line_number":29,"context_line":"        self.assertIsNotNone(type.id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa9eff30_1aba3235","line":26,"range":{"start_line":26,"start_character":8,"end_line":26,"end_character":12},"in_reply_to":"441178b6_de0434b8","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"fd4967350a502504764fcfa4025fafb0cf00b0d1","unresolved":true,"context_lines":[{"line_number":58,"context_line":"        self.assertIsNotNone(share_snapshot.id)"},{"line_number":59,"context_line":"        return share_snapshot"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def create_share_type(self, dhss, **kwargs):"},{"line_number":62,"context_line":"        share_type \u003d self.operator_cloud.share.create_share_type("},{"line_number":63,"context_line":"            dhss, **kwargs)"},{"line_number":64,"context_line":"        self.addCleanup(self.conn.share.delete_share_type,"}],"source_content_type":"text/x-python","patch_set":23,"id":"24fcdbcb_76efb42b","line":61,"range":{"start_line":61,"start_character":31,"end_line":61,"end_character":32},"updated":"2023-04-04 18:41:15.000000000","message":"name\n\nmake \"name\" an arg instead of a kwarg","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":35744},"change_message_id":"a3c49a3d1d4c8ab8c6ae246341d65a57dac9eccd","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        self.assertIsNotNone(share_snapshot.id)"},{"line_number":59,"context_line":"        return share_snapshot"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def create_share_type(self, dhss, **kwargs):"},{"line_number":62,"context_line":"        share_type \u003d self.operator_cloud.share.create_share_type("},{"line_number":63,"context_line":"            dhss, **kwargs)"},{"line_number":64,"context_line":"        self.addCleanup(self.conn.share.delete_share_type,"}],"source_content_type":"text/x-python","patch_set":23,"id":"2b2cba00_866922e1","line":61,"range":{"start_line":61,"start_character":31,"end_line":61,"end_character":32},"in_reply_to":"24fcdbcb_76efb42b","updated":"2023-04-18 15:52:08.000000000","message":"Done","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"}],"openstack/tests/functional/shared_file_system/test_share_type.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"class ShareTypeTest(base.BaseSharedFileSystemTest):"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"    def test_share_types_create_get_update_delete(self):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"        #: Create and assert share type"},{"line_number":21,"context_line":"        myShareType \u003d self.create_share_type("}],"source_content_type":"text/x-python","patch_set":3,"id":"8315b995_c62525f6","line":18,"updated":"2021-05-12 14:22:44.000000000","message":"This is unusual. The standard practice for tests like this is to create the resource in setUp and then delete it in tearDown, with each test then testing a different thing. This works, but I wonder if it would make sense to use the same pattern here so everything works the same?","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"ad5f61c6273f6a9caa7506166f9b36613040c069","unresolved":true,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"class ShareTypeTest(base.BaseSharedFileSystemTest):"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"    def test_share_types_create_get_update_delete(self):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"        #: Create and assert share type"},{"line_number":21,"context_line":"        myShareType \u003d self.create_share_type("}],"source_content_type":"text/x-python","patch_set":3,"id":"a389a8b4_5a9486dd","line":18,"in_reply_to":"8315b995_c62525f6","updated":"2021-06-11 16:05:35.000000000","message":"As an example: https://github.com/openstack/openstacksdk/blob/master/openstack/tests/functional/block_storage/v3/test_type.py","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"class ShareTypeTest(base.BaseSharedFileSystemTest):"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"    def test_share_types_create_get_update_delete(self):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"        #: Create and assert share type"},{"line_number":21,"context_line":"        myShareType \u003d self.create_share_type("}],"source_content_type":"text/x-python","patch_set":3,"id":"6ed8c33f_fa082808","line":18,"in_reply_to":"a389a8b4_5a9486dd","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":18,"context_line":"    def test_share_types_create_get_update_delete(self):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"        #: Create and assert share type"},{"line_number":21,"context_line":"        myShareType \u003d self.create_share_type("},{"line_number":22,"context_line":"            name\u003d\"test_default1\","},{"line_number":23,"context_line":"            extra_specs\u003d{"},{"line_number":24,"context_line":"                \"driver_handles_share_servers\": \"False\""}],"source_content_type":"text/x-python","patch_set":3,"id":"a74c85d4_a3dec161","line":21,"range":{"start_line":21,"start_character":8,"end_line":21,"end_character":19},"updated":"2021-05-12 14:22:44.000000000","message":"we don\u0027t tend to use camelCase in OpenStack. Can you rename this my_share_type?","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    def test_share_types_create_get_update_delete(self):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"        #: Create and assert share type"},{"line_number":21,"context_line":"        myShareType \u003d self.create_share_type("},{"line_number":22,"context_line":"            name\u003d\"test_default1\","},{"line_number":23,"context_line":"            extra_specs\u003d{"},{"line_number":24,"context_line":"                \"driver_handles_share_servers\": \"False\""}],"source_content_type":"text/x-python","patch_set":3,"id":"fb2277a7_d95aa1c2","line":21,"range":{"start_line":21,"start_character":8,"end_line":21,"end_character":19},"in_reply_to":"a74c85d4_a3dec161","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":true,"context_lines":[{"line_number":23,"context_line":"        stype \u003d self.create_share_type("},{"line_number":24,"context_line":"            \u0027False\u0027,"},{"line_number":25,"context_line":"            name\u003dself.SHARE_TYPE_NAME,"},{"line_number":26,"context_line":"            extra_specs\u003d{\u0027driver_handles_share_servers\u0027: False},"},{"line_number":27,"context_line":"            description\u003dNone)"},{"line_number":28,"context_line":"        self.assertIsNotNone(stype)"},{"line_number":29,"context_line":"        self.assertIsNotNone(stype.id)"}],"source_content_type":"text/x-python","patch_set":18,"id":"2c044499_8e4ad29c","line":26,"range":{"start_line":26,"start_character":25,"end_line":26,"end_character":62},"updated":"2023-02-28 21:27:12.000000000","message":"This is repetitive.. building on the comment here: https://review.opendev.org/c/openstack/openstacksdk/+/783123/18/openstack/shared_file_system/v2/_proxy.py#428\n\nYou can use different extra specs here because the \"dhss\" spec should be set from the value you\u0027re passing in line 24 by the create method. You can include other extra specs if you wish, try:\n\n  extra_specs\u003d{\u0027snapshot_support\u0027: True}","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":35744},"change_message_id":"b9514efdf9ff8e9f2dbed318008ca834fddb1411","unresolved":false,"context_lines":[{"line_number":23,"context_line":"        stype \u003d self.create_share_type("},{"line_number":24,"context_line":"            \u0027False\u0027,"},{"line_number":25,"context_line":"            name\u003dself.SHARE_TYPE_NAME,"},{"line_number":26,"context_line":"            extra_specs\u003d{\u0027driver_handles_share_servers\u0027: False},"},{"line_number":27,"context_line":"            description\u003dNone)"},{"line_number":28,"context_line":"        self.assertIsNotNone(stype)"},{"line_number":29,"context_line":"        self.assertIsNotNone(stype.id)"}],"source_content_type":"text/x-python","patch_set":18,"id":"bc36184d_a1f31e35","line":26,"range":{"start_line":26,"start_character":25,"end_line":26,"end_character":62},"in_reply_to":"2c044499_8e4ad29c","updated":"2023-03-07 19:08:47.000000000","message":"Done","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":true,"context_lines":[{"line_number":35,"context_line":"        assert isinstance(sot, _share_type.ShareType)"},{"line_number":36,"context_line":"        self.assertEqual(self.SHARE_TYPE_ID, sot.id)"},{"line_number":37,"context_line":"        self.assertEqual(sot.extra_specs,"},{"line_number":38,"context_line":"                         {\u0027driver_handles_share_servers\u0027: \u0027False\u0027})"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def test_list_share_type(self):"},{"line_number":41,"context_line":"        share_types \u003d self.user_cloud.shared_file_system.share_types()"}],"source_content_type":"text/x-python","patch_set":18,"id":"fc1675c0_d5011090","line":38,"range":{"start_line":38,"start_character":65,"end_line":38,"end_character":67},"updated":"2023-02-28 21:27:12.000000000","message":"If you add other extra specs like suggested above, this assert needs to change\n\n\nAlso, please flip the order of the assert here; by convention, assertEqual should be:\n\n self.assertEqual(expected, actual)\n \nSo, it\u0027d be:\n\n self.assertEqual(\n     {\u0027driver_handles_share_servers\u0027: \u0027False\u0027, \n     \u0027snapshot_support\u0027: False},\n     sot.extra_specs)","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":35744},"change_message_id":"b9514efdf9ff8e9f2dbed318008ca834fddb1411","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        assert isinstance(sot, _share_type.ShareType)"},{"line_number":36,"context_line":"        self.assertEqual(self.SHARE_TYPE_ID, sot.id)"},{"line_number":37,"context_line":"        self.assertEqual(sot.extra_specs,"},{"line_number":38,"context_line":"                         {\u0027driver_handles_share_servers\u0027: \u0027False\u0027})"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def test_list_share_type(self):"},{"line_number":41,"context_line":"        share_types \u003d self.user_cloud.shared_file_system.share_types()"}],"source_content_type":"text/x-python","patch_set":18,"id":"d9c53b05_bf416635","line":38,"range":{"start_line":38,"start_character":65,"end_line":38,"end_character":67},"in_reply_to":"fc1675c0_d5011090","updated":"2023-03-07 19:08:47.000000000","message":"Done","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":true,"context_lines":[{"line_number":61,"context_line":"            self.SHARE_TYPE_ID)"},{"line_number":62,"context_line":"        sot_set \u003d self.operator_cloud.shared_file_system.\\"},{"line_number":63,"context_line":"            update_share_type_extra_specs(sot[\u0027id\u0027], foo\u003d\u0027bar\u0027, baz\u003d\u0027qux\u0027)"},{"line_number":64,"context_line":"        self.assertIn(\u0027extra_specs\u0027, sot_set)"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    def tearDown(self):"},{"line_number":67,"context_line":"        stype \u003d self.delete_share_type("}],"source_content_type":"text/x-python","patch_set":18,"id":"addc3e25_35a7fc5e","line":64,"range":{"start_line":64,"start_character":8,"end_line":64,"end_character":45},"updated":"2023-02-28 21:27:12.000000000","message":"can you assert if the updates were made?\n\n  expected_extra_specs \u003d {\n      \u0027driver_handles_share_servers\u0027: False,\n      \u0027snapshot_support\u0027: False,\n      \u0027foo\u0027: \u0027bar\u0027,\n      \u0027baz\u0027: \u0027qux\u0027,\n   }\n   self.assertEqual(expected_extra_specs, sot_set[\u0027extra_specs\u0027])","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":35744},"change_message_id":"b9514efdf9ff8e9f2dbed318008ca834fddb1411","unresolved":false,"context_lines":[{"line_number":61,"context_line":"            self.SHARE_TYPE_ID)"},{"line_number":62,"context_line":"        sot_set \u003d self.operator_cloud.shared_file_system.\\"},{"line_number":63,"context_line":"            update_share_type_extra_specs(sot[\u0027id\u0027], foo\u003d\u0027bar\u0027, baz\u003d\u0027qux\u0027)"},{"line_number":64,"context_line":"        self.assertIn(\u0027extra_specs\u0027, sot_set)"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    def tearDown(self):"},{"line_number":67,"context_line":"        stype \u003d self.delete_share_type("}],"source_content_type":"text/x-python","patch_set":18,"id":"8d16a540_4eedf215","line":64,"range":{"start_line":64,"start_character":8,"end_line":64,"end_character":45},"in_reply_to":"addc3e25_35a7fc5e","updated":"2023-03-07 19:08:47.000000000","message":"Done","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":true,"context_lines":[{"line_number":63,"context_line":"            update_share_type_extra_specs(sot[\u0027id\u0027], foo\u003d\u0027bar\u0027, baz\u003d\u0027qux\u0027)"},{"line_number":64,"context_line":"        self.assertIn(\u0027extra_specs\u0027, sot_set)"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    def tearDown(self):"},{"line_number":67,"context_line":"        stype \u003d self.delete_share_type("},{"line_number":68,"context_line":"            self.SHARE_TYPE_ID, ignore_missing\u003dFalse)"},{"line_number":69,"context_line":"        self.assertIsNone(stype)"},{"line_number":70,"context_line":"        super(ShareTypeTest, self).tearDown()"}],"source_content_type":"text/x-python","patch_set":18,"id":"604dec68_0d60ebf9","line":70,"range":{"start_line":66,"start_character":0,"end_line":70,"end_character":45},"updated":"2023-02-28 21:27:12.000000000","message":"this isn\u0027t necessary since you have an addCleanup in base.py: https://review.opendev.org/c/openstack/openstacksdk/+/783123/18/openstack/tests/functional/shared_file_system/base.py#64","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":35744},"change_message_id":"0075deea9ddc9f827955ec11dd53690d4a9e6895","unresolved":false,"context_lines":[{"line_number":63,"context_line":"            update_share_type_extra_specs(sot[\u0027id\u0027], foo\u003d\u0027bar\u0027, baz\u003d\u0027qux\u0027)"},{"line_number":64,"context_line":"        self.assertIn(\u0027extra_specs\u0027, sot_set)"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    def tearDown(self):"},{"line_number":67,"context_line":"        stype \u003d self.delete_share_type("},{"line_number":68,"context_line":"            self.SHARE_TYPE_ID, ignore_missing\u003dFalse)"},{"line_number":69,"context_line":"        self.assertIsNone(stype)"},{"line_number":70,"context_line":"        super(ShareTypeTest, self).tearDown()"}],"source_content_type":"text/x-python","patch_set":18,"id":"038db5e9_f54c7175","line":70,"range":{"start_line":66,"start_character":0,"end_line":70,"end_character":45},"in_reply_to":"604dec68_0d60ebf9","updated":"2023-03-07 18:28:45.000000000","message":"Done","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"fd4967350a502504764fcfa4025fafb0cf00b0d1","unresolved":true,"context_lines":[{"line_number":23,"context_line":"        stype \u003d self.create_share_type("},{"line_number":24,"context_line":"            \u0027False\u0027,"},{"line_number":25,"context_line":"            name\u003dself.SHARE_TYPE_NAME,"},{"line_number":26,"context_line":"            extra_specs\u003d{\u0027driver_handles_share_servers\u0027: False},"},{"line_number":27,"context_line":"            description\u003dNone)"},{"line_number":28,"context_line":"        self.assertIsNotNone(stype)"},{"line_number":29,"context_line":"        self.assertIsNotNone(stype.id)"}],"source_content_type":"text/x-python","patch_set":23,"id":"82fb5541_e1a5ccfb","line":26,"range":{"start_line":26,"start_character":26,"end_line":26,"end_character":54},"updated":"2023-04-04 18:41:15.000000000","message":"\u0027snapshot_support\u0027: True","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":35744},"change_message_id":"a3c49a3d1d4c8ab8c6ae246341d65a57dac9eccd","unresolved":false,"context_lines":[{"line_number":23,"context_line":"        stype \u003d self.create_share_type("},{"line_number":24,"context_line":"            \u0027False\u0027,"},{"line_number":25,"context_line":"            name\u003dself.SHARE_TYPE_NAME,"},{"line_number":26,"context_line":"            extra_specs\u003d{\u0027driver_handles_share_servers\u0027: False},"},{"line_number":27,"context_line":"            description\u003dNone)"},{"line_number":28,"context_line":"        self.assertIsNotNone(stype)"},{"line_number":29,"context_line":"        self.assertIsNotNone(stype.id)"}],"source_content_type":"text/x-python","patch_set":23,"id":"5db7b5e4_6e8e38ae","line":26,"range":{"start_line":26,"start_character":26,"end_line":26,"end_character":54},"in_reply_to":"82fb5541_e1a5ccfb","updated":"2023-04-18 15:52:08.000000000","message":"Done","commit_id":"3e975188b3d95e99219a89cb32871058333f8522"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"89a23957e4c1d474f4d214dcfdb4a87a7e19ec09","unresolved":true,"context_lines":[{"line_number":17,"context_line":"class ShareTypeTest(base.BaseSharedFileSystemTest):"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"    def setUp(self):"},{"line_number":20,"context_line":"        super(ShareTypeTest, self).setUp()"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"        self.SHARE_TYPE_NAME \u003d self.getUniqueString()"},{"line_number":23,"context_line":"        stype \u003d self.create_share_type("}],"source_content_type":"text/x-python","patch_set":29,"id":"ba9c12cd_def6d248","line":20,"range":{"start_line":20,"start_character":14,"end_line":20,"end_character":33},"updated":"2023-04-19 09:33:03.000000000","message":"nit: don\u0027t need this in Python 3","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":35744},"change_message_id":"96444d4c382c06ff54ffb9119be50f2cacae038c","unresolved":false,"context_lines":[{"line_number":17,"context_line":"class ShareTypeTest(base.BaseSharedFileSystemTest):"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"    def setUp(self):"},{"line_number":20,"context_line":"        super(ShareTypeTest, self).setUp()"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"        self.SHARE_TYPE_NAME \u003d self.getUniqueString()"},{"line_number":23,"context_line":"        stype \u003d self.create_share_type("}],"source_content_type":"text/x-python","patch_set":29,"id":"7bfb25bf_dc3c603c","line":20,"range":{"start_line":20,"start_character":14,"end_line":20,"end_character":33},"in_reply_to":"ba9c12cd_def6d248","updated":"2023-04-19 15:50:31.000000000","message":"Done","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"c3480da6101b608c542d0112e4925930dab58cc3","unresolved":true,"context_lines":[{"line_number":59,"context_line":"            u_type.id)"},{"line_number":60,"context_line":"        self.assertEqual(\u0027updated share type\u0027, get_u_type.description)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    def test_extra_spec(self):"},{"line_number":63,"context_line":"        sot \u003d self.operator_cloud.shared_file_system.get_share_type("},{"line_number":64,"context_line":"            self.SHARE_TYPE_ID)"},{"line_number":65,"context_line":"        sot_set \u003d self.operator_cloud.shared_file_system.\\"}],"source_content_type":"text/x-python","patch_set":33,"id":"133fe0d3_443748ae","line":62,"updated":"2023-04-24 23:10:50.000000000","message":"test_update_share_type_extra_specs","commit_id":"e33d142c692b8952f8cc48f3d226dd8e2ebd5d33"},{"author":{"_account_id":35744},"change_message_id":"05ce66d1a308108b47a47e23f5c80b68abb78a4b","unresolved":false,"context_lines":[{"line_number":59,"context_line":"            u_type.id)"},{"line_number":60,"context_line":"        self.assertEqual(\u0027updated share type\u0027, get_u_type.description)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    def test_extra_spec(self):"},{"line_number":63,"context_line":"        sot \u003d self.operator_cloud.shared_file_system.get_share_type("},{"line_number":64,"context_line":"            self.SHARE_TYPE_ID)"},{"line_number":65,"context_line":"        sot_set \u003d self.operator_cloud.shared_file_system.\\"}],"source_content_type":"text/x-python","patch_set":33,"id":"882f505a_986d3b78","line":62,"in_reply_to":"133fe0d3_443748ae","updated":"2023-04-28 02:29:41.000000000","message":"Done","commit_id":"e33d142c692b8952f8cc48f3d226dd8e2ebd5d33"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"c3480da6101b608c542d0112e4925930dab58cc3","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":33,"id":"9fe4c35b_6cd34050","line":74,"updated":"2023-04-24 23:10:50.000000000","message":"could you please also add a test invoking the proxy method to delete share type extra specs?","commit_id":"e33d142c692b8952f8cc48f3d226dd8e2ebd5d33"},{"author":{"_account_id":35744},"change_message_id":"05ce66d1a308108b47a47e23f5c80b68abb78a4b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":33,"id":"b3db9604_227de06b","line":74,"in_reply_to":"9fe4c35b_6cd34050","updated":"2023-04-28 02:29:41.000000000","message":"Done","commit_id":"e33d142c692b8952f8cc48f3d226dd8e2ebd5d33"}],"openstack/tests/unit/shared_file_system/v2/test_proxy.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"81f6b9526541c8599ab795f51fe8fe8321ee379a","unresolved":true,"context_lines":[{"line_number":51,"context_line":"                     \u0027public\u0027,"},{"line_number":52,"context_line":"                     append\u003d[\u0027v2\u0027, \u0027types\u0027]),"},{"line_number":53,"context_line":"                 json\u003d{\u0027share_types\u0027: [ST_DICT], \"volume_types\": [ST_DICT]}),"},{"line_number":54,"context_line":"        ])"},{"line_number":55,"context_line":"        list_shareType \u003d list(self.share_proxy.share_types())"},{"line_number":56,"context_line":"        self.assertEqual(len(list_shareType), 1)"},{"line_number":57,"context_line":"        self.assertEqual(ST_DICT[\u0027id\u0027], list_shareType[0].id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"45ba4f79_1a5b930d","line":54,"updated":"2021-05-12 14:25:50.000000000","message":"This isn\u0027t the place to do this. Please see gtema\u0027s comments at [1] since they also apply here. All that this should be doing is asserting that the proxy calls make the correct call to the Resource methods. You can use the \u0027verify_foo\u0027 helpers for this, like you did for delete below (verify_delete). Anything more detailed should occur in the tests for the resource, so the next file.\n\n[1] https://review.opendev.org/c/openstack/openstacksdk/+/775707/10/openstack/tests/unit/shared_file_system/v2/test_proxy.py#61","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":51,"context_line":"                     \u0027public\u0027,"},{"line_number":52,"context_line":"                     append\u003d[\u0027v2\u0027, \u0027types\u0027]),"},{"line_number":53,"context_line":"                 json\u003d{\u0027share_types\u0027: [ST_DICT], \"volume_types\": [ST_DICT]}),"},{"line_number":54,"context_line":"        ])"},{"line_number":55,"context_line":"        list_shareType \u003d list(self.share_proxy.share_types())"},{"line_number":56,"context_line":"        self.assertEqual(len(list_shareType), 1)"},{"line_number":57,"context_line":"        self.assertEqual(ST_DICT[\u0027id\u0027], list_shareType[0].id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"d8d97fc0_d4a2052e","line":54,"in_reply_to":"45ba4f79_1a5b930d","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"89a23957e4c1d474f4d214dcfdb4a87a7e19ec09","unresolved":true,"context_lines":[{"line_number":305,"context_line":"class TestShareTypeProxy(test_proxy_base.TestProxyBase):"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"    def setUp(self):"},{"line_number":308,"context_line":"        super(TestShareTypeProxy, self).setUp()"},{"line_number":309,"context_line":"        self.proxy \u003d _proxy.Proxy(self.session)"},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"    def test_share_types(self):"}],"source_content_type":"text/x-python","patch_set":29,"id":"27a48ef2_6b5131ba","line":308,"range":{"start_line":308,"start_character":14,"end_line":308,"end_character":38},"updated":"2023-04-19 09:33:03.000000000","message":"nit: unnecessary in Python 3","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":35744},"change_message_id":"96444d4c382c06ff54ffb9119be50f2cacae038c","unresolved":false,"context_lines":[{"line_number":305,"context_line":"class TestShareTypeProxy(test_proxy_base.TestProxyBase):"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"    def setUp(self):"},{"line_number":308,"context_line":"        super(TestShareTypeProxy, self).setUp()"},{"line_number":309,"context_line":"        self.proxy \u003d _proxy.Proxy(self.session)"},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"    def test_share_types(self):"}],"source_content_type":"text/x-python","patch_set":29,"id":"14895744_3f429cf0","line":308,"range":{"start_line":308,"start_character":14,"end_line":308,"end_character":38},"in_reply_to":"27a48ef2_6b5131ba","updated":"2023-04-19 15:50:31.000000000","message":"Done","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"}],"openstack/tests/unit/shared_file_system/v2/test_share_type.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":14,"context_line":"from openstack.tests.unit import base"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"IDENTIFIER \u003d \u002752a6d881-ba4e-4c50-aa0c-041e4e3756aa\u0027"},{"line_number":18,"context_line":"EXAMPLE \u003d {"},{"line_number":19,"context_line":"    \"required_extra_specs\": {"},{"line_number":20,"context_line":"        \"driver_handles_share_servers\": \"True\""}],"source_content_type":"text/x-python","patch_set":3,"id":"898eec50_07c057bf","line":17,"updated":"2021-05-12 14:22:44.000000000","message":"any reason you hardcode these here rather than using str(uuid.uuid4()) like the previous file?","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":14,"context_line":"from openstack.tests.unit import base"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"IDENTIFIER \u003d \u002752a6d881-ba4e-4c50-aa0c-041e4e3756aa\u0027"},{"line_number":18,"context_line":"EXAMPLE \u003d {"},{"line_number":19,"context_line":"    \"required_extra_specs\": {"},{"line_number":20,"context_line":"        \"driver_handles_share_servers\": \"True\""}],"source_content_type":"text/x-python","patch_set":3,"id":"d7025d89_2158f905","line":17,"in_reply_to":"898eec50_07c057bf","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":23,"context_line":"    \"extra_specs\": {"},{"line_number":24,"context_line":"        \"driver_handles_share_servers\": \"True\""},{"line_number":25,"context_line":"    },"},{"line_number":26,"context_line":"    \"id\": \"2780fc88-526b-464a-a72c-ecb83f0e3929\","},{"line_number":27,"context_line":"    \"name\": \"default-share-type\","},{"line_number":28,"context_line":"    \"is_default\": True,"},{"line_number":29,"context_line":"    \"description\": \"manila share type\""}],"source_content_type":"text/x-python","patch_set":3,"id":"329f2e07_892083c0","line":26,"updated":"2021-05-12 14:22:44.000000000","message":"ditto","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":23,"context_line":"    \"extra_specs\": {"},{"line_number":24,"context_line":"        \"driver_handles_share_servers\": \"True\""},{"line_number":25,"context_line":"    },"},{"line_number":26,"context_line":"    \"id\": \"2780fc88-526b-464a-a72c-ecb83f0e3929\","},{"line_number":27,"context_line":"    \"name\": \"default-share-type\","},{"line_number":28,"context_line":"    \"is_default\": True,"},{"line_number":29,"context_line":"    \"description\": \"manila share type\""}],"source_content_type":"text/x-python","patch_set":3,"id":"3ea00107_0059c509","line":26,"in_reply_to":"329f2e07_892083c0","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":24,"context_line":"        \"driver_handles_share_servers\": \"True\""},{"line_number":25,"context_line":"    },"},{"line_number":26,"context_line":"    \"id\": \"2780fc88-526b-464a-a72c-ecb83f0e3929\","},{"line_number":27,"context_line":"    \"name\": \"default-share-type\","},{"line_number":28,"context_line":"    \"is_default\": True,"},{"line_number":29,"context_line":"    \"description\": \"manila share type\""},{"line_number":30,"context_line":"}"}],"source_content_type":"text/x-python","patch_set":3,"id":"a17da7a6_6aebd054","line":27,"updated":"2021-05-12 14:22:44.000000000","message":"it would be good to auto-generate this to avoid conflicts during multiple test runs. Something like\n\n  \"name\": f\"share-type-{str(uuid.uuid4())}\"\n\nshould do the trick\n\nLater: wait, no conflicts of course since these are unit tests. Eh, you can probably ignore this","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":24,"context_line":"        \"driver_handles_share_servers\": \"True\""},{"line_number":25,"context_line":"    },"},{"line_number":26,"context_line":"    \"id\": \"2780fc88-526b-464a-a72c-ecb83f0e3929\","},{"line_number":27,"context_line":"    \"name\": \"default-share-type\","},{"line_number":28,"context_line":"    \"is_default\": True,"},{"line_number":29,"context_line":"    \"description\": \"manila share type\""},{"line_number":30,"context_line":"}"}],"source_content_type":"text/x-python","patch_set":3,"id":"aa89af1d_f26b483e","line":27,"in_reply_to":"a17da7a6_6aebd054","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":26,"context_line":"    \"id\": \"2780fc88-526b-464a-a72c-ecb83f0e3929\","},{"line_number":27,"context_line":"    \"name\": \"default-share-type\","},{"line_number":28,"context_line":"    \"is_default\": True,"},{"line_number":29,"context_line":"    \"description\": \"manila share type\""},{"line_number":30,"context_line":"}"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"dfab5f7c_6ce55079","line":29,"updated":"2021-05-12 14:22:44.000000000","message":"ditto","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    \"id\": \"2780fc88-526b-464a-a72c-ecb83f0e3929\","},{"line_number":27,"context_line":"    \"name\": \"default-share-type\","},{"line_number":28,"context_line":"    \"is_default\": True,"},{"line_number":29,"context_line":"    \"description\": \"manila share type\""},{"line_number":30,"context_line":"}"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"d52de3b5_461bf09e","line":29,"in_reply_to":"dfab5f7c_6ce55079","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"89a23957e4c1d474f4d214dcfdb4a87a7e19ec09","unresolved":true,"context_lines":[{"line_number":36,"context_line":"class TestShareType(base.TestCase):"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    def setUp(self):"},{"line_number":39,"context_line":"        super(TestShareType, self).setUp()"},{"line_number":40,"context_line":"        self.extra_specs_result \u003d {\"extra_specs\": {\"go\": \"cubs\", \"boo\": \"sox\"}}"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def test_basic(self):"}],"source_content_type":"text/x-python","patch_set":29,"id":"f227e5ca_7e7bd6b7","line":39,"range":{"start_line":39,"start_character":14,"end_line":39,"end_character":33},"updated":"2023-04-19 09:33:03.000000000","message":"nit: unnecessary in Python 3","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"},{"author":{"_account_id":35744},"change_message_id":"96444d4c382c06ff54ffb9119be50f2cacae038c","unresolved":false,"context_lines":[{"line_number":36,"context_line":"class TestShareType(base.TestCase):"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    def setUp(self):"},{"line_number":39,"context_line":"        super(TestShareType, self).setUp()"},{"line_number":40,"context_line":"        self.extra_specs_result \u003d {\"extra_specs\": {\"go\": \"cubs\", \"boo\": \"sox\"}}"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def test_basic(self):"}],"source_content_type":"text/x-python","patch_set":29,"id":"b91b779c_9f2a3d46","line":39,"range":{"start_line":39,"start_character":14,"end_line":39,"end_character":33},"in_reply_to":"f227e5ca_7e7bd6b7","updated":"2023-04-19 15:50:31.000000000","message":"Done","commit_id":"72249fd8b7e1c40542cacf33fb65e335cfb513a4"}],"releasenotes/notes/add-shared-file-systems-share-type-6bd8b375edf241d2.yaml":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"features:"},{"line_number":4,"context_line":"  - | "},{"line_number":5,"context_line":"    Added support for list, show, update, delete and create "}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7ab0e8ff_04326825","line":2,"updated":"2021-05-12 14:22:44.000000000","message":"unnecessary extra newline","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"features:"},{"line_number":4,"context_line":"  - | "},{"line_number":5,"context_line":"    Added support for list, show, update, delete and create "}],"source_content_type":"text/x-yaml","patch_set":3,"id":"0fea041f_932b8b13","line":2,"in_reply_to":"7ab0e8ff_04326825","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"features:"},{"line_number":4,"context_line":"  - | "},{"line_number":5,"context_line":"    Added support for list, show, update, delete and create "},{"line_number":6,"context_line":"    Share Types for Shared File Systems service."},{"line_number":7,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":3,"id":"a7e0b423_bbdd9ecd","line":4,"range":{"start_line":4,"start_character":5,"end_line":4,"end_character":6},"updated":"2021-05-12 14:22:44.000000000","message":"Can you drop these?","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"features:"},{"line_number":4,"context_line":"  - | "},{"line_number":5,"context_line":"    Added support for list, show, update, delete and create "},{"line_number":6,"context_line":"    Share Types for Shared File Systems service."},{"line_number":7,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":3,"id":"64ca9b05_2d1a66a1","line":4,"range":{"start_line":4,"start_character":5,"end_line":4,"end_character":6},"in_reply_to":"a7e0b423_bbdd9ecd","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7425d4a08fee67a5c17438bf20f1d107ecd40720","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":3,"id":"fe1aefac_649c7834","line":8,"updated":"2021-05-12 14:22:44.000000000","message":"unnecessary extra newline","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":35744},"change_message_id":"0cd80034aec03d923f7948141135849d51a75add","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"c4158c65_892cbd28","line":8,"in_reply_to":"fe1aefac_649c7834","updated":"2023-02-28 19:13:27.000000000","message":"Done","commit_id":"95ea698a18a7b4945f54909dd60f954d0aab735e"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b94fae8d9694f84f5baa50178a8b073bd70c55d4","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Added support for list, show, update, delete and create"},{"line_number":4,"context_line":"    Share Types for Shared File Systems service."}],"source_content_type":"text/x-yaml","patch_set":18,"id":"eb21ad63_58774dda","line":4,"range":{"start_line":3,"start_character":4,"end_line":4,"end_character":48},"updated":"2023-02-28 21:27:12.000000000","message":"nit: grammar, can we rephrase this please?\n\n Added support to list, show, update, delete and create share types\n with the Shared File Systems service (manila).","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"},{"author":{"_account_id":35744},"change_message_id":"0075deea9ddc9f827955ec11dd53690d4a9e6895","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Added support for list, show, update, delete and create"},{"line_number":4,"context_line":"    Share Types for Shared File Systems service."}],"source_content_type":"text/x-yaml","patch_set":18,"id":"057b4a57_a737abbb","line":4,"range":{"start_line":3,"start_character":4,"end_line":4,"end_character":48},"in_reply_to":"eb21ad63_58774dda","updated":"2023-03-07 18:28:45.000000000","message":"Done","commit_id":"40d63497f94a42d6aa231d93de230d468d106c14"}]}
