)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b8dec2f0c0ef3280d7c1d8c74eeeefb43f858a79","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add glusterfs directory layout to extend/shrink shared"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Implement extend/shrink for glusterfs driver with directory layout."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Depends-On: https://review.opendev.org/#/c/673771/"},{"line_number":12,"context_line":"Change-Id: I37b315ec61e81e8ce6f4b72bc03e887cc145464d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7faddb67_83492a33","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":0},"updated":"2019-08-13 21:57:47.000000000","message":"Please add your blueprint in the last paragraph with Depends-On and Change-Id:\n\n\n Implements: bp glusterfs-direcotry-layout-extend-shrink-share","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"}],"doc/source/admin/share_back_ends_feature_support_mapping.rst":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"cc90513311e1ac40b52eccff314257a21f8bb018","unresolved":false,"context_lines":[{"line_number":30,"context_line":"Mapping of share drivers and share features support"},{"line_number":31,"context_line":"---------------------------------------------------"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"+----------------------------------------+-----------------------+-----------------------+--------------+--------------+------------------------+----------------------------+--------------------------+--------------------+--------------------+"},{"line_number":34,"context_line":"|               Driver name              | create delete share   | manage unmanage share |       extend share       |       shrink share       | create delete snapshot | create share from snapshot | manage unmanage snapshot | revert to snapshot | mountable snapshot |"},{"line_number":35,"context_line":"+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+"},{"line_number":36,"context_line":"|               ZFSonLinux               |           M           |           N           |             M            |             M            |            M           |              M             |             N            |          \\-        |          \\-        |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7faddb67_2f34d7dd","line":33,"range":{"start_line":33,"start_character":242,"end_line":33,"end_character":243},"updated":"2019-08-14 04:06:34.000000000","message":"Please fix the formatting of this table","commit_id":"c38074b747e9ea5d6334bd6fcb7daf1a0f4bb4e9"}],"manila/share/drivers/glusterfs/layout_directory.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b156a26ed11acc5f253153d3b6a75c900bc012c6","unresolved":false,"context_lines":[{"line_number":16,"context_line":"\"\"\"GlusterFS directory mapped share layout.\"\"\""},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"import os"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"import math"},{"line_number":21,"context_line":"import six"},{"line_number":22,"context_line":"import xml.etree.cElementTree as etree"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_8deddeb8","line":19,"range":{"start_line":19,"start_character":0,"end_line":19,"end_character":0},"updated":"2019-08-13 21:55:26.000000000","message":"remove blank line","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":30722,"name":"WooHyung Han","email":"techhanx@gmail.com","username":"whhan91"},"change_message_id":"345ce9cd2cab0f5774ecb573d17784a064524cba","unresolved":false,"context_lines":[{"line_number":16,"context_line":"\"\"\"GlusterFS directory mapped share layout.\"\"\""},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"import os"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"import math"},{"line_number":21,"context_line":"import six"},{"line_number":22,"context_line":"import xml.etree.cElementTree as etree"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_c65890fb","line":19,"range":{"start_line":19,"start_character":0,"end_line":19,"end_character":0},"in_reply_to":"7faddb67_8deddeb8","updated":"2019-08-14 02:18:48.000000000","message":"Done","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b156a26ed11acc5f253153d3b6a75c900bc012c6","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import os"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"import math"},{"line_number":21,"context_line":"import six"},{"line_number":22,"context_line":"import xml.etree.cElementTree as etree"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from oslo_config import cfg"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_ed0c9295","line":21,"range":{"start_line":21,"start_character":0,"end_line":21,"end_character":10},"updated":"2019-08-13 21:55:26.000000000","message":"add blank line before this line\n\n\nThe imports in this project are organized like this\n\n \u003cpython standard library imports, alphabetically sorted\u003e\n \u003cblank line\u003e\n \u003cthird party library imports, alphabetically sorted\u003e\n \u003cblank line\u003e\n \u003cproject imports, alphabetically sorted\u003e\n \u003cblank line\u003e","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":30722,"name":"WooHyung Han","email":"techhanx@gmail.com","username":"whhan91"},"change_message_id":"345ce9cd2cab0f5774ecb573d17784a064524cba","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import os"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"import math"},{"line_number":21,"context_line":"import six"},{"line_number":22,"context_line":"import xml.etree.cElementTree as etree"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from oslo_config import cfg"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_e65b4cf3","line":21,"range":{"start_line":21,"start_character":0,"end_line":21,"end_character":10},"in_reply_to":"7faddb67_ed0c9295","updated":"2019-08-14 02:18:48.000000000","message":"Done","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b156a26ed11acc5f253153d3b6a75c900bc012c6","unresolved":false,"context_lines":[{"line_number":20,"context_line":"import math"},{"line_number":21,"context_line":"import six"},{"line_number":22,"context_line":"import xml.etree.cElementTree as etree"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from oslo_config import cfg"},{"line_number":25,"context_line":"from oslo_log import log"},{"line_number":26,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_cd4f56bc","line":23,"range":{"start_line":23,"start_character":0,"end_line":23,"end_character":0},"updated":"2019-08-13 21:55:26.000000000","message":"remove blank line, rearrange imports in this block alphabetically..","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":30722,"name":"WooHyung Han","email":"techhanx@gmail.com","username":"whhan91"},"change_message_id":"345ce9cd2cab0f5774ecb573d17784a064524cba","unresolved":false,"context_lines":[{"line_number":20,"context_line":"import math"},{"line_number":21,"context_line":"import six"},{"line_number":22,"context_line":"import xml.etree.cElementTree as etree"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from oslo_config import cfg"},{"line_number":25,"context_line":"from oslo_log import log"},{"line_number":26,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_8672987b","line":23,"range":{"start_line":23,"start_character":0,"end_line":23,"end_character":0},"in_reply_to":"7faddb67_cd4f56bc","updated":"2019-08-14 02:18:48.000000000","message":"Done","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b156a26ed11acc5f253153d3b6a75c900bc012c6","unresolved":false,"context_lines":[{"line_number":211,"context_line":"    def shrink_share(self, share, new_size, share_server\u003dNone):"},{"line_number":212,"context_line":"        \"\"\"Shrink a sub-directory/share in the GlusterFS volume.\"\"\""},{"line_number":213,"context_line":"        usage \u003d self._get_directory_usage(share)"},{"line_number":214,"context_line":"        consumed_limit \u003d int(math.floor(usage))"},{"line_number":215,"context_line":"        if consumed_limit \u003e\u003d new_size:"},{"line_number":216,"context_line":"            raise exception.ShareShrinkingPossibleDataLoss("},{"line_number":217,"context_line":"                share_id\u003dshare[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_20862c67","line":214,"range":{"start_line":214,"start_character":25,"end_line":214,"end_character":47},"updated":"2019-08-13 21:55:26.000000000","message":"Please use the ceiling value to always round up - you want to prevent data loss, so it\u0027s worth being conservative with this conversion.","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":30722,"name":"WooHyung Han","email":"techhanx@gmail.com","username":"whhan91"},"change_message_id":"345ce9cd2cab0f5774ecb573d17784a064524cba","unresolved":false,"context_lines":[{"line_number":211,"context_line":"    def shrink_share(self, share, new_size, share_server\u003dNone):"},{"line_number":212,"context_line":"        \"\"\"Shrink a sub-directory/share in the GlusterFS volume.\"\"\""},{"line_number":213,"context_line":"        usage \u003d self._get_directory_usage(share)"},{"line_number":214,"context_line":"        consumed_limit \u003d int(math.floor(usage))"},{"line_number":215,"context_line":"        if consumed_limit \u003e\u003d new_size:"},{"line_number":216,"context_line":"            raise exception.ShareShrinkingPossibleDataLoss("},{"line_number":217,"context_line":"                share_id\u003dshare[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_26a3a4b3","line":214,"range":{"start_line":214,"start_character":25,"end_line":214,"end_character":47},"in_reply_to":"7faddb67_20862c67","updated":"2019-08-14 02:18:48.000000000","message":"Done","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b156a26ed11acc5f253153d3b6a75c900bc012c6","unresolved":false,"context_lines":[{"line_number":227,"context_line":""},{"line_number":228,"context_line":"        try:"},{"line_number":229,"context_line":"            self.gluster_manager.gluster_call(*args)"},{"line_number":230,"context_line":"        except Exception as exc:"},{"line_number":231,"context_line":"            LOG.error(\u0027Unable to set quota share %s\u0027, share[\u0027name\u0027])"},{"line_number":232,"context_line":"            raise exc"},{"line_number":233,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_00e8d013","line":230,"range":{"start_line":230,"start_character":15,"end_line":230,"end_character":24},"updated":"2019-08-13 21:55:26.000000000","message":"Please handle the specific exception here: GlusterfsException\n\nhttps://github.com/openstack/manila/blob/fb17422c868f1b25d8f2a0b113cdea21a4a14bd1/manila/share/drivers/glusterfs/common.py#L197-L215","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b156a26ed11acc5f253153d3b6a75c900bc012c6","unresolved":false,"context_lines":[{"line_number":227,"context_line":""},{"line_number":228,"context_line":"        try:"},{"line_number":229,"context_line":"            self.gluster_manager.gluster_call(*args)"},{"line_number":230,"context_line":"        except Exception as exc:"},{"line_number":231,"context_line":"            LOG.error(\u0027Unable to set quota share %s\u0027, share[\u0027name\u0027])"},{"line_number":232,"context_line":"            raise exc"},{"line_number":233,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_43b7b23b","line":230,"range":{"start_line":230,"start_character":24,"end_line":230,"end_character":31},"updated":"2019-08-13 21:55:26.000000000","message":"nit: don\u0027t need to include as exc if you don\u0027t intend on using its contents...","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":30722,"name":"WooHyung Han","email":"techhanx@gmail.com","username":"whhan91"},"change_message_id":"345ce9cd2cab0f5774ecb573d17784a064524cba","unresolved":false,"context_lines":[{"line_number":227,"context_line":""},{"line_number":228,"context_line":"        try:"},{"line_number":229,"context_line":"            self.gluster_manager.gluster_call(*args)"},{"line_number":230,"context_line":"        except Exception as exc:"},{"line_number":231,"context_line":"            LOG.error(\u0027Unable to set quota share %s\u0027, share[\u0027name\u0027])"},{"line_number":232,"context_line":"            raise exc"},{"line_number":233,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_06bb08e5","line":230,"range":{"start_line":230,"start_character":15,"end_line":230,"end_character":24},"in_reply_to":"7faddb67_00e8d013","updated":"2019-08-14 02:18:48.000000000","message":"Done","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":30722,"name":"WooHyung Han","email":"techhanx@gmail.com","username":"whhan91"},"change_message_id":"345ce9cd2cab0f5774ecb573d17784a064524cba","unresolved":false,"context_lines":[{"line_number":227,"context_line":""},{"line_number":228,"context_line":"        try:"},{"line_number":229,"context_line":"            self.gluster_manager.gluster_call(*args)"},{"line_number":230,"context_line":"        except Exception as exc:"},{"line_number":231,"context_line":"            LOG.error(\u0027Unable to set quota share %s\u0027, share[\u0027name\u0027])"},{"line_number":232,"context_line":"            raise exc"},{"line_number":233,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_26be44d4","line":230,"range":{"start_line":230,"start_character":24,"end_line":230,"end_character":31},"in_reply_to":"7faddb67_43b7b23b","updated":"2019-08-14 02:18:48.000000000","message":"Done","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b156a26ed11acc5f253153d3b6a75c900bc012c6","unresolved":false,"context_lines":[{"line_number":231,"context_line":"            LOG.error(\u0027Unable to set quota share %s\u0027, share[\u0027name\u0027])"},{"line_number":232,"context_line":"            raise exc"},{"line_number":233,"context_line":""},{"line_number":234,"context_line":"    def _get_directory_usage(self, share):"},{"line_number":235,"context_line":"        share_dir \u003d \u0027/\u0027 + share[\u0027name\u0027]"},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"        args \u003d (\u0027--xml\u0027, \u0027volume\u0027, \u0027quota\u0027, self.gluster_manager.volume,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_c3f16203","line":234,"range":{"start_line":234,"start_character":0,"end_line":234,"end_character":42},"updated":"2019-08-13 21:55:26.000000000","message":"Please add unit tests for this method... https://logs.opendev.org/02/672202/5/check/openstack-tox-cover/353ee95/cover/manila_share_drivers_glusterfs_layout_directory_py.html#n234","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":30722,"name":"WooHyung Han","email":"techhanx@gmail.com","username":"whhan91"},"change_message_id":"345ce9cd2cab0f5774ecb573d17784a064524cba","unresolved":false,"context_lines":[{"line_number":231,"context_line":"            LOG.error(\u0027Unable to set quota share %s\u0027, share[\u0027name\u0027])"},{"line_number":232,"context_line":"            raise exc"},{"line_number":233,"context_line":""},{"line_number":234,"context_line":"    def _get_directory_usage(self, share):"},{"line_number":235,"context_line":"        share_dir \u003d \u0027/\u0027 + share[\u0027name\u0027]"},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"        args \u003d (\u0027--xml\u0027, \u0027volume\u0027, \u0027quota\u0027, self.gluster_manager.volume,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_c96bc3ee","line":234,"range":{"start_line":234,"start_character":0,"end_line":234,"end_character":42},"in_reply_to":"7faddb67_c3f16203","updated":"2019-08-14 02:18:48.000000000","message":"Done","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"}],"manila/tests/share/drivers/glusterfs/test_layout_directory.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b156a26ed11acc5f253153d3b6a75c900bc012c6","unresolved":false,"context_lines":[{"line_number":394,"context_line":""},{"line_number":395,"context_line":"    def test_shrink_share_data_loss(self):"},{"line_number":396,"context_line":"        self.mock_object(self._layout, \u0027_get_directory_usage\u0027,"},{"line_number":397,"context_line":"                         mock.Mock(return_value\u003d10))"},{"line_number":398,"context_line":""},{"line_number":399,"context_line":"        self.assertRaises(exception.ShareShrinkingPossibleDataLoss,"},{"line_number":400,"context_line":"                          self._layout.shrink_share, self.share, 9)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_83960a94","line":397,"range":{"start_line":397,"start_character":48,"end_line":397,"end_character":50},"updated":"2019-08-13 21:55:26.000000000","message":"_get_directory_usage always returns a floating number...","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":30722,"name":"WooHyung Han","email":"techhanx@gmail.com","username":"whhan91"},"change_message_id":"345ce9cd2cab0f5774ecb573d17784a064524cba","unresolved":false,"context_lines":[{"line_number":394,"context_line":""},{"line_number":395,"context_line":"    def test_shrink_share_data_loss(self):"},{"line_number":396,"context_line":"        self.mock_object(self._layout, \u0027_get_directory_usage\u0027,"},{"line_number":397,"context_line":"                         mock.Mock(return_value\u003d10))"},{"line_number":398,"context_line":""},{"line_number":399,"context_line":"        self.assertRaises(exception.ShareShrinkingPossibleDataLoss,"},{"line_number":400,"context_line":"                          self._layout.shrink_share, self.share, 9)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_2630849e","line":397,"range":{"start_line":397,"start_character":48,"end_line":397,"end_character":50},"in_reply_to":"7faddb67_83960a94","updated":"2019-08-14 02:18:48.000000000","message":"Done","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b156a26ed11acc5f253153d3b6a75c900bc012c6","unresolved":false,"context_lines":[{"line_number":398,"context_line":""},{"line_number":399,"context_line":"        self.assertRaises(exception.ShareShrinkingPossibleDataLoss,"},{"line_number":400,"context_line":"                          self._layout.shrink_share, self.share, 9)"},{"line_number":401,"context_line":""},{"line_number":402,"context_line":"    @ddt.data("},{"line_number":403,"context_line":"        (\u0027create_share_from_snapshot\u0027, (\u0027context\u0027, \u0027share\u0027, \u0027snapshot\u0027),"},{"line_number":404,"context_line":"         {\u0027share_server\u0027: None}),"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_638bce67","line":401,"range":{"start_line":401,"start_character":0,"end_line":401,"end_character":0},"updated":"2019-08-13 21:55:26.000000000","message":"assert that self._layout.gluster_manager.gluster_call wasn\u0027t called","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":30722,"name":"WooHyung Han","email":"techhanx@gmail.com","username":"whhan91"},"change_message_id":"345ce9cd2cab0f5774ecb573d17784a064524cba","unresolved":false,"context_lines":[{"line_number":398,"context_line":""},{"line_number":399,"context_line":"        self.assertRaises(exception.ShareShrinkingPossibleDataLoss,"},{"line_number":400,"context_line":"                          self._layout.shrink_share, self.share, 9)"},{"line_number":401,"context_line":""},{"line_number":402,"context_line":"    @ddt.data("},{"line_number":403,"context_line":"        (\u0027create_share_from_snapshot\u0027, (\u0027context\u0027, \u0027share\u0027, \u0027snapshot\u0027),"},{"line_number":404,"context_line":"         {\u0027share_server\u0027: None}),"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_26d5e41b","line":401,"range":{"start_line":401,"start_character":0,"end_line":401,"end_character":0},"in_reply_to":"7faddb67_638bce67","updated":"2019-08-14 02:18:48.000000000","message":"Done","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":30722,"name":"WooHyung Han","email":"techhanx@gmail.com","username":"whhan91"},"change_message_id":"c33483cb41669a16887d1f3ba6102ce4f6e44dbd","unresolved":false,"context_lines":[{"line_number":398,"context_line":""},{"line_number":399,"context_line":"        self.assertRaises(exception.ShareShrinkingPossibleDataLoss,"},{"line_number":400,"context_line":"                          self._layout.shrink_share, self.share, 9)"},{"line_number":401,"context_line":""},{"line_number":402,"context_line":"    @ddt.data("},{"line_number":403,"context_line":"        (\u0027create_share_from_snapshot\u0027, (\u0027context\u0027, \u0027share\u0027, \u0027snapshot\u0027),"},{"line_number":404,"context_line":"         {\u0027share_server\u0027: None}),"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_7402a640","line":401,"range":{"start_line":401,"start_character":0,"end_line":401,"end_character":0},"in_reply_to":"7faddb67_638bce67","updated":"2019-08-14 04:00:24.000000000","message":"the gluster_call is called by assertRasies? or need to add some gluster call code? I try to add gluster_call.assert_called_once_with() but tox got error.","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"ba5ef6ec48054dc429f5c9b5927fcd2f14e26851","unresolved":false,"context_lines":[{"line_number":398,"context_line":""},{"line_number":399,"context_line":"        self.assertRaises(exception.ShareShrinkingPossibleDataLoss,"},{"line_number":400,"context_line":"                          self._layout.shrink_share, self.share, 9)"},{"line_number":401,"context_line":""},{"line_number":402,"context_line":"    @ddt.data("},{"line_number":403,"context_line":"        (\u0027create_share_from_snapshot\u0027, (\u0027context\u0027, \u0027share\u0027, \u0027snapshot\u0027),"},{"line_number":404,"context_line":"         {\u0027share_server\u0027: None}),"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_8f0ceb39","line":401,"range":{"start_line":401,"start_character":0,"end_line":401,"end_character":0},"in_reply_to":"7faddb67_7402a640","updated":"2019-08-14 04:05:12.000000000","message":"oh, no, I meant, since you\u0027re mocking out _get_directory_usage() and you\u0027re checking whether the size to shrink to is lesser than the consumed size, you should not be calling https://review.opendev.org/#/c/672202/5/manila/share/drivers/glusterfs/layout_directory.py@219\n\n\nSo, you can assert that in two ways:\n\n1) Mock the method _set_directory_quota and assert that it was not called:\n\n   shrink_on_gluster \u003d self.mock_object(self._layout, \u0027_set_directory_quota\u0027))\n \n\n   ....\n\n   shrink_on_gluster.assert_not_called()\n\n\nor,\n\n2) you can check that gluster_manager.gluster_call wasn\u0027t made:\n\n    self._layout.gluster_manager.gluster_call.assert_not_called()","commit_id":"46c96c78ffbc3cdb550674c7b757eae44c463a82"}]}
