diff options
| author | Ichlasul Affan <ichlaffterlalu@gmail.com> | 2020-04-11 08:25:23 +0700 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2020-04-15 09:18:40 +0200 |
| commit | 3e7c39f710ec1895611fa1b337423742eebd0da1 (patch) | |
| tree | 9f8f2b1aec9559e4da067c93a73651e9add5b938 /tests | |
| parent | d51c50d836c5cf8db5566da17963f871be554615 (diff) | |
Fixed #31451 -- Made settings cleansing work with list and tuple settings.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/view_tests/tests/test_debug.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/view_tests/tests/test_debug.py b/tests/view_tests/tests/test_debug.py index 8c64bc343e..a5301b88b7 100644 --- a/tests/view_tests/tests/test_debug.py +++ b/tests/view_tests/tests/test_debug.py @@ -1249,6 +1249,41 @@ class ExceptionReporterFilterTests(ExceptionReportTestMixin, LoggingCaptureMixin {'login': 'cooper', 'password': reporter_filter.cleansed_substitute}, ) + def test_cleanse_setting_recurses_in_list_tuples(self): + reporter_filter = SafeExceptionReporterFilter() + initial = [ + { + 'login': 'cooper', + 'password': 'secret', + 'apps': ( + {'name': 'app1', 'api_key': 'a06b-c462cffae87a'}, + {'name': 'app2', 'api_key': 'a9f4-f152e97ad808'}, + ), + 'tokens': ['98b37c57-ec62-4e39', '8690ef7d-8004-4916'], + }, + {'SECRET_KEY': 'c4d77c62-6196-4f17-a06b-c462cffae87a'}, + ] + cleansed = [ + { + 'login': 'cooper', + 'password': reporter_filter.cleansed_substitute, + 'apps': ( + {'name': 'app1', 'api_key': reporter_filter.cleansed_substitute}, + {'name': 'app2', 'api_key': reporter_filter.cleansed_substitute}, + ), + 'tokens': reporter_filter.cleansed_substitute, + }, + {'SECRET_KEY': reporter_filter.cleansed_substitute}, + ] + self.assertEqual( + reporter_filter.cleanse_setting('SETTING_NAME', initial), + cleansed, + ) + self.assertEqual( + reporter_filter.cleanse_setting('SETTING_NAME', tuple(initial)), + tuple(cleansed), + ) + def test_request_meta_filtering(self): request = self.rf.get('/', HTTP_SECRET_HEADER='super_secret') reporter_filter = SafeExceptionReporterFilter() |
