diff --git a/sdk/core/azure-common/testutils/common_recordingtestcase.py b/sdk/core/azure-common/testutils/common_recordingtestcase.py index 8484b8805f30..ef12603075dc 100644 --- a/sdk/core/azure-common/testutils/common_recordingtestcase.py +++ b/sdk/core/azure-common/testutils/common_recordingtestcase.py @@ -66,7 +66,7 @@ def init_test_mode(self): self.test_mode = test_settings['mode'] except: pass - + if getattr(self, 'test_mode', None) is None: self.test_mode = TestMode.playback @@ -134,11 +134,18 @@ def _scrub_sensitive_response_info(self, response): response = decode_response(response) headers = response.get('headers') if headers: + def internal_scrub(key, val): + if key.lower() == 'retry-after': + return '0' + return self._scrub(val) + for name, val in headers.items(): - for i, e in enumerate(val): - val[i] = self._scrub(e) - if name.lower() == 'retry-after': - val[:] = ['0'] + if isinstance(val, list): + for i, e in enumerate(val): + val[i] = internal_scrub(name, e) + else: + headers[name] = internal_scrub(name, val) + body = response.get('body') if body: body_str = body.get('string') diff --git a/sdk/storage/azure-storage-blob/tests/testcase.py b/sdk/storage/azure-storage-blob/tests/testcase.py index f2cc356b9df8..b52a611f4f92 100644 --- a/sdk/storage/azure-storage-blob/tests/testcase.py +++ b/sdk/storage/azure-storage-blob/tests/testcase.py @@ -328,9 +328,18 @@ def _scrub_sensitive_response_info(self, response): response = copy.deepcopy(response) headers = response.get('headers') if headers: + def internal_scrub(key, val): + if key.lower() == 'retry-after': + return '0' + return self._scrub(val) + for name, val in headers.items(): - for i in range(len(val)): - val[i] = self._scrub(val[i]) + if isinstance(val, list): + for i, e in enumerate(val): + val[i] = internal_scrub(name, e) + else: + headers[name] = internal_scrub(name, val) + body = response.get('body') if body: body_str = body.get('string') diff --git a/sdk/storage/azure-storage-file/tests/filetestcase.py b/sdk/storage/azure-storage-file/tests/filetestcase.py index b6bbe39fe956..087eb4708820 100644 --- a/sdk/storage/azure-storage-file/tests/filetestcase.py +++ b/sdk/storage/azure-storage-file/tests/filetestcase.py @@ -322,9 +322,18 @@ def _scrub_sensitive_response_info(self, response): response = copy.deepcopy(response) headers = response.get('headers') if headers: + def internal_scrub(key, val): + if key.lower() == 'retry-after': + return '0' + return self._scrub(val) + for name, val in headers.items(): - for i in range(len(val)): - val[i] = self._scrub(val[i]) + if isinstance(val, list): + for i, e in enumerate(val): + val[i] = internal_scrub(name, e) + else: + headers[name] = internal_scrub(name, val) + body = response.get('body') if body: body_str = body.get('string') diff --git a/sdk/storage/azure-storage-queue/tests/queuetestcase.py b/sdk/storage/azure-storage-queue/tests/queuetestcase.py index 98f9ca671aa9..2e96a22f0d54 100644 --- a/sdk/storage/azure-storage-queue/tests/queuetestcase.py +++ b/sdk/storage/azure-storage-queue/tests/queuetestcase.py @@ -346,9 +346,18 @@ def _scrub_sensitive_response_info(self, response): response = copy.deepcopy(response) headers = response.get('headers') if headers: + def internal_scrub(key, val): + if key.lower() == 'retry-after': + return '0' + return self._scrub(val) + for name, val in headers.items(): - for i in range(len(val)): - val[i] = self._scrub(val[i]) + if isinstance(val, list): + for i, e in enumerate(val): + val[i] = internal_scrub(name, e) + else: + headers[name] = internal_scrub(name, val) + body = response.get('body') if body: body_str = body.get('string')