)]}'
{"cinder/tests/unit/test_emc_vmax.py":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"f6d1456d865af04e6526dd08e1d2d517ba4f15fa","unresolved":false,"context_lines":[{"line_number":1840,"context_line":"    def fake_is_v3(self, conn, serialNumber):"},{"line_number":1841,"context_line":"        return False"},{"line_number":1842,"context_line":""},{"line_number":1843,"context_line":"    def test_populate_masking_dict(self):"},{"line_number":1844,"context_line":"        extraSpecs \u003d {\u0027storagetype:pool\u0027: u\u0027gold_pool\u0027,"},{"line_number":1845,"context_line":"                      \u0027volume_backend_name\u0027: \u0027GOLD_POOL_BE\u0027,"},{"line_number":1846,"context_line":"                      \u0027storagetype:array\u0027: u\u00271234567891011\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba8a016a_7846597c","line":1843,"updated":"2015-11-19 11:13:51.000000000","message":"This test should be refactored to several tests","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"4cd448bb7cf4eb4b9e964cc3fca7ad4da922ffc4","unresolved":false,"context_lines":[{"line_number":1840,"context_line":"    def fake_is_v3(self, conn, serialNumber):"},{"line_number":1841,"context_line":"        return False"},{"line_number":1842,"context_line":""},{"line_number":1843,"context_line":"    def test_populate_masking_dict(self):"},{"line_number":1844,"context_line":"        extraSpecs \u003d {\u0027storagetype:pool\u0027: u\u0027gold_pool\u0027,"},{"line_number":1845,"context_line":"                      \u0027volume_backend_name\u0027: \u0027GOLD_POOL_BE\u0027,"},{"line_number":1846,"context_line":"                      \u0027storagetype:array\u0027: u\u00271234567891011\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba8a016a_e391b19b","line":1843,"in_reply_to":"ba8a016a_7846597c","updated":"2015-11-23 11:29:08.000000000","message":"Ok, I will change this","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":13900,"name":"Accela Zhao","email":"accelazh@gmail.com","username":"accelazh"},"change_message_id":"619a04c2024a53d5dba5babb1f008f583933299e","unresolved":false,"context_lines":[{"line_number":1864,"context_line":""},{"line_number":1865,"context_line":"        # If the length of the FAST policy name is greater than 14 chars"},{"line_number":1866,"context_line":"        extraSpecs[\u0027storagetype:fastpolicy\u0027] \u003d \u0027GOLD_MORE_THAN_FOURTEEN_CHARS\u0027"},{"line_number":1867,"context_line":"        maskingViewDict \u003d self.driver.common._populate_masking_dict("},{"line_number":1868,"context_line":"            self.data.test_volume, self.data.connector, extraSpecs)"},{"line_number":1869,"context_line":"        self.assertEqual("},{"line_number":1870,"context_line":"            \u0027OS-fakehost-GOLD_MO__CHARS-FP-I-SG\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba8a016a_773e748d","line":1867,"updated":"2015-11-19 08:01:47.000000000","message":"._populate_masking_dict access to private member?","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":13900,"name":"Accela Zhao","email":"accelazh@gmail.com","username":"accelazh"},"change_message_id":"09ca7f68d3d760433713a256fd99e5cecffe6d68","unresolved":false,"context_lines":[{"line_number":1864,"context_line":""},{"line_number":1865,"context_line":"        # If the length of the FAST policy name is greater than 14 chars"},{"line_number":1866,"context_line":"        extraSpecs[\u0027storagetype:fastpolicy\u0027] \u003d \u0027GOLD_MORE_THAN_FOURTEEN_CHARS\u0027"},{"line_number":1867,"context_line":"        maskingViewDict \u003d self.driver.common._populate_masking_dict("},{"line_number":1868,"context_line":"            self.data.test_volume, self.data.connector, extraSpecs)"},{"line_number":1869,"context_line":"        self.assertEqual("},{"line_number":1870,"context_line":"            \u0027OS-fakehost-GOLD_MO__CHARS-FP-I-SG\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a8ffd7b_d67aad87","line":1867,"in_reply_to":"ba8a016a_439bddc9","updated":"2015-11-27 16:25:28.000000000","message":"Replied in patch 3.","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"4cd448bb7cf4eb4b9e964cc3fca7ad4da922ffc4","unresolved":false,"context_lines":[{"line_number":1864,"context_line":""},{"line_number":1865,"context_line":"        # If the length of the FAST policy name is greater than 14 chars"},{"line_number":1866,"context_line":"        extraSpecs[\u0027storagetype:fastpolicy\u0027] \u003d \u0027GOLD_MORE_THAN_FOURTEEN_CHARS\u0027"},{"line_number":1867,"context_line":"        maskingViewDict \u003d self.driver.common._populate_masking_dict("},{"line_number":1868,"context_line":"            self.data.test_volume, self.data.connector, extraSpecs)"},{"line_number":1869,"context_line":"        self.assertEqual("},{"line_number":1870,"context_line":"            \u0027OS-fakehost-GOLD_MO__CHARS-FP-I-SG\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba8a016a_439bddc9","line":1867,"in_reply_to":"ba8a016a_773e748d","updated":"2015-11-23 11:29:08.000000000","message":"Not quite sure what you mean here","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":13900,"name":"Accela Zhao","email":"accelazh@gmail.com","username":"accelazh"},"change_message_id":"619a04c2024a53d5dba5babb1f008f583933299e","unresolved":false,"context_lines":[{"line_number":1890,"context_line":"            \u0027GOLD_MORE_THAN_FOURTEEN_CHARACTERS\u0027)"},{"line_number":1891,"context_line":"        maskingViewDict \u003d self.driver.common._populate_masking_dict("},{"line_number":1892,"context_line":"            self.data.test_volume, connector, extraSpecs)"},{"line_number":1893,"context_line":"        self.assertTrue(len(maskingViewDict[\u0027sgGroupName\u0027]) \u003c\u003d 64)"},{"line_number":1894,"context_line":""},{"line_number":1895,"context_line":"    def test_generate_unique_trunc_pool(self):"},{"line_number":1896,"context_line":"        pool_under_16_chars \u003d \u0027pool_under_16\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba8a016a_b7fe1cac","line":1893,"updated":"2015-11-19 08:01:47.000000000","message":"It is better to use assertLessEqual. assertTrue gives little error message.","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"4cd448bb7cf4eb4b9e964cc3fca7ad4da922ffc4","unresolved":false,"context_lines":[{"line_number":1890,"context_line":"            \u0027GOLD_MORE_THAN_FOURTEEN_CHARACTERS\u0027)"},{"line_number":1891,"context_line":"        maskingViewDict \u003d self.driver.common._populate_masking_dict("},{"line_number":1892,"context_line":"            self.data.test_volume, connector, extraSpecs)"},{"line_number":1893,"context_line":"        self.assertTrue(len(maskingViewDict[\u0027sgGroupName\u0027]) \u003c\u003d 64)"},{"line_number":1894,"context_line":""},{"line_number":1895,"context_line":"    def test_generate_unique_trunc_pool(self):"},{"line_number":1896,"context_line":"        pool_under_16_chars \u003d \u0027pool_under_16\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba8a016a_03571503","line":1893,"in_reply_to":"ba8a016a_b7fe1cac","updated":"2015-11-23 11:29:08.000000000","message":"Ok","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":13900,"name":"Accela Zhao","email":"accelazh@gmail.com","username":"accelazh"},"change_message_id":"701dcbf6a590f5eb6755e51acdd287d4c93e7d1e","unresolved":false,"context_lines":[{"line_number":1869,"context_line":"        # If the length of the FAST policy name is greater than 14 chars"},{"line_number":1870,"context_line":"        extraSpecs \u003d self.populate_masking_dict_setup()"},{"line_number":1871,"context_line":"        extraSpecs[\u0027storagetype:fastpolicy\u0027] \u003d \u0027GOLD_MORE_THAN_FOURTEEN_CHARS\u0027"},{"line_number":1872,"context_line":"        maskingViewDict \u003d self.driver.common._populate_masking_dict("},{"line_number":1873,"context_line":"            self.data.test_volume, self.data.connector, extraSpecs)"},{"line_number":1874,"context_line":"        self.assertEqual("},{"line_number":1875,"context_line":"            \u0027OS-fakehost-GOLD_MO__CHARS-FP-I-SG\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a8ffd7b_767bc17b","line":1872,"updated":"2015-11-27 16:24:47.000000000","message":"_populate_masking_dict has a starting underscore. It\u0027s a private method. It is not a good practice to access it here, which is outside its defining class/module.","commit_id":"751281a4eb1f2dcb3788c92f2cac242827537db1"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"60a49a8580807b625c39387b58a3e7e55c10beb4","unresolved":false,"context_lines":[{"line_number":1869,"context_line":"        # If the length of the FAST policy name is greater than 14 chars"},{"line_number":1870,"context_line":"        extraSpecs \u003d self.populate_masking_dict_setup()"},{"line_number":1871,"context_line":"        extraSpecs[\u0027storagetype:fastpolicy\u0027] \u003d \u0027GOLD_MORE_THAN_FOURTEEN_CHARS\u0027"},{"line_number":1872,"context_line":"        maskingViewDict \u003d self.driver.common._populate_masking_dict("},{"line_number":1873,"context_line":"            self.data.test_volume, self.data.connector, extraSpecs)"},{"line_number":1874,"context_line":"        self.assertEqual("},{"line_number":1875,"context_line":"            \u0027OS-fakehost-GOLD_MO__CHARS-FP-I-SG\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a8ffd7b_79409207","line":1872,"in_reply_to":"9a8ffd7b_767bc17b","updated":"2015-11-27 16:41:16.000000000","message":"It is only accessed from within the class when called in general execution.  This is just to test the method as a unit","commit_id":"751281a4eb1f2dcb3788c92f2cac242827537db1"}],"cinder/volume/drivers/emc/emc_vmax_utils.py":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"f6d1456d865af04e6526dd08e1d2d517ba4f15fa","unresolved":false,"context_lines":[{"line_number":2377,"context_line":"        else:"},{"line_number":2378,"context_line":"            return poolName"},{"line_number":2379,"context_line":""},{"line_number":2380,"context_line":"    def generate_unique_trunc_fastpolicy(self, fastPolicyName):"},{"line_number":2381,"context_line":"        \"\"\"Create a unique fast policy name under 14 chars"},{"line_number":2382,"context_line":""},{"line_number":2383,"context_line":"        :param fastPolicyName: long fast policy name"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba8a016a_9b021709","line":2380,"updated":"2015-11-19 11:13:51.000000000","message":"According to python guidelines param name should be fast_policy_name","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"4cd448bb7cf4eb4b9e964cc3fca7ad4da922ffc4","unresolved":false,"context_lines":[{"line_number":2377,"context_line":"        else:"},{"line_number":2378,"context_line":"            return poolName"},{"line_number":2379,"context_line":""},{"line_number":2380,"context_line":"    def generate_unique_trunc_fastpolicy(self, fastPolicyName):"},{"line_number":2381,"context_line":"        \"\"\"Create a unique fast policy name under 14 chars"},{"line_number":2382,"context_line":""},{"line_number":2383,"context_line":"        :param fastPolicyName: long fast policy name"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba8a016a_23449919","line":2380,"in_reply_to":"ba8a016a_9b021709","updated":"2015-11-23 11:29:08.000000000","message":"Yes, we have mistakenly used camelcase predominantly.  Huge undertaking to change all of them.  I will change it here though.","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":13900,"name":"Accela Zhao","email":"accelazh@gmail.com","username":"accelazh"},"change_message_id":"619a04c2024a53d5dba5babb1f008f583933299e","unresolved":false,"context_lines":[{"line_number":2383,"context_line":"        :param fastPolicyName: long fast policy name"},{"line_number":2384,"context_line":"        :returns: truncated fast policy name"},{"line_number":2385,"context_line":"        \"\"\""},{"line_number":2386,"context_line":"        if fastPolicyName and len(fastPolicyName) \u003e 14:"},{"line_number":2387,"context_line":"            return ("},{"line_number":2388,"context_line":"                (\"%(first)s_%(last)s\""},{"line_number":2389,"context_line":"                 % {\u0027first\u0027: fastPolicyName[:7],"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba8a016a_63e476e0","line":2386,"updated":"2015-11-19 08:01:47.000000000","message":"If fastPolicyName is \"\" or None, is it OK to just return it?","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"4cd448bb7cf4eb4b9e964cc3fca7ad4da922ffc4","unresolved":false,"context_lines":[{"line_number":2383,"context_line":"        :param fastPolicyName: long fast policy name"},{"line_number":2384,"context_line":"        :returns: truncated fast policy name"},{"line_number":2385,"context_line":"        \"\"\""},{"line_number":2386,"context_line":"        if fastPolicyName and len(fastPolicyName) \u003e 14:"},{"line_number":2387,"context_line":"            return ("},{"line_number":2388,"context_line":"                (\"%(first)s_%(last)s\""},{"line_number":2389,"context_line":"                 % {\u0027first\u0027: fastPolicyName[:7],"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba8a016a_e36d319a","line":2386,"in_reply_to":"ba8a016a_63e476e0","updated":"2015-11-23 11:29:08.000000000","message":"It must be above 14 chars","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":13900,"name":"Accela Zhao","email":"accelazh@gmail.com","username":"accelazh"},"change_message_id":"09ca7f68d3d760433713a256fd99e5cecffe6d68","unresolved":false,"context_lines":[{"line_number":2383,"context_line":"        :param fastPolicyName: long fast policy name"},{"line_number":2384,"context_line":"        :returns: truncated fast policy name"},{"line_number":2385,"context_line":"        \"\"\""},{"line_number":2386,"context_line":"        if fastPolicyName and len(fastPolicyName) \u003e 14:"},{"line_number":2387,"context_line":"            return ("},{"line_number":2388,"context_line":"                (\"%(first)s_%(last)s\""},{"line_number":2389,"context_line":"                 % {\u0027first\u0027: fastPolicyName[:7],"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a8ffd7b_36a779ab","line":2386,"in_reply_to":"ba8a016a_e36d319a","updated":"2015-11-27 16:25:28.000000000","message":"Replied in patch 3.","commit_id":"0335e73f254add02eb8698de3cf69bfbf5274be3"},{"author":{"_account_id":13900,"name":"Accela Zhao","email":"accelazh@gmail.com","username":"accelazh"},"change_message_id":"701dcbf6a590f5eb6755e51acdd287d4c93e7d1e","unresolved":false,"context_lines":[{"line_number":2383,"context_line":"        :param fastPolicyName: long fast policy name"},{"line_number":2384,"context_line":"        :returns: truncated fast policy name"},{"line_number":2385,"context_line":"        \"\"\""},{"line_number":2386,"context_line":"        if fastPolicyName and len(fastPolicyName) \u003e 14:"},{"line_number":2387,"context_line":"            return ("},{"line_number":2388,"context_line":"                (\"%(first)s_%(last)s\""},{"line_number":2389,"context_line":"                 % {\u0027first\u0027: fastPolicyName[:7],"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a8ffd7b_d6314d5b","line":2386,"updated":"2015-11-27 16:24:47.000000000","message":"If fastPolicyName is \"\" or None, this method will just return \"\" or None.\n\nEven if we know it must be above 14 chars. It would be safer to add assertion or exception, in case fastPolicyName is not above 14 chars somehow.\n\nBut I\u0027m OK with what it is now.","commit_id":"751281a4eb1f2dcb3788c92f2cac242827537db1"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"60a49a8580807b625c39387b58a3e7e55c10beb4","unresolved":false,"context_lines":[{"line_number":2383,"context_line":"        :param fastPolicyName: long fast policy name"},{"line_number":2384,"context_line":"        :returns: truncated fast policy name"},{"line_number":2385,"context_line":"        \"\"\""},{"line_number":2386,"context_line":"        if fastPolicyName and len(fastPolicyName) \u003e 14:"},{"line_number":2387,"context_line":"            return ("},{"line_number":2388,"context_line":"                (\"%(first)s_%(last)s\""},{"line_number":2389,"context_line":"                 % {\u0027first\u0027: fastPolicyName[:7],"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a8ffd7b_59a26e9a","line":2386,"in_reply_to":"9a8ffd7b_d6314d5b","updated":"2015-11-27 16:41:16.000000000","message":"We only need to truncate it if it is \u003e 14.  The reason I have\nif fastPolicyName and....\nis because an exception might be thrown on len(fastPolicyName), if fastPolicyName is None.\nPlease note that this value can be None, when we do not have FAST enabled.\nThanks for the great feedback","commit_id":"751281a4eb1f2dcb3788c92f2cac242827537db1"}]}
